Oracle-RDS for Oracle出现ORA-00054 对应方法

RDS for Oracle,在使用Truncate来删表中数据的时候,出现了如下的错误:

ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired。

 

主要原因是因为有事务正在执行(或者事务已经被锁),所有导致执行不成功。

 

如果是普通的Oracle数据库的话,先查看是那个session,然哈把它kill掉就可以了。

1,查看session

SELECT
    X.SID
  , X.SERIAL#
  , TO_CHAR(
        X.SQL_EXEC_START
      , 'YYYY/MM/DD HH24:MI:SS'
    ) AS SQL_EXEC_START
  , Y.SQL_TEXT
FROM
    V$SESSION X
        INNER JOIN V$SQL Y
           ON Y.HASH_VALUE = X.SQL_HASH_VALUE
          AND Y.ADDRESS    = X.SQL_ADDRESS
WHERE
    X.STATUS = 'ACTIVE'
AND X.SID IN (
        SELECT
            Z.SID
        FROM
            V$LOCK Z
        WHERE
            Z.TYPE IN ('TM','TX')
    )
;

 

2,删除该Session

alter system kill session '352,50411';

 

但是如果是RDS的话,是用不了这个alter system的,因为RDS是架构在AWS虚拟机上,而它不允许咱们碰那个虚机,

这时候需要用它提供的存储过程来删。

exec rdsadmin.rdsadmin_util.kill(352, 50411);

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
迁移Oracle数据库到阿里云RDS,有一些注意事项需要考虑: 1. 版本兼容性:确保源数据库和目标RDS数据库的版本兼容。阿里云RDS支持的Oracle版本可以在官方文档中查看。 2. 网络连接:确保源数据库和目标RDS数据库之间具有可靠的网络连接。可以使用公网或专线连接,根据实际需求选择合适的网络方案。 3. 数据迁移工具:阿里云提供了多种数据迁移工具,如DTS(数据传输服务)和数据传输工具等,可以选择适合您的迁移需求的工具进行迁移。 4. 数据库大小和性能:根据源数据库的大小和性能需求,选择适当的RDS实例规格。阿里云RDS提供了不同规格和容量的实例供选择。 5. 数据库配置和参数设置:在迁移前,确保源数据库的配置和参数设置与目标RDS数据库相匹配。需要注意的是,某些高级功能和参数可能在RDS上不可用。 6. 数据一致性:在进行或准实迁移,确保源数据库和目标RDS数据库之间的数据保持一致。可以使用DTS等工具进行增量迁移,以减少业务停机间。 7. 监控和备份:在迁移后,确保设置好数据库的监控和备份策略,以保证数据的安全性和可用性。 请注意,这只是一些常见的注意事项,实际迁移过程中可能会涉及到更多细节和特定要求。建议在迁移前详细阅读阿里云官方文档,并根据实际情况进行相应的调整和配置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值