ORA-00022: 無效的會話 ID; 訪問被拒絕

gaopengtttt發表於2012-10-24
遇到錯誤:
ORA-02068: following severe error from BUSISYS.REGRESS.RDBMS.DEV.US.ORACLE.COM
ORA-00022: 無效的會話 ID; 訪問被拒絕
 
Error:  ORA 22  
Text:   invalid session id; access denied
-------------------------------------------------------------------------------
Cause:  Either the session specified does not exist, or the caller does not
        have the privilege to access it.
Action: Specify a valid session ID.
        This requires ownership of the session id or the CHANGE_USER privilege.

以上的正常的解釋。
下面是可能遇到的不同情況
Distributed Transaction In MTS Using Shared Dblink Fails With Ora-00022 [ID 280247.1]
 

Symptoms

When using shared dblinks to do a distributed transaction from
MTS to MTS the client might see errors of the form

ORA-02050: transaction 840.21.16 rolled back, some remote DBs may be in-doubt
ORA-02068: following severe error from ...
ORA-00022: invalid session ID; access denied

Cause

Shared servers closed down there by closing the dblink

Solution

Set shared_servers = max_shared_servers in the remote instance
 
既然是使用shared database link 那我們就查詢下是否有這樣的dblink
SQL> select NAME from sys.link$ where AUTHUSR is not null;
 
NAME
--------------------------------------------------------------------------------
BUSISYS.REGRESS.RDBMS.DEV.US.ORACLE.COM
確實存在,我們只需要drop 掉然後建立非shared database link。
關於shared database link 文章

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7728585/viewspace-747065/,如需轉載,請註明出處,否則將追究法律責任。

相關文章