ORA-12545: Connect failed because target host or object does not exist
begin
dbms_streams_adm.add_schema_propagation_rules(
schema_name => 'qbjmes',
streams_name => 'qbjmes_to_racdb',
source_queue_name => 'strmadmin.qbjmes_queue',
destination_queue_name => 'strmadmin.racdb_queue@racdb',
include_dml => true,
include_ddl => true,
include_tagged_lcr => false,
source_database => 'qbjmes',
inclusion_rule => true
queue_to_queue => true); ------新添加的
end;
/
不报错了ora 25315
报错 ora 12545
SQL> select PROPAGATION_NAME,SOURCE_QUEUE_NAME,DESTINATION_QUEUE_NAME,DESTINATION_DBLINK,RULE_SET_NAME,STATUS,ERROR_MESSAGE from dba_propagation;
PROPAGAT SOURCE_Q DESTINATION_QUEUE_NAME
-------- -------- ------------------------------
DESTINATION_DBLINK
--------------------------------------------------------------------------------
RULE_SET_NAME STATUS ERROR_MESSAGE
--------------- ---------- ----------------------------------------------------
QBJMES_T QBJMES_Q MES_QUEUE_QBJ
O_MES UEUE
MES
RULESET$_54 DISABLED ORA-12545: Connect failed because target host or object does not exist
建立传播进程
-
Stop the propagation.
-
Ensure that the source queue is empty.
-
Ensure that the destination queue is empty and has no unapplied, spilled messages before you drop the propagation.
-
Re-create the propagation with the
queue_to_queue
parameter set toTRUE
in the creation procedure.
aix5.3系统上的oracle 10.2.0.3 RAC,连接数据库的时候经常报如下错误:
ORA-12545: Connect failed because target host or object does not exist |
这个问题可以通过设置rac数据库各个节点的local_listener参数来解决,有两种方式:
方式1
在RAC的每个节点上编辑$ORACLE_HOME/network/admin/tnsnames.ora,增加local_listener_rac= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=<vip>)(PORT=1521)) ) |
在rac的任意一个节点上修改数据库参数,设置local_listener为local_listener_rac
$ sqlplus / as sysdba SQL> alter system set local_listener='local_listener_rac' scope=spfile; |
重新启动各个节点上的数据库实例
方式2
也可以按照metallink上id为 364855.1的文档使用如下方法修改在rac的每个节点上执行如下语句设置local_listener参数
sql>alter system set LOCAL_LISTENER="(ADDRESS=(PROTOCOL=TCP)(HOST=<VIP_address>)(PORT=1521))" scope=both sid='instance_name'; |
其中 <VIP_address>对应每个节点的vip地址;
instance_name对应当前节点的实例名,如rac1、rac2等,即每次只修改当前实例的参数