zoukankan      html  css  js  c++  java
  • 【DB_Oracle】oracle无法删除当前已连接用户的解决方案

    在还原Oracle某个用户的数据之前应把该用户及其已有的数据删掉,然后新建同名的用户并指定对应的表空间、临时空间等,并授权。但在删除该用户时提示“无法删除当前已连接的用户”,该问题的解决方案如下:

    例如要将名为xdbh的用户及其下的数据删除

    1、先将待删除用户锁定

    alter user XDBH account lock;

    2、查询该用户已连接的回话

    select username,sid,serial# from v$session where username='XDBH';  
    查询结果:
    USERNAME SID SERIAL#
    XDBH 927 25285
    XDBH 1974 31863
    XDBH 2405 18931

    3、然后基于语句alter system kill session 'xx,xxx'来关闭对应的回话,xx,xxx分别代表查询出来的sid和serial#

    alter system kill session '927,25285'

    4、有可能与该用户建立的回话比较多,每个回话均要写一个关闭语句太麻烦,可以通过SQL拼接的方式得到所有回话的关闭语句,最后将查询结果复制出来批量执行即可。

    select 'alter system kill session '||chr(39)||sid||','||serial#||chr(39)||';' from v$session where username='XDBH';
    查询结果:

    alter system kill session '121,63557';
    alter system kill session '443,37363';
    alter system kill session '917,1621';
    alter system kill session '1167,13205';
    alter system kill session '1259,18173';
    alter system kill session '1675,21987';
    alter system kill session '1926,43463';
    alter system kill session '2030,15817';
    alter system kill session '2036,6069';
    alter system kill session '2427,3455';
    alter system kill session '2748,51889';
    alter system kill session '2819,37317';
    alter system kill session '2842,43539';

  • 相关阅读:
    Object类的方法简记
    run()和start()调用问题简记
    面向对象设计
    关于JVM的简记
    操作运算符的简记
    jdbc简记
    synchronized的简记
    垃圾回收的一些简记
    java.io.IOException: Stream closed
    Java-文件名、目录名或卷标语法不正确
  • 原文地址:https://www.cnblogs.com/leiblog/p/14229650.html
Copyright © 2011-2022 走看看