curl可以访问但httpclient不能访问_exta进程不能访问+ASM实例的解决方法

a4d24f3868ca74ac642d9c58ec106f79.png

exta进程需要直接访问+ASM实例来获取PROD4实例的redo文件,因此exta进程必须能够登陆+ASM实例,并且可以找到redo文件的路径并能够正常访问。另外exta进程不仅仅要读取redo文件,有些情况还需要读取归档日志。因此让exta能够正常访问+ASM实例管理的redo和archivelog是成功抽取RPOD4实例的tranlog的前提。

以下是配置exta进程访问+ASM实例的步骤:

配置监听让+ASM实例能够动态注册

1、修改+ASM实例的local_listener参数的值

[oracle@edsir1p8-+ASM ~]$ . oraenv

ORACLE_SID = [+ASM] ? +ASM

[oracle@edsir1p8-+ASM ~]$ sqlplus / as sysasm

SQL> show parameter local

该参数指定了+ASM实例动态往哪个监听上注册,如果为空默认往端口号为1521的监听上注册,如果1521端口号的监听正常启动了可以查看是否注册了+ASM实例。如果要修改local_listener参数的值需要先配置注册目标监听的tnsname,然后修改该参数值。

SQL> alter system set local_listener=tnsname scope=spfile;

或者修改为默认往1521端口的监听上注册:

SQL> alter system set local_listener='' scope=spfile;

2、修改完成后重启数据库加载spfile

SQL> shutdown immediate

SQL> startup nomount

3、等待pmon进程注册+ASM实例到指定监听或者手动注册

手动注册指令:

SQL> alter system register;

【文章同步发布于漫兮网:https://www.manxinet.com】

4、查看+ASM实例是否动态注册到了指定监听上

[oracle@edsir1p8-PROD4 ~]$ lsnrctl status

a060e8314bcfece4988902d95c22d6aa.png

截图中显示:+ASM实例已经动态注册到了监听LISTENER上,注册形式为:READY 即动态注册。

在源端配置登录+ASM实例的tnsname

因为实例名称为+ASM,所以在netmgr图形界面上配置tnsname时报错,提示实例名称或者服务名称不符合格式。所以只能通过修改tnsnames.ora文件来添加tnsname。

添加完成后的截图如下:

(tnsnames.ora文件截图)

ee5fdb07448e6394fc85b016470839cc.png

添加如下内容到tnsnames.ora文件中:

ASM =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = http://edsir1p8.us.oracle.com)(PORT = 1521))

)

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = +ASM)

(INSTANCE_NAME = +ASM)

)

)

修改完tnsnames.ora文件后执行netmgr调出图形界面,确认tnsname是否能正常显示,如果ASM的tnsname正常显示,说明配置成功。【文章同步发布于漫兮网:https://www.manxinet.com】

配置 exta进程的参数文件添加登录+ASM实例的凭证

1、修改exta参数文件添加登录+ASM实例的凭证和其他选项。

在137端:

GGSCI (http://edsir1p8.us.oracle.com) 13> edit param exta

添加如下内容:

TRANLOGOPTIONS ASMUSER SYS@asm, ASMPASSWORD oracle

说明:登录+ASM实例的用户名为SYS ,密码为oracle

配置完成后截图如下:

319eafbc0fb8b23c1525d78535528341.png

exta参数文件参考:ogg/exta_137.txt

2、重启exta进程

GGSCI (http://edsir1p8.us.oracle.com) 15> stop exta

GGSCI (http://edsir1p8.us.oracle.com) 15> start exta

查询进程状态信息:

GGSCI (http://edsir1p8.us.oracle.com) 15>info all

如果exta进程显示为running状态表示启动成功,如果为stopped或者abonden表示启动失败。

3、如果进程启动失败需要查看错误日志信息,从中排错。

GGSCI (http://edsir1p8.us.oracle.com) 15> view report exta

4、成功启动exta进程后,并且确认其运行状态一直都是running,不会出现频繁的stopped表示可用正常访问+ASM实例了

配置过程中的故障处理

启动exta的进程报错ogg-04466找不到对应的文件和目录,按照%t_%s_%r.dbf格式找归档,但是实际上归档是OMF文件,命名规则是oracle管理的文件。

exta进程启动失败报错:ogg-04466找不到对应的文件和目录,exta进程是按照PROD4中log_archive_format参数指定的归档格式去寻找归档日志的。但是实际的归档日志是OMF的即oracle 管理的文件,命名规则都是由oracle系统指定的,所有肯定找不到对应的文件。

【文章同步发布于漫兮网:https://www.manxinet.com】

解决方法:

1、切记不能在exta进程的参数文件中指定归档路径

2、解决该报错基本上只能通过重建该进程来实现

GGSCI > delete extract exta

GGSCI> add ext exta tranlog, begin now

GGSCI> add exttrail /home/oracle/goldengate/ra,ext exta , MEGABYTES 20

GGSCI>edit param exta

2731372aa3ecef6296fa25d76983a6df.png

exta进程的参数文件参考:ogg/ exta_137.txt

[oracle@edsir1p8-PROD4 admin]$ cd /home/oracle/software/Goldengate/dirdat

删除该目录下的所的exta进程使用的队列文件

[oracle@edsir1p8-PROD4 dirdat]$ rm -rf ra*

注意:可别删除错了,配置了双活的话该目录下应该还有repb进程的replicate队列rb,千万别把rb*给删除了,那样就需要重新配置双活了。

GGSCI (http://edsir1p8.us.oracle.com) 17> start exta

启动exta进程,同时在/home/oracle/software/Goldengate/dirdat目录下产生本地抽取队列ra*

【文章同步发布于漫兮网:https://www.manxinet.com】

GGSCI (http://edsir1p8.us.oracle.com) 17> info all

确认exta进程的状态,重建后应该可以正常启动了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值