转载时请务必以超链接形式标明文章 原始出处和作者信息及本版权声明。
链接:http://www.dbasky.net/archives/2009/04/ora-02019.html
先说明下,出现ORA-02019错误信息主要是在进行dbserver进行升级,一些字典表的升级不完全。解决方法如下:
A:创建dblink:
create database link YEWU.REGRESS.RDBMS.DEV.US.ORACLE.COM
connect to soleilfuzhou identified by nuage
using 'DBRAC =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = db1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = db2-vip)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dbrac)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
(RETRIES = 180)
(DELAY = 5)
)
)
)'
create database link FENXI.REGRESS.RDBMS.DEV.US.ORACLE.COM
connect to fx identified by fx
using 'DBRAC =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = rdb1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = rdb2-vip)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dbrac)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
(RETRIES = 180)
(DELAY = 5)
)
)
)'
B:测试下dblink
select * from tab@FENXI.REGRESS.RDBMS.DEV.US.ORACLE.COM
3.请注意使用 DBLINK 时,INIT.ORA中 GLOBAL_NAME 的设置:
如果为 ture , 请使用DBLINK的全称,可在 all_db_links 中查到,如果为 FALSE, 不必使用全称,当出现
"ORA-02019:为找到远程数据库的连接说明"时,请使用全称,如:
select * from tab@FENXI.REGRESS.RDBMS.DEV.US.ORACLE.COM
4.SQL> select * from global_name;
GLOBAL_NAME
--------------------------------------------------------------------------------
LOCALSR
5.解决办法:
SQL>update global_name set GLOBAL_NAME = 'LOCALSR.US.ORACLE.COM' where GLOBAL_NAME = 'LOCALSR'
最后重启下数据库的实例:再次进行测试:
select * from tab@FENXI.REGRESS.RDBMS.DEV.US.ORACLE.COM
OK,大功告成。
看来做升级的时候还有注意字典表的状态啊!