美创科技技术社区

注册

 

发新话题 回复该主题

大型事务处理 [复制链接]

1#

在有时候,某些大型处理程序,比如报表或者大批量的更新占用了大量的资源,从而影响到系统的整体可用性。为了保证主题业务的正常运行,一般采用KILL该大型处理程序的方法来释放占用资源。但是这样处理的后果是导致前面的工作白白浪费,可能我们已经运行了12小时的报表程序需要重新调度。特别是对于大型集中更新还会引起大规模的回滚,可能会消耗更多的资源。事实上,我们有一个相对安全的办法来解决该问题,即释放资源,又可以保留前面的工作。方法就是将该应用暂时休眠,停止工作。

以下是处理方法

(1) 找到需要进行处理操作系统进程号。

(2) 以internal或者sysdba角色连接数据库。

Sqlplus internal

Sql>oradebug setospid <ospid>

Sql>oradebug suspend

可以用以下命令在空闲时候重新唤醒。

Sqlplus internal

Sql>oradebug setospid <ospid>

Sql>oradebug resume

分享 转发
TOP
发新话题 回复该主题