azure 云上 oracle11.2.0.4里dataguard归档日志传输 1034 问题详细解决过程

1,dataguard搭建好后,归档日志传输不过去

去查看master库上面的日志

tail –f /data/oracle/diag/rdbms/test_m1/powerdes/trace/alert_powerdes.log,显示信息如下:

Sun May 08 00:34:17 2016

Error 1034 received logging on to the standby

PING[ARC2]: Heartbeat failed to connect to standby ‘test_m2‘. Error is1034.

2,tnsping earch_m2是通的


[[email protected]_test_dbm1_3_111 admin]$ tnsping test_m3

TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 08-MAY-2016 09:13:42

Copyright (c) 1997, 2013, Oracle.  All rights reserved.

Used parameter files:

Used TNSNAMES adapter to resolve the alias

Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.112)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = test_m2)))

OK (0 msec)

[[email protected]_test_dbm1_3_111 admin]$

3,去standby备库上,Check检查下service_name,看到service_names确实是test_m2

看起来service_name也没用错,如下所示:


[[email protected]_test_dbm1_3_112 admin]$ rlwrap sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sun May 8 09:15:27 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> show parameter name;

NAME                                        TYPE       VALUE

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

cell_offloadgroup_name               string

db_file_name_convert                   string     /oracle/app/oracle/oradata/pow

erdes, /oracle/app/oracle/orad

ata/powerdes

db_name                                 string     powerdes

db_unique_name                            string     test_m2

global_names                         boolean FALSE

instance_name                                string     powerdes

lock_name_space                 string

log_file_name_convert                  string     /data/oracle/oradata/powerdes,

/data/oracle/oradata/pwerdes

NAME                                        TYPE       VALUE

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

processor_group_name                string

service_names                                 string     test_m2

SQL>

文章来源blog地址:http://blog.csdn.net/mchdba/article/details/51344246,谢绝转载

4,在master库、standby库,通过sqlplus登录报错


# 主库登录sqlplus报错

[[email protected]_test_dbm1_3_111 admin]$ sqlplus sys/[email protected]_m2 as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sun May 8 09:19:48 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

ERROR:

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

descriptor

Enter user-name:

# 备库sqlplus登录报错

[[email protected]_test_dbm1_3_112 admin]$ sqlplus sys/[email protected]_m2 as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sun May 8 09:18:39 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

ERROR:

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

descriptor

Enter user-name:

都报错:ORA-12514:TNS:listener does not currently know of service requested in connect descriptor,这个问题一般就涉及到的是tnsnames.ora里面的service_name没有写对了。

5,替换service_name,问题解决

回忆这个备库的搭建过程,我刚建库dbca的时候,设置的service_name是powerdes,我在配置dataguard的时候,修改了参数文件initpowerdes.ora,有在里面新设置*.db_unique_name=test_m2,再次create spfile frompfile;然后以新的参数文件启动数据库后,看到service_names变成了test_m2了,而我就在tnsnames.ora里面设置了新的service_names名字test_m2,这个新的test_m2没有生效结果报错ORA-12514了。

因此,我要将没有生效的test_m2换成原来的powerdes,需要换的地方有2个,一个是listener.ora,一个是tnsnames.ora,主库master库和备库standby库都要修改如下所示:


#主库master库修改1个文件tnsnames.ora

# tnsnames.ora文件

[[email protected]_test_dbm1_3_111 admin]$ vim tnsnames.ora

test_m2 =

(DESCRIPTION =

(ADDRESS_LIST =

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

)

(CONNECT_DATA =

(SERVICE_NAME = powerdes)

)

)

 

#备库standby库需要修改2个文件listener.ora、tnsnames.ora

# listener.ora文件

[[email protected]_test_dbm1_3_112 admin]$ vim listener.ora

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = /oracle/app/oracle/product/11.2.0/dbhome_1)

(PROGRAM = extproc)

)

(SID_DESC =

(SID_NAME = powerdes)

(ORACLE_HOME = /oracle/app/oracle/product/11.2.0/dbhome_1)

)

)

ADR_BASE_LISTENER = /oracle/app/oracle

# tnsnames.ora文件

[[email protected]_test_dbm1_3_112 admin]$ vim tnsnames.ora

test_m2 =

(DESCRIPTION =

(ADDRESS_LIST =

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

)

(CONNECT_DATA =

(SERVICE_NAME = powerdes)

)

)

修改完配置后,然后重启lsnrctl监听服务,再在备库使用sqlplus登录test_m2,登录成功:


[[email protected]_test_dbm1_3_112 admin]$ sqlplus sys/[email protected]_m2 as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sun May 8 09:34:51 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL>

再去看主库master库的后台alert日志,就会发现已经有开始传输归档日志的记录了:

……

******************************************************************

LGWR: Setting ‘active‘ archival fordestination LOG_ARCHIVE_DEST_2

******************************************************************

LGWR: Standby redo logfile selected toarchive thread 1 sequence 26

LGWR: Standby redo logfile selected forthread 1 sequence 26 for destination LOG_ARCHIVE_DEST_2

Thread 1 advanced to log sequence 26 (LGWRswitch)

Current log# 2 seq# 26 mem# 0:/oracle/app/oracle/oradata/powerdes/redo02.log

Sun May 08 01:12:22 2016

Archived Log entry 22 added for thread 1sequence 25 ID 0xcf7feffa dest 1:

ARC0: Standby redo logfile selected forthread 1 sequence 25 for destination LOG_ARCHIVE_DEST_2

Destination LOG_ARCHIVE_DEST_2 isSYNCHRONIZED

……

PS:这里问题比较奇怪,我上次这里service_name需要修改成新的参数文件里面的test_m2才能归档日志传输到备库standby上面,但是这次确需要保持原来的service_name。看来这里面还有别的奥妙所在。需要去探索清楚了。

时间: 2024-10-18 05:05:33

azure 云上 oracle11.2.0.4里dataguard归档日志传输 1034 问题详细解决过程的相关文章

Win 10紧紧粘连在微软Azure云上吸收云服务

根据许多有关Win 10的博客文章来看,微软让Win 10紧紧地粘连在微软的Azure云平台上,Win10与Azure云的分界线十分模糊.使用"粘连"这个词的意思是,Win 10主体与微软Azure云的界线相当模糊,千丝万缕,理不清. 根据有关媒体分析,Win 10免费升级可能给微软造成5亿美元的损失,但是,由此带来的用户提升,给微软带来不少的盈利机会. 对于一般消费者而言,使用云服务的价格为每小时2美分,使用多少时间,系统自动计费,不使用,不收费.所以,Win 10的新款浏览器Spa

azure 云上MySQL最新版本 MySQL5.7.11 批量自动化一键式安装 (转)

--背景云端 以前都喜欢了源码安装mysql,总觉得源码是高大上的事情,不过源码也需要时间,特别是make的时候,如果磁盘和cpu差的话,时间很长很长,在虚拟机上安装mysql尤其甚慢了. 现在业务发展了,开始在云上部署了,需要经常安装mysql,有的时候一次部署很多台,如果还是源码安装一个个去执行,效率就比较差了,所以准备采用更快效率的二进制来实现一键式自动化安装mysql. 1,mysql二进制安装包下载地址 下载地址:http://download.csdn.net/detail/mchd

云计算之路-阿里云上-容器难容:自建docker swarm集群遭遇无法解决的问题

我们从今年6月开始在生产环境进行 docker 容器化部署,将已经迁移至 ASP.NET Core 的站点部署到 docker swarm 集群上.开始我们选用的阿里云容器服务,但是在使用过程中我们遭遇了恐怖的路由服务(acsrouting)路由错乱问题 —— 请求被随机路由到集群中的任一容器,虽然后来阿里云修复了这个问题,但我们对容器服务失去了信心,走上了用阿里云服务器自建 docker swarm 集群的道路. 用上自建 docker swarm 集群之后,本以为可以在云上容器中过上安稳的日

AZURE云上 mkfs.ext4 /dev/sdc 导致宕机问题解决纪实

1.mkfs.ext4后down机 Azure上新建的vm,准备安装oracle数据库,但是挂载的磁盘,初始化后,直接down机了,如下图,失去连接,xshell窗口直接断开退出了.看下面图片 021.png 尝试过一下办法: (1)      azure管理界面,重启vm,再来一遍,还是down机. (2)      删除这台vm,重建一台新的vm,还是一样只要执行mkfs.ext4 /dev/sdc直接down机. (3)      在别的区建vm,不在东区建在北区建,还是一样. 2.问题分

azure 云上安装部署nginx

在安装nginx之前可以先安装libevent,安装libevent步骤如下:1.下载libevent:wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz 2.解压libevent:tar -zxvpf libevent-2.0.21-stable.tar.gz 3.进入解压目录:cd libevent-2.0.21-stable 4.指定安装目录:./configure --pref

azure云迁移后expdp报错ORA-01110: data file 201: '/home/oradata/powerdes/temp01.dbf'

1,expdp的时候报错: 在idc的oracle服务器上正常导入导出都ok的,但是到了azure云上就出故障了: [[email protected] oracle]$ expdp \'powerdesk/testcrmfile\' directory=DIR_DUMP tables=bis_floor,bis_shop,bis_shop_conn,bis_store,bis_cont dumpfile=zhengyin.qu_bak_$(date +%Y%m%d)_02.dmp Export

试用azure云

前段时间领导希望我将我们的产品部署到微软azure云试试看,并且已经与微软的销售联系,获得了一个azure云的测试帐户.于是我试用了下azure云. 首先是访问微软销售给的链接,输入登录信息,然后要求输入一些个人信息.我按照要求全都输入正确的信息,但提交时总是报错.坑爹啊,报错你倒是告诉我哪儿有错啊.这个问题折腾了好久,依旧报错,后来实在没办法打azure云的400电话,总算说明了原因:填写的手机号最前面必须要加0.终于提交成功了,这个时候来到了azure的个人门户. 首先是创建虚拟机,测试帐户

Azure云 VM远程开关机脚本

背景: 在Azure云上准备的测试环境,考虑到运行的成本,需要通过计划任务设置定时开关机. 此操作可以通过多种方法实现,例如Azure提供的runbook,或者调用Azure SDK来实现,本文使用Azure sdk for python实现. 支持判断中国法定节假日.周六日,按Resource Group为单位进行开关机. Code: credentials.py #!/usr/bin/python from msrestazure.azure_cloud import AZURE_CHINA

MySQL 8.0系列——轻松改配置,云上友好

背景 MySQL 5.7及之前版本下修改配置,如果能动态修改的,可以用set global语法,不能动态修改的,只能修改/etc/my.cnf配置文件,之后重启生效.如果需要持久化动态修改的参数,也只能同时修改/etc/my.cnf配置文件. 这个对云上环境不友好,毕竟云数据库上,大家无法直接远程底层虚拟机修改配置文件.针对如何持久化参数配置,在MySQL 8.0,有一个新特性,可以实现轻松修改配置文件,那就是set persist 和 set persist_only语法.前者用于修改并持久化