zoukankan      html  css  js  c++  java
  • db locked ?

     碰到一个问题,gqkk这个数据库的devicestate无法insert,发现是被锁。
     解决方案:
     --Step1:看看是谁在访问这个对象
     select b.sid, b.username, b.machine
      from v$access a, v$session b
     where a.sid = b.sid
       and a.OBJECT = 'DEVICE_TABLE_MAP2_TG'
    --根据sid获得操作系统的进程号
    select spid os_sid from v$process where addr=(select paddr from v$session where sid = &oracle_sid)
    --利用ssh secuture登录,然后
     ps -ef|grep 14153
     kill -9 14153

    参考资料:

    用户要求删除一个数据库的用户 GREENPASS,在删除的过程中,报错如下:

    drop user GREENPASS
    *
    ERROR at line 1:
    ORA-04021: timeout occurred while waiting to lock object NEWDR.HNDR_SMS_LOG

    处理过程

    1. 首先查询NEWDR.HNDR_SMS_LOG,这是一个'PROCEDURE';

    2. 现在报错,不能对此对象进行锁定。

    3. 看看什么会话在访问此对象:

    select B.SID, b.USERNAME, b.MACHINE
    FROM V$ACCESS A, V$SESSION B
    WHERE A.SID = B.SID
       and a.OBJECT = 'HNDR_SMS_LOG'
       and a.TYPE = 'PROCEDURE';
      

           SID USERNAME     MACHINE
    ---------- ------------ -------------------
           520 NEWDR        WORKGROUP\BONC02

    4. 根据sid获取操作系统的进程号

    select spid os_sid
    from v$process
    where addr = (select paddr from v$session where sid = &oracle_sid);

    old   3: where addr = (select paddr from v$session where sid = &oracle_sid)
    new   3: where addr = (select paddr from v$session where sid = 520)

    OS_SID
    ------------
    29360

    5. 询问业务人员,可以直接杀掉进程

    ps -ef|grep 29360
    kill -9 29360

    6. 重新尝试
    SQL> drop user GREENPASS;

    用户已丢弃

    -----------------http://hi.baidu.com/51885729/blog/item/d1ea1a9717be0e6454fb9655.html 

    至于为什么会这样。。。。估计是我用了一个网络管理软件有关。。。 

  • 相关阅读:
    git 撤销更改的文件
    git基于某个分支创建分支
    nodejs 支付宝app支付
    windows提交代码到git仓库
    MongoError: Cannot update '__v' and '__v' at the same time,错误解决办法
    作业3.输入一个年份,判断是闰年还是平年
    作业2.判断一元二次方向根的情况
    求3个数中的最大数
    语句
    运算符
  • 原文地址:https://www.cnblogs.com/xianqingzh/p/1780117.html
Copyright © 2011-2022 走看看