Re: ORA-02020: too many database links in use

From: Jared Still <>
Date: Mon, 25 Jan 2010 17:36:01 -0800
Message-ID: <>

Similar to what Mark Powell, sent, here's a query I got from Mark Bobak, based one pretty much the same tables.
  • who_dblink.sql
  • who is querying via dblink?
  • Courtesy of Tom Kyte, via Mark Bobak
  • this script can be used at both ends of the database link
  • to match up which session on the remote database started
  • the local transaction
  • the GTXID will match for those sessions
  • just run the script on both databases

Select /*+ ORDERED */

substr(s.ksusemnm,1,10)||'-'|| substr(s.ksusepid,1,10)      "ORIGIN",
substr(g.K2GTITID_ORA,1,35) "GTXID",
substr(s.indx,1,4)||'.'|| substr(s.ksuseser,1,5) "LSESSION" ,
                0, decode( bitand(ksuseflg,4096) , 0,'INACTIVE','CACHED'),

) "S",
substr(w.event,1,10) "WAITING"
from x$k2gte g, x$ktcxb t, x$ksuse s, v$session_wait w, v$session s2 where g.K2GTDXCB =t.ktcxbxba
and g.K2GTDSES=t.ktcxbses
and  s.addr=g.K2GTDSES
and  w.sid=s.indx
and s2.sid = w.sid


Jared Still
Certifiable Oracle DBA and Part Time Perl Evangelist Oracle Blog: Home Page:

On Fri, Jan 22, 2010 at 2:00 PM, Roger Xu <> wrote:

> We are getting this error and I know I need to increase open_links
> parameter which requires recycling the instance. My question is - how to
> find out all open dblinks so I can kill some sessions which are holding
> dblinks? (V$DBLINK lists all open database links in the current session.)
> Thanks, Roger

Received on Mon Jan 25 2010 - 19:36:01 CST

Original text of this message