用如下语句查询锁死的表:
select pspid,aserial#,
cobject_name,
bsession_id,
boracle_username,
bos_user_name
from v$process p, v$session a, v$locked_object b, all_objects c
where paddr = apaddr
and aprocess = bprocess
and cobject_id = bobject_id;
其中object_name就是被锁的表名,如图:
Oracle数据库 *** 作中,我们有时会用到锁表查询以及解锁和kill进程等 *** 作,那么这些 *** 作是怎么实现的呢?本文我们主要就介绍一下这部分内容。
(1)锁表查询的代码有以下的形式:
select count() from v$locked_object;
select from v$locked_object;
(2)查看哪个表被锁
select bowner,bobject_name,asession_id,alocked_mode from v$locked_object a,dba_objects b where bobject_id = aobject_id;
(3)查看是哪个session引起的
select busername,bsid,bserial#,logon_time from v$locked_object a,v$session b where asession_id = bsid order by blogon_time;
(4)杀掉对应进程
执行命令:alter system kill session'1025,41';
其中1025为sid,41为serial#
详细步骤如下:
1、点击新建查询按钮,打开SQL命令编辑框,对数据库表的 *** 作以及维护都可以通过编辑SQL命令实现。
2、在编辑框内编辑创建数据库表的代码,确认代码无误后,单击执行按钮,创建数据表。
3、创建数据表的源代码如下:
use test go
if exists(select name from systables where name='Student')
drop table Student go
create table Student
(sname nchar(10) primary key,
sex nchar(2) not null,
bir datetime)
数据库管理系统,database management system,简称dbms,是一种 *** 纵和管理数据库的大型软件,用于建立、使用和维护数据库。用户通过dbms访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。
提供数据定义语言(ddl)。用它书写的数据库模式被翻译为内部表示。数据库的逻辑结构、完整性约束和物理储,存结构保存在内部的数据字典中。数据库的各种数据 *** 作(如查找、修改、插入和删除等)和数据库的维护管理都是以数据库模式为依据的。
查看被锁表:
select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName
from sysdm_tran_locks where resource_type='OBJECT'
spid 锁表进程
tableName 被锁表名
以上就是关于查询oracle 数据库里有哪些表锁死全部的内容,包括:查询oracle 数据库里有哪些表锁死、查看oracle是否锁表、sqlserver怎么用sql查看具体那个表被锁住了等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)