如何访问两个数据库? [关闭]
Posted
技术标签:
【中文标题】如何访问两个数据库? [关闭]【英文标题】:How to access two databases? [closed] 【发布时间】:2013-12-11 11:45:20 【问题描述】:我有一个 Oracle 数据库和另一个复制的(两个数据库是同步的)。
出于可用性原因,我希望在初始数据库处于非活动状态时,通过我的 Java 程序转到另一个数据库。
要使用什么驱动程序?怎么样?
【问题讨论】:
只需检查连接是否为空,然后创建与另一个数据库的连接。如果您发布您的连接代码,那么我们可以提供更好的帮助 驱动程序仍然是 oracle(因为您正在与 oracle 数据库通信)。在您的配置文件中,您将有两个连接字符串。如果另一个连接没有响应,代码将回退到其中一个连接。 我希望驱动自动切换到另一个数据库 驱动不会自动切换。您只需几行代码就可以自己进行故障转移:配置两个连接字符串,打开第一个,如果没有连接,打开第二个。 【参考方案1】:为此,您在数据库中创建服务并使用服务名称而不是 ORACLE_SID 或实例名称等物理连接项使应用程序连接。
连接字符串应包含备份连接[s]。应用程序将连接到运行所请求服务的第一个可能的数据库。如果该数据库发生故障,则 sql*net 会将连接故障转移到其余数据库之一,前提是该服务也在那里运行,或者该服务已重新定位到其余数据库之一。
对此有很多选择。开始阅读Oracle Maximum Availability Architecture - MAA 寻找全局包状态变量...
【讨论】:
以上是关于如何访问两个数据库? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章