返回首页

gbase数据、南大通用产品文档:GBase8s检查高可用性辅助服务器的只读状态

更新日期:2024年09月11日

可编写应用程序来检查只读服务器状态,以便于不对只读辅助服务器尝试更新操作。
GBase 8s JDBC 有对 java.sql.Connection 类的扩展方法,其提供检查 HDR 辅助服务器的
状态的方式。
用户可将连接对象强制转型为 'com.gbasedbt.jdbc.IfmxConnection' 来访问下列
扩展方法。
获得的信息
方法签名
附加信息
服务器是否为只读
(辅
助服务器)
public boolean 为 ReadOnly()
throws SQLException
如果活动的服务器为辅助服务
器,则返回 true
如果发生数据库访问错误,
则返
回异常
如果将 ENABLE_HDRSWITCH 设
置为 false,则isReadOnly()
返回在获得了最后一次成功的
HDR 连接之后初始设置的值。
是否启用 HDR
public
Boolean
is
HDREnabled() 如果 HDR 对中的服务器都可
用,则返回 true
如果有一个服务器不可用,
则返
回 false
服务器的类型
(主、

助或标准)
public string getHDRtype()
对于主服务器返回 primary 或
standard,
对于辅助服务器返回
secondary
数据库管理员可手工地重置服
务器的类型。
例如,您可使用下列策略之一:

GBase 8s JDBC Driver 程序员指南
南大通用数据技术股份有限公司
- 49 -

在每一可能包含更新操作的 SQL 语句之前,使用 isReadOnly() 方法。如
果 isReadOnly() 的值为 true,则执行恰当的行动,诸如将错误消息发送至用户,或
通知服务器管理员。

在建立连接之后,
调用 isReadOnly() 方法,
然后设置像 READ_ONLY 这样的标志,
然后,基于标志值来执行操作。
管理员可手工地将辅助服务器切换为主服务器,以允许更新操作。然而,必须在进程中关
闭服务器,这可导致丢失未提交的事务。

如果 Microsoft .NET Framework 已在系统上安装,那么安装 Client SDK 时将自动安
装 .NET Provider。.NET Provider 已复制并注册到 Global Assembly Cache (GAC)。
Client SDK 需要完整的 Microsoft .NET Framework SDK。GBase Connect 只需要
Microsoft .NET Framework 的可重新分发软件包。

AIX 平台上创建数据源
..............................
19