欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle存储过程无法调试

程序员文章站 2024-01-08 08:56:41
...

但是在一个Oracle rac双机环境中调试一个存储过程,点f9后有时能继续run或者 step into,有时候pl/sql dev就像死掉了一样,那些按

问题:

使用pl/sql developer 调试Oracle 存储过程。

在存储过程上点右键,选调试(test),然后按f9(debug)。这是正常的话,那些run、step into等按钮就可以点了,或者点run到断点,或者点step into做单步跟踪。

但是在一个Oracle rac双机环境中调试一个存储过程,点f9后有时能继续run或者 step into,,有时候pl/sql dev就像死掉了一样,那些按钮都不能点了,下面的状态提示栏中显示“executing”。

原因:

双机采用了负载均衡策略,而调试要启动两个会话,这就有可能被分配到不同的节点上,造成无法调试。

解决办法:

要调试存储过程的开发机器上tnsnames配置单机访问。

例如:

RAC1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = RAC) # notice the difference
(INSTANCE_NAME = RAC1) # betwen this
)
)

Oracle存储过程无法调试