我的编程空间,编程开发者的网络收藏夹
学习永远不晚

DG-duplicate操作注意事项(各种报错应对方法)

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

DG-duplicate操作注意事项(各种报错应对方法)



DG-duplicate 操作注意事项

log_file_name_convert='+orcl_DATA/orcldb','+orcl_data/orcldb_dg2'

查看ASM磁盘的详细信息及状态

select group_number,disk_number,header_status,mode_status,state,total_mb,name,failgroup,path from  v$asm_disk;

select name,state from v$asm_diskgroup;


-- 添加 ASM磁盘组


Create diskgroup  orcl1_DATA  external  redundancy  disk '/dev/asm_vdd';

Create diskgroup  orcl2_DATA  external  redundancy  disk '/dev/asm_vdb';

Create diskgroup  orcl3_DATA  external  redundancy  disk '/dev/asm_vdi';


给磁盘组添加磁盘

alter diskgroup data add disk '/dev/asm_vde';

alter diskgroup data add disk '/dev/asm_vdf';

alter diskgroup data add disk '/dev/asm_vdg';

alter diskgroup data add disk '/dev/asm_vdh';

alter diskgroup data add disk '/dev/asm_vdj';


--加载磁盘组

ALTER DISKGROUP DATA MOUNT;


13、备库注意配置/etc/hosts

ip地址 orcldb-dg



14、duplicate后,同步日志无法成功,主库查询出现报错

SQL> select inst_id,dest_name,status,error from gv$archive_dest_status where dest_name='LOG_ARCHIVE_DEST_2';


   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS        ERROR

--------- -----------------------------------------------------------------

        1

LOG_ARCHIVE_DEST_2

ERROR   ORA-16191: ??????????????????


        2

LOG_ARCHIVE_DEST_2

ERROR   ORA-16191: ??????????????????


或者

        2

LOG_ARCHIVE_DEST_2

ERROR   ORA-16058: ??????????


        1

LOG_ARCHIVE_DEST_2

ERROR   ORA-16058: ??????????


这个时候需要去备库重启数据库实例

Shutdown immediate

startup



15、duplicate时出现报错

RMAN-00571: ===========================================================

RMAN-03002: failure of Duplicate Db command at 03/28/2018 19:36:20

RMAN-05501: aborting duplication of target database

RMAN-03015: error occurred in stored script Memory Script

RMAN-03009: failure of backup command on ORA_DISK_1 channel at 03/28/2018 19:36:20

ORA-00245: ????????; ?????????????


尝试手动执行命令,不用脚本



16、安装备库单节点ASM后,需要手动启动CRS服务

crsctl start resource ora.diskmon

crsctl status resource -t

crs_stat -p ora.cssd

crsctl modify resource "ora.cssd" -attr "AUTO_START=1"   --设置自动启动

crs_stat -p ora.diskmon

crsctl modify resource "ora.diskmon" -attr "AUTO_START=1"   --设置自动启动


注意:这里采用图形界面安装GRID软件,要选择第二项安装

如果选择的是最后一项安装软件,可能会漏掉一些CRS服务,导致无法使用asmca命令打开图形界面



17、记得把备份停止了

18、duplicate后,同步日志无法成功,主库查询出现报错

SQL> select inst_id,dest_name,status,error from gv$archive_dest_status where dest_name='LOG_ARCHIVE_DEST_2';

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

2

LOG_ARCHIVE_DEST_2

ERROR   ORA-01033: ORACLE initialization or shutdown in progress

1

LOG_ARCHIVE_DEST_2

ERROR   ORA-01033: ORACLE initialization or shutdown in progress

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

解决方法:

1、检查RAC节点的密码文件是否同步,可以直接拷贝覆盖一下

2、检查DG节点的密码文件是否同步, 可以直接拷贝RAC的密码文件到DG覆盖

3、在主节点alter system set log_archive_dest_state_2=enable;

4、再次查询状态变成VALID正常

SQL>  select inst_id,dest_name,status,error from gv$archive_dest_status where dest_name='LOG_ARCHIVE_DEST_2';

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

2

LOG_ARCHIVE_DEST_2

VALID

1

LOG_ARCHIVE_DEST_2

VALID

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

注意:检验是否因密码问题导致DG日志不同步,也可以在alter.log里面查找验证(主库和备库都看)

19、如果遇到下面的报错,哈哈,可能你设置的路径并不是LOG_ARCHIVE_DEST_2

也可能是LOG_ARCHIVE_DEST_3,所以要看清楚了。  select * from V$ARCHIVE_DEST_STATUS

SQL> select inst_id,dest_name,status,error from gv$archive_dest_status where dest_name='LOG_ARCHIVE_DEST_2';

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

2

LOG_ARCHIVE_DEST_2

BAD PARAM

1

LOG_ARCHIVE_DEST_2

BAD PARAM

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

20、在DG库上设置同步后,发现日志并没有同步

SQL> select thread#,process,client_process,sequence#,status from v$managed_standby;

   THREAD# PROCESS   CLIENT_P  SEQUENCE# STATUS

---------- --------- -------- ---------- ------------

0 ARCH      ARCH        0 CONNECTED

0 ARCH      ARCH        0 CONNECTED

0 ARCH      ARCH        0 CONNECTED

0 ARCH      ARCH        0 CONNECTED

2 MRP0      N/A     2880 APPLYING_LOG

这个时候,查看主库状态

SQL> select inst_id,dest_name,status,error from gv$archive_dest_status where dest_name='LOG_ARCHIVE_DEST_2';

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

1

LOG_ARCHIVE_DEST_2

ERROR   ORA-03135: connection lost contact

2

LOG_ARCHIVE_DEST_2

ERROR   ORA-03135: connection lost contact

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

在主库重新enable也没用

alter system set log_archive_dest_state_2=ENABLE;

检查DG备库监听,发现监听没启动

su - oracle

lsnrctl start

然后再次检查,发现还是不同步

主库查状态

SQL> select inst_id,dest_name,status,error from gv$archive_dest_status where dest_name='LOG_ARCHIVE_DEST_2';

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

1

LOG_ARCHIVE_DEST_2

ERROR   ORA-12543: TNS:destination host unreachable

2

LOG_ARCHIVE_DEST_2

ERROR   ORA-12543: TNS:destination host unreachable

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

这个时候,检查DG备库,发现,iptables -L  发现防火墙阻拦了

iptables -F清除

问题解决

21、 在DG库上设置同步后,发现日志并没有同步

SQL> select thread#,process,client_process,sequence#,status from v$managed_standby;

   THREAD# PROCESS   CLIENT_P  SEQUENCE# STATUS

---------- --------- -------- ---------- ------------

0 ARCH      ARCH        0 CONNECTED

0 ARCH      ARCH        0 CONNECTED

0 ARCH      ARCH        0 CONNECTED

0 ARCH      ARCH        0 CONNECTED

2 MRP0      N/A     2880 APPLYING_LOG

这个时候,查看主库状态

SQL> select inst_id,dest_name,status,error from gv$archive_dest_status where dest_name='LOG_ARCHIVE_DEST_2';

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

2

LOG_ARCHIVE_DEST_2

DISABLED  ORA-16057: server not in Data Guard configuration

1

LOG_ARCHIVE_DEST_2

DISABLED  ORA-16057: server not in Data Guard configuration

   INST_ID

----------

DEST_NAME

--------------------------------------------------------------------------------

STATUS   ERROR

--------- -----------------------------------------------------------------

看到这个报错,就要去检查log_archive_config了

主备库两个都要检查,因为他们要一致

主库查看

SQL> show parameter log_archive_config

NAME      TYPE VALUE

------------------------------------ ----------- ------------------------------

log_archive_config      string DG_CONFIG=orcldb,orcldbdg3)

备库查看

SQL> show parameter log_archive_config

NAME      TYPE VALUE

------------------------------------ ----------- ------------------------------

log_archive_config      string DG_CONFIG=(orcldbdg3,orcldbdg)

果然不一致,修改它

SQL> alter system set log_archive_config='DG_CONFIG=(orcldbdg3,orcldb)';

去主库重新enable一下

alter system set log_archive_dest_state_2=ENABLE;

回到备库,发现已经开通同步日志了

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

DG-duplicate操作注意事项(各种报错应对方法)

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

目录