`
一笑_奈何
  • 浏览: 68890 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

ORA-01940:无法删除当前已链接的用户(转)

阅读更多
(1)查看用户的连接状况

select username,sid,serial# from v$session

------------------------------------------

如下结果:

username          sid                serial#

----------------------------------------

NETBNEW          513              22974
NETBNEW          514              18183
NETBNEW          516              21573
NETBNEW          531              9
WUZHQ             532              4562

(2)找到要删除用户的sid,和serial,并删除

-------------------------------------------

如:你要删除用户'WUZHQ',可以这样做:

alter system kill session'532,4562'

(3)删除用户

--------------------------------------------

drop user username cascade

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

-------------------------------------

select saddr,sid,serial#,paddr,username,status from v$session where username is not null

结果如下(以我的库为例):

saddr                     sid           serial#            paddr              username              status

--------------------------------------------------------------------------------------------------------

564A1E28              513           22974            569638F4        NETBNEW             ACTIVE
564A30DC              514          18183            569688CC        NETBNEW            INACTIVE
564A5644              516           21573            56963340        NETBNEW            INACTIVE
564B6ED0              531           9                   56962D8C        NETBNEW            INACTIVE
564B8184              532          4562               56A1075C        WUZHQ                KILLED

status 为要删除用户的session状态,如果还为inactive,说明没有被kill掉,如果状态为killed,说明已kill。

由此可见,WUZHQ这个用户的session已经被杀死。此时可以安全删除用户。
分享到:
评论

相关推荐

    oracle错误代码超级大全ORA-00000_to_ORA-40322.

    * 原因:用户会话当前被其他人使用。 * 解决:不要切换到附加到其他进程的会话。 ORA-00022: 无效的会话 ID;访问被拒绝 * 原因:指定的会话不存在或调用者没有访问权限。 * 解决:指定一个有效的会话 ID,你拥有...

    Oracle所有错误

    #### ORA-00034:无法在当前PL/SQL会话中 通常发生在尝试执行不允许在当前PL/SQL环境中运行的操作时。检查操作的适用环境。 #### ORA-00035:LICENSE_MAX_USERS不能小于当前用户数 当尝试降低`LICENSE_MAX_USERS`...

    cms后台管理

    6.将服务器上jeecms项目删掉,发布新建的jeecms项目。 三 首页的加载过程 在浏览器中输入http://localhost:8080/jeecms,回车 首先进入配置文件web.xml, <context-param> <param-name>contextConfigLocation...

    oracle学习小结1.1

    - **更改监听器配置**:更改监听器配置文件`listener.ora`和`tnsnames.ora`中的IP地址信息。 - 需要在`C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN`目录下修改配置文件以更新IP地址。 ### 7. 解锁用户账号 - **...

    Oracle9i的init.ora参数中文说明

    说明: 此参数指定链接程序 (如: UNIX 中的 ld, 或用于将目标文件链接到共享对象或 DLL 的 GNU ld) 的完整路径名。此参数是可选的。随每个平台附带的特有的 make 文件中包含此参数的默认值。如果为此参数指定了一个值...

    win7下oracle的安装与卸载

    - 如果有 DLL 文件无法删除,可以忽略,重启后再尝试或在新安装时选择不同目录。 #### 三、其他注意事项 - **Oracle 错误处理**:遇到常见的错误如 ORA-28000: the account is locked 可能是因为账户被锁定,可以...

    常用命令aix.txt

    - **`rm -fr ora*`**:删除文件或目录,包括强制删除非空目录。 #### 存储管理 - **`df -k`**:显示文件系统磁盘空间使用情况。 - **`du`**:显示文件或目录的磁盘使用情况。 - **`mount`**:挂载文件系统。 - **`...

    Oracle数据库日常维护手册.pdf

    - **注意事项**: 应当修复或删除所有无效对象以保持数据库的完整性。 ##### 3.6 检查所有回滚段状态 - **命令**: `$ select segment_name, status, highwater from v$rollstat;` - **解释**: 查看所有回滚段的...

    orcle相关命令收集

    **解释**: 显示当前用户的系统权限。 - **示例**: ``` select * from user_sys_privs; ``` - **查询角色权限**: **语法**: `select * from role_sys_privs;` **解释**: 显示角色权限。 - **...

    Maximo EAM平台开发笔记2

    根据具体需求,使用`maxinst`命令执行ORA文件,并指定必要的参数如数据库类型、用户等。 3. 查看日志文件确认执行成功与否。 **1.3 安装MAXIMO的数据库操作** - **操作指南**: 1. 准备好所有必需的软件包和文件...

    ORACLE常见问题整理

    - **删除用户**: 1. 查看是否有链接用户:`select username, sid, serial# from v$session where username='ERPSH';` 2. 杀死链接用户:`alter system kill session '148,985';`(其中148为sid,985为serial#)。...

    ORACLE 自动提交问题

    自动提交意味着每次对数据库的DML(插入、更新、删除)操作都会立即提交,除非显式地开启了一个事务并控制其提交或回滚。在描述中提到的问题,开发者在PL/SQL Developer中插入数据后,通过程序或SQL Plus无法查询到...

    Oracle数据库如何创建DATABASE LINK

    - **作用**:DATABASE LINK允许用户跨数据库执行查询、插入、更新和删除操作。它支持两个或多个Oracle数据库之间的透明数据访问,从而简化了多数据库环境下的数据管理和应用程序开发。 - **特点**: - 透明性:对于...

    HairOracle数据库运维手册.docx

    - **User**:查看当前登录系统的用户。 - **日志巡检** - **OS_log**:检查操作系统级别的日志文件。 - **Cron_log**:检查定时任务的日志文件。 - **Ora_log**:审查Oracle数据库的日志文件。 - **Lsnrctl...

    sqlserver 与 oracle 的配置

    - **改变连接**:允许用户在已连接的情况下切换操作模式或注销当前用户。 - **刷新数据**:更新系统数据。 - **操作日志**:记录所有操作,方便追踪和审计。 - **退出**:安全关闭系统连接。 #### 数据结构 1....

    oracle数据库链接

    要查看当前数据库中已存在的所有数据库链接,可以执行以下查询: ```sql SELECT owner, object_name FROM dba_objects WHERE object_type = 'DATABASELINK'; ``` 此外,也可以查看数据库的全局名称配置,这有助于...

    卸载oracle

    7. **删除与Oracle相关的软链接** - 删除`/usr/bin/dbhome` - 删除`/usr/bin/oraenv` - 删除`/usr/bin/coraenv` #### 三、清理系统配置文件 8. **删除Oracle配置文件** - 删除`/etc/oraInst.loc`和`/etc/...

    OracleDBLink

    其中,`PUBLIC` 表示公共链接,可供所有用户使用;`<名称>` 是 DBLink 的标识符;`<用户名称>` 和 `<用户密码>` 是用于连接远程数据库的凭证;`名称>` 是在 `tnsnames.ora` 文件中定义的目标数据库的 TNS 名称。 6...

    DBA 面试题目

    - 当`GLOBAL_NAMES`参数设置为`TRUE`时,意味着在创建数据库链接时必须使用相同的名称连接远程数据库,有助于统一命名规则,增强系统间的互操作性。 #### 23. 如何加密PL/SQL程序? - 使用`WRAP`函数可以对PL/SQL...

Global site tag (gtag.js) - Google Analytics