我 有 一 个 标准 的 主/物理 备用 配置 ( 一 个 主 , 一 个 备用 ) , 并 希望 完全 断开 主 和 备用 之间 的 连接 ;将 物理 备用 数据 库 转换 为 与 主/生产 系统 分离 的 开发 数据 库 。
这 看 起来 应该 是 相当 琐碎 的 , 但 并 没有 真正 遵循 我 所 能 找到 的 任何 文档 化 的 过程 ( 其中 大多 数 集中 在 切换 到 待机 状态 以 进行 恢复 ) 。
我 的 计划 是 通过 " 模拟 " 故障 转移 来 激活 备用 数据 库 ( 当然 , 主 数据 库 实际 上 不会 发生 故障 ) , 请 遵循 以下 说明 :
8.2.2 Performing a Failover to a Physical Standby Databasehttp://docs.oracle.com/cd/E11882_01/server.112/e41134/role_management.htm#SBYDB5176
这 需要 在 主 服务 器 上 运行 以下 命令 :
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER SYSTEM FLUSH REDO TO target_db_name;
中 的 每 一 个
然后 , 如果 没有 错误 , 则 在 待机 状态 下 运行 以下 命令 :
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
(confirm result is TO PRIMARY or SESSIONS ACTIVE)
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN;
格式
然后 , 在 主 数据 库 和 备用 数据 库 上 , 以 OPEN 模式 启动 并 禁用 进一步 的 复制 :
SQL> ALTER DATABASE OPEN;
SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='';
格式
我 对 这种 方法 有 3 个 问题 :
1.一般 来说 , 这 感觉 有点 过于 复杂 - - 有 没有 更 直接 的 方法 来 实现 这 一 点 ? 例如 , 我 希望 能够 在 不必 关闭 主 数据 库 的 情况 下 实现 这 一 点 ( 为了 运行 ALTER SYSTEM FLUSH REDO TO target_db_name;
, 必须 关闭 主 数据 库 ) 。
SELECT SWITCHOVER_STATUS FROM V$DATABASE;
在 待机 状态 下 的 当前 输出 为 " 不 允许 " 。 我 假设 此 状态 将 随ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;
而 改变 , 但 希望 确认 这 一 点 , 因为 我 不 想 发现 自己 处于 故障 排除 模式 。ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='';
是 关闭 复制 的 干净 方法 吗 ? 我 应该 改为ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2='disable'
吗 ?
2条答案
按热度按时间yks3o0rb1#
我们昨天这样做了:将两个主/物理备用Oracle 11数据库转换为独立/独立。设置Oracle物理备用系统的方法有多种:有或没有经纪人,数据卫士管理器,在不同的模式e.t.c. pp.这是什么为我们工作。
关于你的三个问题:
制备:
在dgmgrl中:
待命状态:
(now此数据库是主数据库)
就这样。
为了进行清理,我们修改了pfile:dg_broker_start=假并删除了dg_broker_config_file1 dg_broker_config_file2假服务器备用文件管理
在数据库的sqlplus /中,我们删除了备用重做日志
0yg35tkg2#
有一个快速的方法。待命
此外,还提供Oracle文档2074686.1