Shareplex 7 不停机初始化同步数据库初始化同步是 shareplex 实施过程中非常关键的步骤,直接决定了最终实施是否 成功Quest提供了多种手段和技术来应对不同的客户环境需求比如对于非7X24的系 统,我们可以利用数据库停机备份恢复的方式 而对于7*24小时系统,我们除了可以利用 热备份恢复+reconcile命令来实现生产数据库不停机的初始化同步外,也可以利用oracle的 export/import工具来实现不停机的初始化同步此方法的关键在于利用oracle的sen号确定 源数据库导出点和reconcile从post队列里删除数据的位置,确保没有数据丢失或者重复此方法的优点在于可以实现跨操作系统,跨 oracle 版本的初始化同步, 也适用于非对称 的复制方案下的同步.本方法适用于oracle9i以上的数据库版本.具体步骤如下:1. 增大源数据库的undo表空间,防止导出数据时发生snapshot too old的错误.2. 目标端将post进程关闭sp_ctrl(sysB)> stop post3. 在源端系统激活config文件sp_ctrl(sysB)> activate config filename live 在源端使用 show activate 命令检查激活状态,确认激活完成4. 确认激活完成后,在源端 switch log file, 然后从 v$database 查出当前的 scn 号; 将从备份结束后新产生的归档复制到目标端以用于恢复;alter system switch logfile; (9i:)select dbms_flashback.get_system_change_number from dual; (10g:)select current_scn from v$database;alter system switch logfile;5. 在源端系统,开始做数据导出;exp splex/splex@t1 flashback_scn=18488872 rows=y buffer=50000000 file=splex02.dmp owner=(test1,test2 …) 这里如果数据量大可以考虑增大 buffer, 或者采用多个并行导出的方式6. 传送导出文件至目标端7. 目标端 import 数据:imp splex/splex@t1 buffer=50000000 file=splex01.dmp ignore=y fromuser=test touser=test8. 在目标端系统用 reconcile 命令sp_ctrl(sysB)> reconcile queue queuename for datasource-datadest scn scn_number例:复制是从SysA的实例oraA到SysB的实例oraAsp_ctrl(sysB)> reconcile queue SysA for o.oraA-o.oraA scn 01234567899. 在目标端系统运行脚本 disable 所有的 trigger、cascading delete、check 约束和 job10. 目标端系统 Start post;。