无法删除dblink的问题
查看数据库里的dblink有:
SQL> select *From dba_db_links;
OWNER DB_LINK USERNAME HOST CREATED
------------------------------ -------------------- ------------------------------ -------------------- --------------
PUBLIC TT SCOTT p8.222 30-5月 -13
SCOTT BOS_LINK BOS0301 (DESCRIPTION = 23-4月 -13
(ADDRESS_LIST =
(ADDRESS = (PR
OTOCOL = TCP)(HOST =
10.10.6.26)(PORT =
1521))
)
(CONNECT_DATA =
(SERVICE_NAME
= bostest)
)
)
SYS LINK2.AAA.DB.COM SCOTT p8.222 30-5月 -13
SYS LINK1.DBA.UP.COM SCOTT p8.222 30-5月 -13
PUBLIC LINK2.COM SCOTT p8.222 30-5月 -13
第一种无法删除dblink的问题
删除TT:
SQL> show user
USER 为 "SYS"
SQL> drop public database link tt
2 ;
drop public database link tt
*
第 1 行出现错误:
ORA-02024: 未找到数据库链接
SQL> select *From global_name;
GLOBAL_NAME
--------------------------------
DB.COM
无法删除:但是确实存在这个链接
解决方法:
查看验证dblink
SQL> select name from v$database@tt;
NAME
---------
ORA11G
SQL> update props$ set value$ = 'ORA11G' where name ='GLOBAL_DB_NAME';
已更新 1 行。
SQL> COMMIT;
提交完成。
SQL> drop public database link tt;
drop public database link tt
*
第 1 行出现错误:
ORA-02024: 未找到数据库链接
SQL> alter system flush shared_pool;
系统已更改。
SQL> alter system flush shared_pool;
系统已更改。
SQL> alter system flush shared_pool;
系统已更改。
SQL> drop public database link TT;
drop public database link TT
*
第 1 行出现错误:
ORA-02082: 回送数据库链接必须具有连接限定词
SQL> shut immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>
SQL>
SQL> startup
ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance
ORACLE 例程已经启动。
Total System Global Area 778387456 bytes
Fixed Size 1374808 bytes
Variable Size 327157160 bytes
Database Buffers 444596224 bytes
Redo Buffers 5259264 bytes
数据库装载完毕。
数据库已经打开。
SQL>
SQL>
SQL> drop public database link TT;
数据库链接已删除。
到此终于删除了这个dblink
此种不能删除dblink是由于global_name 不一致
第二种不能删除dblink的问题
SQL> conn /as sysdba
已连接。
SQL> drop public database link bos_link;
drop public database link bos_link
*
第 1 行出现错误:
ORA-02024: 未找到数据库链接
这个地方的错误在于,么有注意上面dblink是一个私有link,不是public dblink,多写了 一个public关键字
SQL> drop database link bos_link;
drop database link bos_link
*
第 1 行出现错误:
ORA-02024: 未找到数据库链接
这个地方在于,这个是个私有dblink,私有的dblink只有在私有用户下才能删除,sys用户也不能删除这个link
SQL> conn scott/tiger
已连接。
SQL> drop database link bos_link;
数据库链接已删除。
实验问题的解决,参考的http://blog.csdn.net/tianlesoftware/article/details/6160196