ORACLE RAC TO RAC DG搭建过程中可能遇到的问题

    在ORACLE DataGuard部署过程中,如果操作不规范,可能遇到很多想不到的问题。有些问题是配置参数不到位,有些

是操作不规范遗漏导致。


    问题一

    主库复制备库到备机时,rman远程登陆主库作为复制的目标库rman无法登陆备机备库,就是下面的命令执行报错:

rman target sys/oracle@dg_orclp auxiliary sys/oracle@dg_orcls

问题原始是从库的TNS配置不规范,缺少(UR=A),示例配置

DG_ORCLS =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.10.101.36)(PORT = 1521))

      (LOAD_BALANCE = off)

    )

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME =DG_ORCLS)

      ( UR=A )

    )

  )


    问题二

    主库复制备库到备机时,rman执行duplicat的时,duplicat过程执行报错 ORA-17629&ORA-17627&ORA-17629

RMAN> duplicate target database for standby from active database nofilenamecheck;

Starting Duplicate Db at 2019-03-10 11:38:4

allocated channel: ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: SID=1811 instance=orcl1 device type=DISK

contents of Memory Script:

{

   backup as copy reuse

   targetfile  '/oracle/app/oracle/product/11.2.0/dbs/orapworcl1' auxiliary format 

 '/oracle/app/oracle/product/11.2.0/dbs/orapworcl1'   ;

}


executing Memory Script

Starting backup at 2019-03-10 11:38:43

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=4533 instance=orcl1 device type=DISK

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

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

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

RMAN-03002: failure of Duplicate Db command at 03/10/2019 11:38:45

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/10/2019 11:38:45

ORA-17629: Cannot connect to the remote database server

ORA-17627: ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

ORA-17629: Cannot connect to the remote database server

RMAN> 


这个问题比较有趣,配置好TNS后,通过ttnsping和sqlplus sys/oracle@to_orcl as sysdba都正常,就是rman的

dumplicat进行从库的复制时报错。该问题的原因是备库的TNS配置中的服务名和主库备库中的log_archive_config='

dg_config=()'参数中配置的服务名不一致导致,或者是主库以alter system方式修改了log_archive_config='dg_config'

,数据库没有重启,因为log_archive_config参数是静态参数,需要重启数据库服务才能生效。    


    问题三

    在备机通过rman复制主库的时,rman复制过程报错: RMAN-03009&ORA-17628

Starting backup at 2019-03-10 12:56:20

using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile copy

input datafile file number=00003 name=+DGSYSTEM/orcl/datafile/undotbs1.261.876856357

output file name=+DGSYSTEM/orcl/datafile/undotbs1.340.1002545783 tag=TAG20190310T124734

channel ORA_DISK_1: datafile copy complete, elapsed time: 00:02:55

channel ORA_DISK_1: starting datafile copy

input datafile file number=00004 name=+DGSYSTEM/orcl/datafile/undotbs2.263.876856383

RMAN-03009: failure of backup command on ORA_DISK_1 channel at 03/10/2019 12:59:21

ORA-17628: Oracle error 19505 returned by remote Oracle server

continuing other job steps,  job failed will not be re-run

该问题十分严重,通过job failed will not be re-run可以得知,此次的DG复制完全失败了。此问题的原因是存放数据文件

相关的ASM磁盘组空间耗尽导致的,因此,在DG主备库开始配置之前,一定要评估好备库的存储并规划好,避免这种因存

储空间问题导致DG复制失败的发生。


    问题四

    DG备库复制完主库后,备库alert日志告警登陆主库被拒绝,主库告警日志提示登陆备库失败。

--备库告警日志

Thu Mar 14 06:51:40 2019

RFS[252]: Assigned to RFS process 3408762

RFS[252]: Opened log for thread 2 sequence 23863 dbid -2091533043 branch 876856333

Thu Mar 14 06:51:42 2019

2019-03-14 06:51:42 logon denied from 172.10.101.61 5964584 oracle with oracle@orcl01 (TNS V1-V3) ¨C oracle@orcl01 (TNS V1-V3) ===username=

Thu Mar 14 06:51:42 2019

2019-03-14 06:51:42 logon denied from 172.10.101.61 13697046 oracle with oracle@orcl01 (TNS V1-V3) ¨C oracle@orcl01 (TNS V1-V3) ===username=

Thu Mar 14 06:51:43 2019

2019-03-14 06:51:43 logon denied from 172.10.101.61 10486550 oracle with oracle@orcl01 (TNS V1-V3) ¨C oracle@orcl01 (TNS V1-V3) ===username=

Thu Mar 14 06:51:43 2019

2019-03-14 06:51:43 logon denied from 172.10.101.61 7274758 oracle with oracle@orcl01 (TNS V1-V3) ¨C oracle@orcl01 (TNS V1-V3) ===username=

Thu Mar 14 06:51:43 2019

2019-03-14 06:51:43 logon denied from 172.10.101.61 14156172 oracle with oracle@orcl01 (TNS V1-V3) ¨C oracle@orcl01 (TNS V1-V3) ===username=


--主库告警日志

Thu Mar 14 09:13:45 2019

Error 1017 received logging on to the standby

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

Check that the primary and standby are using a password file

and remote_login_passwordfile is set to SHARED or EXCLUSIVE, 

and that the SYS password is same in the password files.

returning error ORA-16191

Error 16191 for archive log file 3 to 'TO_standby'

Thu Mar 14 15:49:10 2019

Archived Log entry 203881 added for thread 2 sequence 59940 ID 0x53e28673 dest 1:

Errors in file /oracle/app/oracle/diag/rdbms/orcl/orcl2/trace/orcl2_nsa2_2753334.trc:

ORA-16191: Primary log shipping client not logged on standby

Thu Mar 14 15:49:10 2019

ARCb: Archival destination is a Primary RAC instance: 'TO_standby'

该问题十分严重,会导致备库同步进程抓取归档日志失败。但是,导致该问题的原因是主备库的sys密码文件不一致导致,可

能是搭建过程中有人修改了sys密码,处理该问题的方法比较简单,从集群主库任意节点同步sys密码文件即可。


    问题五

    另外,在DG搭建过程中,可能遇到grid或者oracle通过lsnrctl查看监听状态的时候看到很多服务名,其中有很多l类似:

SYS$SYS.KUPC$C_1_20170318000713.ORCL,sys登陆sqlplus,show parameter service可以发现:

NAME                                 TYPE        VALUE

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

service_names                        string      SYS$SYS.KUPC$C_1_20170318000713.orcl.US.ORACLE.COM,  

                                                SYS$SYS.KUPC$C_1_20170405000711.orcl.US.ORACLE.COM,

                                                 SYS$SYS.KUPC$S_1_20170314000710.ORCL, 

                                                 SYS$SYS.KUPC$S_1_20170318000713.ORCL,                                                  

                                                 SYS$SYS.KUPC$S_1_20170323000707.ORCL, 

                                                 SYS$SYS.KUPC$S_1_20170331000709.ORCL, 

                                                 SYS$SYS.KUPC$S_1_20170403000701.ORCL,

                                                 SYS$SYS.KUPC$S_1_20170405000711.ORCL, 

                                                 SYS$SYS.KUPC$C_1_20170314000710.ORCL......

导致该问题的原因是expdp或者impdp被异常终端导致,可以重置service_names或者重启数据库服务加以解决。









来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29357786/viewspace-2639435/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29357786/viewspace-2639435/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本系列课程分为,0-理论知识部分    0.1-oca_ocp_ocm相关知识内容(uploading)1-安装部分     1.1单实例命令行安装     1.2单实例图形安装     1.3rac安装     1.4rac(pdb架构)+dg 单实例安装(用rman的duplicate和rman备份2种方式搭建dg)     1.5rac(pdb架构)+rac dg2-迁移部分    2.1单实例之间的迁移    2.2单实迁移到rac    2.3rac迁移到单实例    2.4racrac之间的迁移。    2.5关于xtts的迁移方法的使用3-恢复部分   3.1单实例本地恢复   3.2rac本地恢复4-数据库升级部分   4.1 19.3升级到19.13   4.2 12.1.0.2升级到19.3   4.3 12.2.0.1升级到19.3   4.4 19.3的rac升级到19.135-数据库优化部分    5.1如何看懂执行计划    5.2 hash, nest loop,  merge的执行计划各自适用于那种场景?    5.3为什么要用直方图,19c的直方图有frency, balance,  top-frenkency, hybrid?允许最大的bucket是多少?6-数据库asm磁盘操作部分   6-1如何用一条命令迁移rac存储。   6-2如何用笨方法迁移rac存储。   6-3目前asm磁盘是external冗余级别,如何修改为normal的冗余级别。7-数据库工具部分   7.1oem如何进行安装,如何进行纳管数据库,如何使用   7.2如何用oem监控数据库 8-综合实战。   a库是11.2.0.3的单实例数据库,容量有20T。   b库是19.13的rac环境的pdb数据库,容量只有21T.   如何把a库的数据迁移到b库的pdb数据库?   这个综合实战非常考验大家,基本上囊括了数据库复制安装,数据库dg数据库升级的方方面面。   大家可以自己先想想怎么实现。一课程主题手把手带大家进行实操,在实操提升自己手把手带大家学习orace 19的ocm课程,学完本课程,至少具有3-5年oracle数据库水平。文档和视频is uploading. 二课程特色 学oracle,找阿伟阿伟出品,必属精品从实战出发,贴近实战,自己实战,实战为王,在实战提升自己授人以鱼不如授人以渔通过此系列课程可以提高3-5年oracle水平交个朋友,物有所值,诚意满满走心课程,把自己在运维的坑,提炼知识后,实战给大家 三课程内容 0.理论知识部分(上传。。。)   0.1数据库监听(动态监听,静态监听,多个ip同时监听1521,一个ip监听多个service_name)   0.2rman 命令的set rename datafile和 alter database  rename datafile 有啥区别?   0.3    ............1.数据库单实例安装  1.0 安装检查    1.0.1安装包检查    1.0.2修改系统参数    1.0.3数据库用户创建    1.0.4创建目录    1.0.5上传安装软件包    1.0.6修改oracle用户环境变量  1.1 rhel7系统图形安装oracle 19c单实例数据库  1.2 rhel7系统命令行安装       1.2.0命令行安装数据库软件       1.2.1命令行创建non cdb数据库实例       1.2.2命令行创建 cdb数据库实例2.rac数据库安装    1.课程结束成果演示          1.1 用workstation,安装一套rhel7+oracle19c+rac+multipath+共享存储+DNS服务器+DNS客户端+NTP服务器+NTP客户端的生产环境          1.2 怎样打oracle19c的rac补丁(包括GI补丁,oracle补丁,数据库补丁,OJVM补丁,bug补丁)     2.安装openfiler软件,模拟共享存储+配置多路径访问       2.1安装openfiler软件       2.2配置openfiler软件(配置2个虚拟网卡,模拟服务器的2个HBA卡)        2.3创建ocr磁盘       2.4创建mgmt磁盘       2.5创建数据文件磁盘       2.6创建归档日志磁盘     3.安装2台数据库服务器       3.1安装2台数据库服务器RHEL7.5       3.2配置服务器双网卡绑定+配置服务器心跳线     4.安装多路径软件识别共享存储的磁盘        4.1安装服务器本地yum源        4.2安装iscsi软件,配置多路径配置文件,识别共享存储的磁盘        4.3识别ocr磁盘        4.4识别mgmt磁盘        4.5识别数据文件磁盘        4.6识别归档日志磁盘     5.oracle19c的rac环境系统参数官方说明        5.1如何配置oracle19c的rac的系统参数(我们参考官方说明)        5.2oracle19c+rac环境Best Practices 官方说明文档     6.安装oracle19c+rac之前的准备工作        6.1修改/etc/hosts文件        6.2配置DNS服务器+DNS客户端+NTP服务器+NTP客户端        6.3创建用户和组        6.4创建目录        6.5修改用户环境变量        6.6安装相关软件包        6.7配置ssh互信        6.9禁用服务器透明大页     7.安装oracle+19c+rac软件       7.1安装GI软件       7.2创建ASM磁盘,主要是数据文件磁盘和归档日志磁盘       7.3安装数据库软件       7.4创建数据库实例       7.5日常常用维护集群命令(启停数据库,启停集群,查看监听,教同学们怎样不死记命令,而且命令还正确)     8.打补丁     8.1打GI和ORACLE的操作系统补丁      8.2打OJVM补丁      8.3打ORA600的bug补丁     9.课程总结和成果演示     9.1课程总结和成果演示3.rac+dg(单实例)数据库安装(pdb架构)     3.1.1dg知识点讲解     3.1.2配置dg监听,密码文件,参数文件。     3.1.2通过rman的duplicate命令进行dg搭建1。     3.1.3通过rman的duplicate命令进行dg搭建2     3.1.4进行数据库切换需要的配置。     3.1.5数据库正常switch over     3.1.6数据库如何fail over     3.1.7dg库failover以后通过闪回快速恢复dg     3.1.8dg库failover以后通过新主库的控制文件快速恢复dg     3.1.9备库归档缺失如何进行解决。     3.1.10recover database和recover standby database是否可以在dg使用?     3.1.11如何通过rman的备份进行搭建dg。     3.1.12dg库使用静态监听无法监听pdb数据库的service问题如何进行解决?   4.rac+rac dg的实战步骤(pdb架构)(上传。。。)5.19c单实例数据库通过rman备份进行异机迁移到单实例数据库     5.1通过备份脚本进行数据,归档,控制文件备份     5.2通过备份脚本进行归档,控制文件备份       (注意源库备份目录是/backup/db和/backup/ar)     5.3传输备份文件到目标库        (传输备份文件到目标库的/home/oracle/bk目录)     5.4利用参数文件启动数据库到nomount     5.5利用备份集恢复控制文件,并启动数据库到mount     5.6通过restore database恢复数据库        5.6.1注册目标库备份集到控制文件        5.6.2启动数据库到mount状态,确定recover database的序列号     5.7recover database        5.7.1通过rman 进行recover database        5.7.2通过sql 命令行进行 recover database;     5.8.打开数据库          5.8.1解决打开数据库后,sys用户无法远程监听登录问题          5.8.2修改数据库动态参数启动数据库     5.9.备份的扩展             5.9.1如何知道备份集里面有哪些归档             5.9.2如何从这些备份集提取归档             5.9.3进行异机数据库迁移时,如何逐步应用归档,并且如何open read only数据库后,继续应用归档             5.9.4为何要进行 open read only进行提前打开验证。               5.10.rman迁移备份的补充             5.10.1如何再rman设置数据文件,在线日志生成路径。               类似如下命令                    run  6单实例数据库无数据丢失通过rman备份异机迁移到rac数据库rac数据库通过rman迁移到rac数据库      6.1单实例源库进行数据库升级           19.3的源库升级到19.13版本(包括打数据库补丁和ojvm补丁)      6.2.传输备份文件到目标库           传输备份文件到目标库的/home/oracle/bk目录     6.3.利用参数文件启动数据库到nomount     6.4.利用备份集恢复控制文件,并启动数据库到mount        6.5.通过restore database恢复数据库           注册目标库备份集到控制文件           启动数据库到mount状态,确定recover database的序列号     6.6.recover database          通过rman 进行recover database          通过sql 命令行进行 recover database;     6.7.单实例数据库恢复完成后,配置为rac数据库           注册数据库到集群          修改数据库参数文件到asm     6.8.迁移rac数据库rac数据库。           单实例数据库异机迁移到rac和,rac数据库异机迁移到rac有啥不一样。           根据上面理论,实施rac数据库异机恢复到rac7数据库本地恢复系列     7.1单实例数据库本地恢复     7.2rac数据库本地恢复8综合实战(uploading)     7.1实战课题:        有一台11.2.0.3的单实例数据库A,数据库容量有20T,无备份。        如何迁移到新搭建rac环境B(数据库版本是19.13),并且是迁移到rac的pdb数据库,并且rac数据库的asm容量只有21T.        这次实战包含的知识点。        1-如何在环境B复制数据库A的软件,最好进行复制,因为数据库A的11.2.0.3打了很多补丁,如果安装11.2.0.3软件,会造成版本不一致。        2-如何搭建11.2.0.3的单实例dg。        3-dg归档缺失如何解决。        4-如何升级11.2.0.3单实例到11.2.0.4单实例        5-如何升级11.2.0.4单实例到19.3单实例        6-如何升级19.3单实例到19.13单实例。        7-如何迁移19.13单实例数据库到19.13的rac的pdb数据库。9数据库升级系列     8.1 单实例19c数据库升级到19.13版本。     8.2 单实例12.2.0.1数据库升级到19.13版本。     8.3 单实例12.1.0.2数据库升级到19.13版本。     8.4 19c数据库rac升级到19.13版本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值