zoukankan      html  css  js  c++  java
  • Cannot drop a database link after changing the global_name ORA02024 [ID 382994.1]

    Cannot drop a database link after changing the global_name ORA-02024 [ID 382994.1]


     

    Modified 22-NOV-2010     Type PROBLEM     Status MODERATED

     

    In this Document
      Symptoms
      Cause
      Solution


    Platforms: 1-914CU;

    This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.

    Applies to:

    Oracle Server - Enterprise Edition - Version: 9.2.0.6 and later   [Release: 9.2 and later ]
    Information in this document applies to any platform.
    ***Checked for relevance on 14-Jan-2010***

    Symptoms

    Not able to drop a database link after changing the global_name of the database

    Earlier global_name had did not have domain name attached to it. The newly added
    global_name has a domain name attached to it

    When trying to drop the database link after this change throws the following error

    ORA-02024: database link not found

    But database link is present and the query on user_db_links displays the value

    Example :-

    SQL> select * from global_name;

    GLOBAL_NAME
    ---------------------------------------------------------
    DB10GR2

    SQL> create database link l1 connect to scott identified by tiger;

    Database link created.

    SQL> select db_link from user_db_links;

    DB_LINK
    ---------------------------------------------------------
    L1

    SQL> alter database rename global_name to DB10GR2.WORLD;

    Database altered.

    SQL> select * from global_name;

    GLOBAL_NAME
    ---------------------------------------------------------
    DB10GR2.WORLD

    SQL> drop database link l1;
    drop database link l1
    *
    ERROR at line 1:
    ORA-02024: database link not found

    Even if the global_name is changed back to the original value, the same errors
    occurs.

    Cause

    Initially when a database is created without domain in the global name, null will
    used from domain as opposed to .world in earlier releases

    Later on when the global_name is altered to contain the domain part also, this
    domain remains even when the global_name is altered back a name without domain name

    Example :-

    SQL> select * from global_name;

    GLOBAL_NAME
    ---------------------------------------------------------
    DB10GR2

    SQL> alter database rename global_name to DB10GR2.WORLD;

    Database altered.

    SQL> select * from global_name;

    GLOBAL_NAME
    ---------------------------------------------------------
    DB10GR2.WORLD

    SQL> alter database rename global_name to DB10GR2;

    Database altered.

    SQL> select * from global_name;

    GLOBAL_NAME
    ---------------------------------------------------------
    DB10GR2.WORLD

    The only option left to correct this is to update the base table props$

    Solution

    To implement the solution, please execute the following steps:

    1)Take a complete consistent backup of the database

    2)Execute the following:

    $sqlplus /nolog
    connect / as sysdba

    SQL> update props$ set value$ = '<globalname without domain>' where name ='GLOBAL_DB_NAME';

    SQL>commit;

    3)

    a) Then connect as the schema user that owns the DBLINK and try to drop it.

    If you still get ORA-2024: database link not found , that means the domain name is in your cache and needs to be cleared.

    b) Flush shared pool thrice and retry drop database link.
    alter system flush SHARED_POOL;
    alter system flush SHARED_POOL;
    alter system flush SHARED_POOL;

    c) If step b doesn't help, you need to bounce your database and try to drop the database link.

    4)Once the database link is dropped, the global_name can be changed back to the
    desired name containing domain part using the alter database rename global_name
    statement


     

     

     

     

    ------------------------------------------------------------------------------

    Blog http://blog.csdn.net/tianlesoftware

    网上资源: http://tianlesoftware.download.csdn.net

    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx

    DBA1 群:62697716(); DBA2 群:62697977()

    DBA3 群:62697850   DBA 超级群:63306533;    

    聊天 群:40132017

    --加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

    道森Oracle,国内最早、最大的网络语音培训机构,我们提供专业、优质的Oracle技术培训和服务! 我们的官方网站:http://www.daosenoracle.com 官方淘宝店:http://daosenpx.taobao.com/
  • 相关阅读:
    JVM全面分析之程序计时器
    JVM全面分析之类加载系统
    问题
    -----------------------算法学习篇:斐波拉契数列------------------------
    -----------------------------------A Tour of C++ Chapter8-------------------------------------------
    -----------------Clean Code《代码整洁之道》--------------------
    -----------------------------------A Tour of C++-------------------------------------------
    -----------------Clean Code《代码整洁之道》--------------------
    http响应状态码大全
    DOM之通俗易懂讲解
  • 原文地址:https://www.cnblogs.com/tianlesoftware/p/3609821.html
Copyright © 2011-2022 走看看