ORA-01940: 无法删除当前连接的用户

删除用户报错

SQL> drop user ODI_SRC CASCADE;
drop user ODI_SRC CASCADE
*
第 1 行出现错误:
ORA-01940: 无法删除当前连接的用户

查看用户的连接状况

SQL> select username,sid,serial# from v$session where username=‘ODI_SRC‘;

USERNAME                                                            SID    SERIAL#
------------------------------------------------------------ ---------- ----------
ODI_SRC                                                               7         85
ODI_SRC                                                             246         95
ODI_SRC                                                             366         83

根据删除用户的sid,和serial

SQL> alter system kill session‘7,85‘;

系统已更改。

SQL> alter system kill session‘246,95‘;

系统已更改。

SQL> alter system kill session‘366,83‘;

系统已更改。

删除用户

SQL> drop user ODI_SRC CASCADE;

用户已删除。

如果在drop后还提示ORA-01940:无法删除当前已链接的用户,说明还有连接的session,可以通过查看session的状态来确定该session是否被kill了,用如下语句查看:status为要删除用户的session状态,如果还为inactive,说明没有被kill掉,如果状态为killed,说明已kill。

SQL> select saddr,sid,serial#,paddr,username,status from v$session where username =‘ODI_SRC‘;

SADDR                   SID    SERIAL# PADDR            USERNAME                                             STATUS
---------------- ---------- ---------- ---------------- ------------------------------------------------------------ ----------------
0000000277C6D4C8          7         85 0000000277B7CCC8 ODI_SRC                                              KILLED
0000000277E3DEF0        246         95 0000000277B7CCC8 ODI_SRC                                              KILLED
0000000277F25410        366         83 0000000277B7CCC8 ODI_SRC                                              KILLED
时间: 2024-11-04 06:01:55

ORA-01940: 无法删除当前连接的用户的相关文章

删除正在连接的用户

正在连接的用户不能删除,除非是确实要删除的话,否则请谨慎操作,操作步骤如下 1.select sid,serial#,username from v$session where user='USERNAME'; 2.alter system kill session 'sid,serial#'; 3.drop user username cascade;

【Oracle】无法删除当前连接的用户

一.查询数据库所有当前连接的用户 select username, sid, serial# from v$session; 二.从结果列表里找到对应的用户 alter system kill session '69,11660' ; --sid,serial

【Oracle】删除正在连接的用户

1.查询用户的连接状态Select username,sid,serial# from v$session where username='XY1027'; USERNAME                              SID    SERIAL#------------------------------ ---------- ----------XY1027                                 22          1XY1027         

ora01940 无法删除当前连接的用户

我用system这个用户登录oracle,想删除掉一个自己创建的用户user,在网上找到的方法都是说先查找到该用户连接的会话select username,sid,serial# from v$session where username='user';然后再kill掉alter system kill session'56,270'可是在kill掉之后drop user user cascade,但是kill之后总是会出现新的会话,不知道是怎么回事,最后想到先将用户的密码修改了 alter u

强制删除正在连接的Oracle用户,以删除SDE用户为例

. 有时候想强制删除一个已经连接的Oracle用户,不能直接删除,可以用Kill会话信息. 比如今天想删除一个被连接的SDE用户,可以用以下方法删除一个“正在被连接”的用户. 1.查看所有用户的会话信息. select sid,serial#,username from v$session; 2.查看某一个指定用户的会话信息. 比如我们要删除其中的SDE用户,则可以用以下命令查看SDE用户的会话信息. select  sid,serial# from v$session where userna

ORACLE无法删除当前连接用户

今天在做Oracle数据库是遇到ORACLE无法删除当前连接用户 ,经查找可用如下方法解决 . 在Oracle中删除用户时提示:ORACLE无法删除当前连接用户 可以用以下语句 Sql代码 SQL> select username,sid,serial# from v$session; USERNAME SID SERIAL# ------------------------------ ---------- ---------- 1 1 2 1 3 1 4 1 5 1 6 1 7 1 SYS

数据库脱机 分离 删除所有连接

无法对 数据库'UDS' 执行 删除,因为它正用于复制 sp_removedbreplication 'database' 删除所有连接 USE master; GO DECLARE @SQL VARCHAR(3000); SET @SQL = ''; SELECT @SQL = @SQL+'; KILL ' + RTRIM(SPID) FROM [sys].[sysprocesses] AS sps WHERE [sps].[dbid] = DB_ID('database'); SET @SQ

删除TFS当前当前用户的工作区与服务器的映射

删除TFS当前当前用户的工作区与服务器的映射 删除工作区 tf workspace /delete 工作区名;创建的用户 /server:TFS服务器 例 tf workspace /delete WHQ-PC;whq /server:http://192.168.0.12:8080/tfs/defaultcollection 引用:http://longtianyu1.blog.163.com/blog/static/998196520120912913636/ 截图:

Domino 9下通过程序删除并记录未知用户及邮件组

说道domino相信大家都很熟悉了,而我们今天呢,主要介绍在Domino 9下通过程序删除并记录未知用户及邮件组,是什么意思呢,我们都知道Domino提供的邮件服务是个人数据库文件系统,每个邮箱用户都有一个独立的数据库存放邮件信息,跟其他提供邮件服务的系统不一样,当然Domino使用起来比较灵活,可以根据自己的需求开发自定义功能,由此可见使用起来相当灵活了,但是同时也会有另外一个问题产生,那就是邮件管理员可以误操作导致邮件信息错误.比如邮件组,定义一个邮件组,然后添加邮件组成员,管理员可以手动自