解决dblink无法删除

来源:互联网 发布:税务数据质量检查报告 编辑:程序博客网 时间:2024/05/22 06:25


无法删除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

原创粉丝点击