聊聊Data Guard中的DG Broker
2016-09-16 1296 版权
版权声明: 本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《 阿里云开发者社区用户服务协议》和 《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写 侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。 简介: DG Broker是Oracle为Data Guard维护提供的一个很不错的工具,从我的实际使用来看,早期的版本中似乎大家都还是存在一定的思维定式,认为手工维护已经足够了。
DG Broker是Oracle为Data Guard维护提供的一个很不错的工具,从我的实际使用来看,早期的版本中似乎大家都还是存在一定的思维定式,认为手工维护已经足够了。这个工具就不那么需要了,我们完全可以脱离开这些工具来直观的使用命令行的方式来维护,这个观点也没错,不过从与时俱进的角度来看,本来能够让你更轻松的一个工具,如果不用实在是太可惜了。
Alternatively, you can use a different static service name. If you do, be sure to modify the StaticConnectIdentifier instance-specific property to reflect the different service name. 这句话需要好好品味。假设数据库主库的db_unique_name为testdb,备库为stestdb 则切换的过程如下,我们可以自如的切换过去,再切换回来。 dgmgrl sys/xxx@testdb DGMGRL> show configuration; Configuration - dg_testdb Protection Mode: MaxPerformance Databases: testdb - Primary database stestdb - Physical standby database Fast-Start Failover: DISABLED Configuration Status: SUCCESS DGMGRL> switchover to stestdb; --切换过去 Performing switchover NOW, please wait... Operation requires a connection to instance "testdb" on database "stestdb" Connecting to instance "testdb"... Connected. New primary database "stestdb" is opening... Operation requires startup of instance "testdb" on database "testdb" Starting instance "testdb"... ORACLE instance started. Database mounted. Database opened. Switchover succeeded, new primary is "stestdb" DGMGRL> switchover to testdb; --再切换回来 Performing switchover NOW, please wait... Operation requires a connection to instance "testdb" on database "testdb" Connecting to instance "testdb"... Connected. New primary database "testdb" is opening... Operation requires startup of instance "testdb" on database "stestdb" Starting instance "testdb"... ORACLE instance started. Database mounted. Database opened. Switchover succeeded, new primary is "testdb" DGMGRL> 当然需要注意第一句, dgmgrl sys/xxx@testdb 我们得使用这种连接方式完成switchover,如果dgmgrl / 的方式,肯定会收到一个老套的错误。 dgmgrl / DGMGRL> switchover to testdb; Performing switchover NOW, please wait... New primary database "testdb" is opening... Operation requires startup of instance "testdb" on database "stestdb" Starting instance "testdb"... Unable to connect to database ORA-12514: TNS:listener does not currently know of service requested in connect descriptor Failed. Warning: You are no longer connected to ORACLE. Please complete the following steps to finish switchover: start up instance "testdb" of database "stestdb" 如果出现这种情况,也别担心,这是需要我们手工启动一下备库即可。 Failover的操作其实是不建议使用show configuration的,因为本身主库已经不可用了,在10g中的反应会慢得多。直接failover to xxx就可以了。 如果一个DG环境很久没有再改动过配置,建议还是删除配置,重新配置一下,因为当时的配置可能验证成功,但是后期可能有些地方已经出现了小问题,DG Broker还是会使用之前的配置信息来检查。 10g版本中的DG Broker我还是颇有微词,备库在READ ONLY状态照样检查结果是SUCCESS,很容易会出现误导,我就因为这个方面大意,结果一个备库丢失了好久的归档,所幸最后及时发现,用跳归档的方式恢复回来了备库,免去了重搭备库的烦恼。 (责任编辑:) |