ORA-02020 too many database links in use重现

在A库上建DB_link,更新B库。报ORA-2020 too many database links in use,是要设置OPEN_LINKS和OPEN_LINKS_PER_INSTANCE两个参数,它们的默认值都是4。

alter system set open_links=200 scope=both;

alter system set open_links_per_instance=200 scope=both;

问题来了,是修改A库中的参数还是B库,是修改A库的。

修改这类参数数据库要重启。

ORA-02020: too many database links in use

Cause: The current session has exceeded the INIT.ORA open_links maximum.

Action: Increase the open_links limit, or free up some open links by committing or rolling back the transaction and canceling open cursors that reference remote databases.

OPEN_LINKS specifies the maximum number of concurrent open connections to remote databases in one session.

OPEN_LINKS_PER_INSTANCE specifies the maximum number of migratable open connections globally for each database instance.

OPEN_LINKS_PER_INSTANCE is different from OPEN_LINKS, which indicates the number of connections from a session. The OPEN_LINKS parameter is not applicable to XA applications.

OPEN_LINKS_PER_INSTANCE跟OPEN_LINKS的区别是,前者是对于XA事务的。

做个试验重现一下:

在A库上:

SQL> show parameter open_link

NAME                          TYPE        VALUE

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

open_links                    integer      4

open_links_per_instance       integer      4

create database link DBLINK_1

connect to TEST IDENTIFIED BY test

using '(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.15.150)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = orcl)

)

)';

--按照同种方式建5个dblink

SQL> set serveroutput on

SQL>  declare

2       v_i number;

3       v_sql varchar(500);

4    begin

5      for i in 1..5

6       loop

7        v_sql:='select count(*) from dual@DBLINK_'||i;

8        execute immediate v_sql into v_i;

9        dbms_output.put_line('DBLINK_'||i);

10        commit;

11       end loop;

12    end;

13  /

DBLINK_1

DBLINK_2

DBLINK_3

DBLINK_4

DBLINK_5

PL/SQL procedure successfully completed

SQL>

SQL>  declare

2       v_i number;

3       v_sql varchar(500);

4    begin

5      for i in 1..5

6       loop

7        v_sql:='select count(*) from dual@DBLINK_'||i;

8        execute immediate v_sql into v_i;

9        dbms_output.put_line('DBLINK_'||i);

10        --commit;

11       end loop;

12    end;

13  /

DBLINK_1

DBLINK_2

DBLINK_3

DBLINK_4

declare

v_i number;

v_sql varchar(500);

begin

for i in 1..5

loop

v_sql:='select count(*) from dual@DBLINK_'||i;

execute immediate v_sql into v_i;

dbms_output.put_line('DBLINK_'||i);

--commit;

end loop;

end;

ORA-02020: 过多的数据库链接在使用中

ORA-06512: 在 line 9

SQL>   declare

2       v_i number;

3       v_sql varchar(500);

4    begin

5      for i in 1..4

6       loop

7        v_sql:='select count(*) from dual@DBLINK_'||i;

8        execute immediate v_sql into v_i;

9        dbms_output.put_line('DBLINK_'||i);

10        --commit;

11       end loop;

12    end;

13  /

DBLINK_1

DBLINK_2

DBLINK_3

DBLINK_4

PL/SQL procedure successfully completed

SQL> commit;

Commit complete

--分两次执行

SQL> declare

2       v_i number;

3       v_sql varchar(500);

4    begin

5     for i in 1..3

6       loop

7        v_sql:='select count(*) from dual@DBLINK_'||i;

8        execute immediate v_sql into v_i;

9        dbms_output.put_line('DBLINK_'||i);

10        --commit;

11       end loop;

12    end;

13  /

DBLINK_1

DBLINK_2

DBLINK_3

PL/SQL procedure successfully completed

SQL>   declare

2       v_i number;

3       v_sql varchar(500);

4    begin

5     for i in 4..5

6       loop

7        v_sql:='select count(*) from dual@DBLINK_'||i;

8        execute immediate v_sql into v_i;

9        dbms_output.put_line('DBLINK_'||i);

10        --commit;

11       end loop;

12    end;

13  /

DBLINK_4

declare

v_i number;

v_sql varchar(500);

begin

for i in 4..5

loop

v_sql:='select count(*) from dual@DBLINK_'||i;

execute immediate v_sql into v_i;

dbms_output.put_line('DBLINK_'||i);

--commit;

end loop;

end;

ORA-02020: 过多的数据库链接在使用中

ORA-06512: 在 line 9

oracle ora 02020,ORA-02020 too many database links in use再现相关推荐

  1. Oracle的tnsnames.ora配置(PLSQL Developer)

    首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...

  2. oracle错误01653,oracle 10g 错误 ORA 01653 的解决过程

    oracle 10g 错误 ORA 01653 的解决过程 早上用户反应在操作用友NC时报错 ORA-01653 ,详细信息:ORA-01653: 表 NCV35.GL_DETAIL 无法通过 102 ...

  3. oracle创建ora文件,ORACLE配置tnsnames.ora文件实例

    ORACLE配置tnsnames.ora文件实例 客户机为了和服务器连接,必须先和服务器上的监听进程联络.ORACLE通过tnsnames.ora文件中的连接描述符来说明连接信息.一般tnsnames ...

  4. ORACLE数据库tnsnames.ora配置文件详细解析

    字段含义如下: ADDRESS_LIST      表示该客户机要经由多种协议与一台或多台服务器连接.在该样式文件中就表示该客户机要用TCP/IP协议来和服务器相连. PROTOCOL 指明要连接使用 ...

  5. oracle olap 不可用,[数据库]ORACLE OLAP错误ORA

    [数据库]ORACLE OLAP错误ORA 0 2015-04-25 00:00:20 刚刚安装了ORACLE 10g R2后,启动数据库时发现告警日志有如下错误: Database Characte ...

  6. Oracle客户端tnsnames.ora连接配置

    Oracle客户端tnsnames.ora连接配置 Oracle90的在C:\Oracle\ora90\network\ADMIN下面 Oracel10g的在D:\oracle\product\10. ...

  7. oracle初始化spfileORCL.ora文件损坏修复

    $ORACLE_HOME/dbs目录下的的spfileORCL.ora是一个二进制文件,不能手动编辑,修改后会导致oracle数据库无法正常启动.某日在操作数据库的过程中不慎将其修改,并且没有备份.我 ...

  8. Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库

    在Oracle10g下,我们可以使用RMANduplicate命令创建一个具有不同DBID的复制库.到了Oracle11gR2,RMAN的duplicate有2种方法实现: 1.Activedatab ...

  9. mysql连接池永驻_【学习笔记】Oracle连接池 数据库常驻连接池(Database Resident Connection Pool)案例介绍...

    天萃荷净 分享一篇关于应用程序与Oracle数据库连接的连接方法介绍,数据库常驻连接池(Database Resident Connection Pool)案例介绍 一.介绍常驻连接池(Databas ...

最新文章

  1. CTF---安全杂项入门第三题 这是捕获的黑客攻击数据包,Administrator用户的密码在此次攻击中泄露了,你能找到吗?...
  2. android获取当前应用占用的内存大小,Android分析已安装应用占用内存
  3. 以太坊---「地址、密码、私钥、助记词、Keystore 」那些事
  4. java web shiro_javase和javaweb环境下shiro的搭建
  5. 打击诈骗,逻辑回归闪亮登场
  6. D盘提示RAW文件如何找回
  7. SpringBoot整合ElasticSearch实现多版本的兼容
  8. Google 工作 4 年,我最终还是选择了离开
  9. Bzoj3262 陌上花开
  10. CAD关于线型操作添加线型(com接口c#语言)
  11. 金蝶基础资料中物料信息中的计价方法详细解释!小白不能让客户虎住,多多了解
  12. iTextSharp 列表
  13. Caffe框架的基本操作和分析
  14. 吞剑!喷火!这种江湖卖艺套路能吸引观众吗?
  15. 第7章第29节:四图排版:四张图片并列排版 [PowerPoint精美幻灯片实战教程]
  16. 项目:漫漫H5游戏-抓娃娃机
  17. android客户端接入新浪、腾讯微博以及人人网
  18. 植物大战僵尸android4版本,植物大战僵尸4
  19. 集成电路设计学习笔记(二)基于IC617反相器设计之原理图绘制
  20. suppo aaa 0.75-php,fastsupport-cn

热门文章

  1. burp和xray联动
  2. [GO语言基础] 二.编译运行、语法规范、注释转义及API标准库知识普及
  3. iOS之深入解析“锁”的底层原理
  4. 【数据结构与算法】之深入解析“24点游戏”的求解思路与算法示例
  5. HarmonyOS之常用布局StackLayout的使用
  6. LeetCode Algorithm 572. 另一棵树的子树
  7. 2019\Province_C_C++_B\试题C-数列求值
  8. 教小学妹学算法:诺基亚引出的动态规划问题
  9. 12.1 Bootstrap介绍
  10. Allocation Aizu - ALDS1_4_D