【DB笔试面试753】在Oracle中,将一个物理DG转换为逻辑DG有哪些步骤呢? 您所在的位置:网站首页 逻辑dg 【DB笔试面试753】在Oracle中,将一个物理DG转换为逻辑DG有哪些步骤呢?

【DB笔试面试753】在Oracle中,将一个物理DG转换为逻辑DG有哪些步骤呢?

2024-07-17 11:46| 来源: 网络整理| 查看: 265

题目部分

在Oracle中,将一个物理DG转换为逻辑DG有哪些步骤呢?

答案部分

1. 停用备库MRP进程

对于将物理备库切换到逻辑备库,需要在主库构建LogMiner字典及启用补充日志,因此应先停用备库的MRP进程,避免产生额外的Redo Apply。如果正在使用Broker管理现有的物理备库,应先在Broker中禁用目标数据库。

代码语言:javascript复制alter database recover managed standby database cancel;

2. 主库构建LogMiner字典

这里字典表空间尽量大一点,不然逻辑DG搭建可能不能同步,另外,如果表空间出现问题就不能删除表空间,那么应该先把表空间数据移除,再删除LOGMNRTBS的数据。

在主库上运行:

代码语言:javascript复制create tablespace logmnrtbs datafile '+DATA' size 100m autoextend on next 5m maxsize 2000m; execute dbms_logmnr_d.set_tablespace('logmnrtbs'); exec dbms_logstdby.build;

3. 把物理备库恢复为逻辑备库

如果物理备库是RAC,那么应该修改CLUSTER_DATABASE=FALSE,然后再以exclusive模式启动,不然会报错:“ORA-19952: database should be mounted exclusively”。

关闭物理备库的2个节点数据库,然后在节点1上执行:

代码语言:javascript复制ALTER SYSTEM SET CLUSTER_DATABASE=FALSE SCOPE=SPFILE SID='*'; shutdown immediate; startup mount exclusive; ALTER DATABASE RECOVER TO LOGICAL STANDBY testdglg parallel 4; startup mount;

4. 修改备库参数、打开逻辑备用数据库、启用SQL应用

代码语言:javascript复制ALTER SYSTEM SET CLUSTER_DATABASE=TRUE SCOPE=SPFILE SID='*'; startup force MOUNT ALTER DATABASE OPEN RESETLOGS; alter database start logical standby apply immediate; ! ps -ef|grep -i ora_lsp ----可以看到name自动改变,为读写模式,日志序列也从1开始 set line 1000 select inst_id,name,open_mode,database_role,protection_mode from gv$database; archive log list; ---逻辑DG日志应用情况 SET LINE 9999 PAGESIZE 9999 COL FILE_NAME FORMAT A120 SELECT THREAD#,SEQUENCE#, FILE_NAME, APPLIED, TIMESTAMP FROM DBA_LOGSTDBY_LOG D WHERE D.SEQUENCE# >=(SELECT MAX(SEQUENCE#)-3 FROM DBA_LOGSTDBY_LOG NB WHERE NB.THREAD#=D.THREAD# AND NB.APPLIED='YES' ) ORDER BY THREAD#,D.SEQUENCE#;

然后启动节点二即可。

& 说明:

有关物理DG、逻辑DG和快照DG的搭建过程可以参考我的BLOG:https://ke.qq.com/course/318038?tuin=26507979、http://blog.itpub.net/26736162/viewspace-2158321/

本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有