oracle_解锁表

--以下几个为相关
SELECT * FROM v$lock;
SELECT * FROM v$sqlarea;
SELECT * FROM v$session;
SELECT * FROM v$process ;
SELECT * FROM v$locked_object;--object_id是对象的ID,session_id是被锁定对象有session ID;
SELECT * FROM all_objects;
SELECT * FROM v$session_wait;



--查看被锁的表 
select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;

--查看那个用户那个进程照成死锁
select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time;

--查看连接的进程 
SELECT sid, serial#, username, osuser FROM v$session;

--查出锁定的sid, serial#,os_user_name, machine_name, terminal,锁的type,mode
SELECT s.sid, s.serial#, s.username, s.schemaname, s.osuser, s.process, s.machine,
s.terminal, s.logon_time, l.type
FROM v$session s, v$lock l
WHERE s.sid = l.sid
AND s.username IS NOT NULL
ORDER BY sid;



这个语句将查找到数据库中所有的DML语句产生的锁,还可以发现,
任何DML语句其实产生了两个锁,一个是锁,一个是行锁。

--杀掉进程 sid,serial#
alter system kill session‘210,11562‘;

转:代码就是情人http://www.cnblogs.com/XQiu/p/5212787.html

时间: 2024-11-29 00:17:55

oracle_解锁表的相关文章

Oracle_多表连接

盗亦有道:http://www.blogjava.net/hello-yun/archive/2011/04/08/347890.html 表TESTA,TESTB,TESTC,各有A, B两列: TESTA(A,B) |    TESTB(A,B)   |    TESTC(A,B) 001      10A    |    001     10B     |    001    10C 002      20A    |    003     30B     |    004    30C

oracle 解锁表的一个小问题

最近开发的时候遇到一个小问题,执行一段sql之后发现 表被锁了 显示错误为:ora-00054:resource busy and acquire with nowait specified 百度之后发现是session进程卡住了,可以说是表的某些资源被锁定了 可以采用如下方法解锁: select t2.username,t2.sid,t2.serial#,t2.logon_timefrom v$locked_object t1,v$session t2where t1.session_id=t

Oracle_建表

Oracle_建表 --设计要求: --建立一张用来存储学生信息的表 --字段包含学号.姓名.性别,年龄.入学日期.班级,email等信息   create table student(        id number(6),        sname varchar2(12),        gender char(3),        age number(2),        enterdate date,        clazz varchar2(30),        email 

数据库查询锁表以及解锁表的sql

之前程序运行的时候,突然发生页面卡死,后台不报错的现象,经过排查是数据库表被锁死,下面的sql是查询被锁的表,以及对应的解锁sql: select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id; select b.username,b.sid,b.serial#,logon_time from v$locke

ORACLE_新建表

0.新建表CREATE TABLE table_name(column_name column_type other); 1.增加表字段ALTER TABLE table_nameADD (column_name column_type other); 2.修改表字段ALTER TABLE table_nameMODIFY (column_name column_type other); 3.删除表字段ALTER TABLE table_nameDROP COLUMN column_name;

浅尝辄止_枯藤老叔学习oracle_创建表空间

########################### oracle'—创建表空间 ########################### 1.创建表空间 test --查询当前数据库的表空间SELECT TABLESPACE_NAME,EXTENT_MANAGEMENT FROM DBA_TABLESPACES; --创建常规表空间 testCREATE TABLESPACE test DATAFILE 'F:\oracletesting\test.DBF' SIZE 100M AUTOEXT

oracle_外部表的两种实现方式oracle_loader[datapump]

外部表可以实现,通过数据库对象直接访问目录文件里的格式数据,加载方式分为两种oracle_loader和oracle_datapump,oracle_loader方式通过sqlldr引擎方式加载,访问flat格式文件:oracle_datapump通过datapump接口来加载,访问通过oracle_datapump方式卸载的dmp文件: ------oracle_loader ----自定义两个格式文件内容如下: ====a.dat==== 360,Jane,Janus,ST_CLERK,12

oracle 解锁表

//查询锁表id select session_id from v$locked_object; //查询该ID的serial# SELECT sid, serial#, username, osuser FROM v$session where sid = 152; //杀死该进程 alter system kill session '12,748'

oracle_创建表空间_临时表空间_修改表空间_以及自增长

管理员用户登录oracle数据库 [[email protected] ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Tue Jan 1 14:59:27 2019 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4