当应用程序没有在 CONNECT 语句中明确指定数据库服务器,以及 GBASEDBTSERVER 环境变量指定的数据库服务器不可用时,客户机将使用 DBPATH 环境变量来定位数据库(和数据库服务器)。
如果复制对中的一台数据库服务器不可用,那么使用该数据库服务器的应用程序将其 DBPATH 环境变量设置为复制对中的另一数据库服务器时,这些应用程序无需重新设置其 GBASEDBTSERVER 环境变量。它们的 GBASEDBTSERVER 环境变量必须始终包含其经常使用的数据库服务器的名称,并且它们的 DBPATH 环境变量必须始终包含对中备用数据库服务器的名称。
GBASEDBTSERVER cliff_ol DBPATH //beach_ol
因为当应用程序发出 CONNECT 语句时 DBPATH 环境变量是只读变量(如果需要),所以应用程序必须重新启动才能执行重定向。
应用程序可以包含测试连接是否已失败的代码,如果包含,那么尝试重新连接。如果应用程序有该代码,就无需重新启动。
该限制的原因是如果 CONNECT 语句指定了数据库服务器,应用程序就不使用 DBPATH。有关 DBPATH 的更多信息,请参阅《GBase 8s SQL 指南:参考》。