Oracle查看被锁定的表和行的SQL

合集下载

Oracle查询死锁并解锁的终极处理方法

Oracle查询死锁并解锁的终极处理方法

Oracle查询死锁并解锁的终极处理⽅法⼀些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库。

现在提供⼀种⽅法解决这种问题,那就是在ORACLE中杀不掉的,在OS⼀级再杀。

1.下⾯的语句⽤来查询哪些对象被锁:复制代码代码如下:select object_name,machine,s.sid,s.serial#from v$locked_object l,dba_objects o ,v$session swhere l.object_id = o.object_id and l.session_id=s.sid;2.下⾯的语句⽤来杀死⼀个进程:复制代码代码如下:alter system kill session '24,111';(其中24,111分别是上⾯查询出的sid,serial#)【注】以上两步,可以通过Oracle的管理控制台来执⾏。

3.如果利⽤上⾯的命令杀死⼀个进程后,进程状态被置为"killed",但是锁定的资源很长时间没有被释放,那么可以在os⼀级再杀死相应的进程(线程),⾸先执⾏下⾯的语句获得进程(线程)号:复制代码代码如下:select spid, osuser, s.programfrom v$session s,v$process pwhere s.paddr=p.addr and s.sid=24(24是上⾯的sid)4.在OS上杀死这个进程(线程):1)在unix上,⽤root⾝份执⾏命令:#kill -9 12345(即第3步查询出的spid)2)在windows(unix也适⽤)⽤orakill杀死线程,orakill是oracle提供的⼀个可执⾏命令,语法为:orakill sid thread其中:sid:表⽰要杀死的进程属于的实例名thread:是要杀掉的线程号,即第3步查询出的spid。

oralce数据库锁表,解表

oralce数据库锁表,解表

--查看表空间的语句 使用率,空闲率
select a.file_id "FileNo",
a.tablespace_name "Tablespace_name",
a.bytes "Bytes",
a.bytes - sum(nvl(b.bytes, 0)) "Used",
select t.sid,t.serial# from v$session t
where t.sid=877;
alter system kill session '877,54426';
--查看表所占空间大小 单位M
select segment_name, sum(bytes) / 1024 / 1024 Mbytese
ห้องสมุดไป่ตู้
select object_name,machine,s.sid,s.serial#
from v$locked_object l,dba_objects o ,v$session s
where l.object_id = o.object_id and l.session_id=s.sid;
该语句可以把最近若干天的超过5秒的语句全部抓取出来,然后逐个分析,相信经过如此分析过后,数据库会有大的性能提升
group by a.tablespace_name, a.file_id, a.bytes
order by a.tablespace_name;
--杀死存储过程
select * FROM dba_ddl_locks where name =upper('AGGRE_PM'); -- 877

oracle锁表及解锁

oracle锁表及解锁

一.为了防止用户在同一时间并发地访问和修改资源,ORACLE使用不同类型的锁控制对数据的并发访问,以防止用户之间出现破坏性的交互操作,oracle 为处理事务自动锁定资源。

锁在SQL语句开始它们与数据的相互作用时获得,并在事务的整个过程中有效。

ORACLE使用两种锁模式:1.独占模式(排他):不允许其他任何并发会话以任何方式共享锁定的资源,修改数据时需要这种锁。

2.共享模式:允许对同一块数据的并发读访问。

在更改数据时,上升为独占模式。

一)行级锁insert update delete 隐式加行锁(排他)select ... for update 显示加行锁(共享)select ...for update 用于显示锁定将要更新的数据行,防止其他用户在更新之前操作此行如:select * from emp where deptno=30 for updateupdate emp set ename='Joke' where empno=7499;在锁释放之前,其他用户不可以对锁定的数据行进行(修改,删除)操作,查询可以假如有其他用户要锁定同一资源:可以使用wait 子句对锁的等待时间控制如:在另一用户中:select * from emp where deptno=30 for update wait 2 (等待2秒如2秒钟还未释放资源,系统将会给出提示信息二)表级锁共享模式(in share mode)共享更新模式(in share update mode)排他锁模式锁定表的通用语法:lock table 表名in <share or share update or exclusive mode>;1) 共享模式不允许其他用户插入,更新和删除行,多个用户可以同时在同一表上设置共享锁,这样设置锁的多个用户都只能执行查询lock table emp in share mode;2)共享更新模式(in share update mode)允许多个用户同时锁定表的不同行, 允许其他用户进行DML(insert update delete select)操作, 除了已锁定的行如:lock table emp in share update mode;select * from emp where deptno=30 for update //锁定的行其他用户不能delete ,update 部门30的雇员信息其他用户可以查看锁定的行: select * from emp where deptno=303)排他锁模式(限制性强)不允许其他用户插入,更新和删除行, 允许查看数据,但只有一个用户可以在表中放置排他锁lock table emp in exclusive mode;三) 死锁如:USERA: lock table scott.emp in share mode;USERB: lock table scott.emp in share mode ;USERA: update scott.emp set ename='Smith' where empno=7369;USERB: update scott.emp set job='CLERK' where empno=7521;发生死锁二.解锁一) 查询出锁定的相关信息的SQLview plaincopy to clipboardprint?1select a.sid, b.serial#, ername, b.osuser, b.machine, b.program,c.object_name,d.spid2 decode(a.type,3'mr', 'media recovery',4'rt','redo thread',5'un','user name',6'tx', 'transaction',7'tm', 'dml',8'ul', 'pl/sql user lock',9'dx', 'distributed xaction',10'cf', 'control file',11'is', 'instance state',12'fs', 'file set',13'ir', 'instance recovery',14'st', 'disk space transaction',15'ts', 'temp segment',16'iv', 'library cache invalida-tion',17'ls', 'log start or switch',18'rw', 'row wait',19'sq', 'sequence number',20'te', 'extend table',21'tt', 'temp table',22'unknown') locktype,23 decode(a.lmode,240, 'none',251, 'null',262, 'row-s',273, 'row-x',284, 'share',295, 's/row-x',306, 'exclusive', 'unknown') lockmode,31 from v$lock a, v$session b, all_objects c, v$process d32 where a.sid = b.sid33 and a.type in ('tm','tx')34 and c.object_id = a.id135 and b.paddr = d.addr;二) 杀掉进程--alter system kill session 'sid,serial#';--把锁给KILL掉alter system kill session '146,21177';。

查询数据库锁表的sql语句

查询数据库锁表的sql语句

查询数据库锁表的sql语句
在数据库中,锁表是一种保护数据完整性的机制。

当多个用户同时访问数据库时,锁表可以防止数据出现不一致的情况。

如果你想查询数据库中哪些表被锁定了,可以使用如下的sql语句进行查询: SELECT *
FROM sys.dm_tran_locks
WHERE resource_type = 'OBJECT'
ORDER BY request_session_id;
这条sql语句会返回所有被锁定的表的信息,包括表名、锁定类型、锁定的进程等等。

如果你只想查询某一个特定的表,可以在WHERE 条件中加入对应的表名。

例如,如果你想查询名为test的表是否被锁定了,可以使用如下的sql语句:
SELECT *
FROM sys.dm_tran_locks
WHERE resource_type = 'OBJECT' AND
resource_associated_entity_id = OBJECT_ID('test')
ORDER BY request_session_id;
这条sql语句会返回名为test的表的锁定信息,如果没有任何返回结果,则说明该表没有被锁定。

- 1 -。

Oracle死锁的查看以及解决办法

Oracle死锁的查看以及解决办法

Oracle死锁的查看以及解决办法1、查看死锁是否存在select username,lockwait,status,machine,program from v$session where sid in(select session_id from v$locked_object);Username:死锁语句所⽤的数据库⽤户;Lockwait:死锁的状态,如果有内容表⽰被死锁。

Status:状态,active表⽰被死锁Machine:死锁语句所在的机器。

Program:产⽣死锁的语句主要来⾃哪个应⽤程序2、查看死锁的语句select sql_text from v$sql where hash_value in(select sql_hash_value from v$session where sid in(select session_id from v$locked_object));3、死锁的解决办法1)查找死锁的进程:sqlplus "/as sysdba" (sys/change_on_install)SELECT ername,l.OBJECT_ID,l.SESSION_ID,s.SERIAL#,l.ORACLE_USERNAME,l.OS_USER_NAME,l.PROCESSFROM V$LOCKED_OBJECT l,V$SESSION S WHERE l.SESSION_ID=S.SID;2)kill掉这个死锁的进程: alter system kill session ‘sid,serial#’; (其中sid=l.session_id)3)如果还不能解决:select pro.spid from v$session ses,v$process pro where ses.sid=XX and ses.paddr=pro.addr; 其中sid⽤死锁的sid替换: exitps -ef|grep spid 其中spid是这个进程的进程号,kill掉这个Oracle进程----------------------------------------------------------------------------------------------------------------------------------"ORA-00054: 资源正忙, 但指定以 NOWAIT ⽅式获取资源, 或者超时失效"的快速解决⽅法今天在导⼀个临时表的数据,导出完成后准备清空数据,执⾏truncate命令时,遇到如下问题:ORA-00054: 资源正忙, 但指定以 NOWAIT ⽅式获取资源, 或者超时失效解决⽅法如下:=========================================================SQL> select session_id from v$locked_object;SESSION_ID----------56SQL> SELECT sid, serial#, username, osuser FROM v$session where sid = 56;SID SERIAL# USERNAME OSUSER---------- ---------- ------------------------------ ------------------------------56 2088 ghb fySQL> ALTER SYSTEM KILL SESSION '56,2088';System altered执⾏完上述命令后,提⽰会话断开。

oracle 数据库死锁查询语句

oracle 数据库死锁查询语句

oracle 数据库死锁查询语句
在Oracle数据库中,要查询死锁情况,可以使用以下SQL语句来识别死锁:
sql.
SELECT.
c.owner,。

c.object_name,。

c.object_type,。

b.sid,。

b.serial#,。

b.status,。

b.osuser,。

b.machine.
FROM.
v$locked_object a ,。

v$session b,。

dba_objects c.
WHERE.
b.sid = a.session_id.
AND a.object_id = c.object_id;
这个查询语句会从系统视图v$locked_object、v$session和dba_objects中获取相关信息。

v$locked_object视图包含了被锁定的对象的信息,v$session视图包含了会话的信息,dba_objects视图包含了数据库中所有对象的信息。

查询结果会列出被锁定的对象的所有者、对象名、对象类型以
及导致锁定的会话的SID、序列号、状态、操作系统用户和客户端
机器名等信息。

通过这个查询语句,可以帮助识别出发生死锁的对象和导致死
锁的会话,从而进一步分析和解决死锁问题。

当然,针对具体的死
锁情况,可能还需要结合其他信息和工具进行更深入的分析和处理。

SQL:查找被锁的表,以及锁表的SQL语句(重点推荐)

SQL:查找被锁的表,以及锁表的SQL语句(重点推荐)

SQL:查找被锁的表,以及锁表的SQL语句(重点推荐)--死锁检测use masterSelect * from sysprocesses where blocked<>0--找到SPIDexec sp_lock--根据SPID找到OBJIDselect object_name(85575343)--根据OBJID找到表名1.DatabaseName 同于你要监测的数据库名(不过这个好像不起作⽤,我的电脑上设置⽆效)2.DatabaseID 同于你要检测的数据库的dbid,可以⽤ selectdb_id(N'你要监测的库名')得到dbid3.ObjectName 同于你要监测的对象名,例如表名,视图名等4.ObjectID 同于你要监测的对象的id,可以⽤ select object_id(N'你要监测的对象名')得到id5.Error 同于错误,如果经常出现某个编号的错误,则针对此错误号6.Seccess 同于0,失败,1,成功,如果是排错,就过滤掉成功的处理select db_id(N'ChinaHNDB_2013') --得到dbidselect object_name(1813581499)//*****************以下为SQL进⾏跟踪,并得到跟踪⽇志,再结合SQL Server Profiler 分析 *******************************declare @rc intdeclare @TraceID intdeclare @FileName sysnamedeclare @maxfilesize bigintset @maxfilesize = 5SELECT @FileName = 'E:\lock2'-- 初始化跟踪exec @rc = sp_trace_create @TraceID output, 0, @FileName, @maxfilesize, NULL--此处的e:/dblog/deadlockdetect是⽂件名(可⾃⾏修改),SQL会⾃动在后⾯加上.trc的扩展名if (@rc != 0) goto error-- 设置跟踪事件declare @on bitset @on = 1--下述语句中的148指的是locks:deadlock graph事件(参见sys.trace_events),12指的是spid列(参见sys.trace_columns)exec sp_trace_setevent @TraceID, 148, 12, @onexec sp_trace_setevent @TraceID, 148, 11, @onexec sp_trace_setevent @TraceID, 148, 4, @onexec sp_trace_setevent @TraceID, 148, 14, @onexec sp_trace_setevent @TraceID, 148, 26, @onexec sp_trace_setevent @TraceID, 148, 64, @onexec sp_trace_setevent @TraceID, 148, 1, @on-- 启动跟踪exec sp_trace_setstatus @TraceID, 1-- 记录下跟踪ID,以备后⾯使⽤select TraceID = @TraceIDgoto finisherror:selectfinish:goexec sp_trace_setstatus 2, 0exec sp_trace_setstatus 2, 2select * from fn_trace_gettable('E:\lock2.trc',1)/*如果要暂停上⾯的服务器端跟踪,可运⾏下⾯的语句:exec sp_trace_setstatus 3, 0 --第⼀个参数表⽰TraceID,即步骤1中的输出参数。

ORACLE查看被锁的表、导致锁表的目标机器、及对应锁表语句

ORACLE查看被锁的表、导致锁表的目标机器、及对应锁表语句

ORACLE查看被锁的表、导致锁表的⽬标机器、及对应锁表语句可能出现锁表场景:若⼀个模块⽇常运⾏⼀切正常,突然出现故障,⽐如某平台在1秒内返回的话费查询短信忽然产⽣了延迟,很多客户发出短信后⼏⼗分钟仍然未收到。

为了模拟锁表,我开了⼏个session,分别执⾏update语句后,不做任何提交或回滚的操作。

即产⽣了锁表。

查看被锁的表是否包含程序模块对应的后台数据表。

1、--查看被锁的表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;2、--查看那个⽤户那个进程照成死锁select ername,b.sid,b.serial#,logon_time from v$locked_object a,v$session bwhere a.session_id = b.sid order by b.logon_time;3、--3.查出锁定表的sid, serial#,os_user_name, machine_name, terminal,锁的type,modeSELECT s.sid, s.serial#, ername, s.schemaname, s.osuser, s.process, s.machine,s.terminal, s.logon_time, l.typeFROM v$session s, v$lock lWHERE s.sid = l.sidAND ername IS NOT NULLORDER BY sid;4、---查看所标的sql_hash_value,SELECT object_name 被锁表 , machine 所属机器, l.ORACLE_USERNAME 表所在⽤户,s.sid, s.serial# ,s.LOCKWAIT ,s.SQL_HASH_VALUEFROM gv$locked_object l, dba_objects o, gv$session sWHERE l.object_id = o.object_idAND l.session_id = s.sid and o.Object_Name='QINTIAN_DATA_HEADER' ;5、--查看对应的锁表SQLselect * from v$sql a where a.HASH_VALUE = '3023849173'6、--杀掉进程 sid,serial#alter system kill session '685,12071'; alter system kill session '491,16923'; alter system kill session '298,34588'; alter system kill session '393,2388';。

oracle 表锁死的查询与解决方法

oracle 表锁死的查询与解决方法

0,
'None',
1,
'Null',
2,
'Row Share',
3,
'Row Excl.',
4,
'Share',
5,
'S/Row Excl.',
6,
'Exclusive',
lmode,
6,
'Exclusive',
request,
ltrim(to_char(m.request,'990'))) request,
m.id1,
m.id2
1,
'Null',
2,
'Row Share',
3,
'Row Excl.',
4,
'Share',
s.program,
s.machine,
s.client_info
FROMv$lock k, v$session s, all_objects
WHEREk.sid = s.sid
ANDk.TYPEIN('TX','TM')
ANDk.id1 = all_objects.object_id;
NULL) LOCK_LEVEL,
--kill session语句
alter system kill session'50,492';
--以下几个为相关表
SELECT * FROM v$lock;

Oracle表中一行记录被锁(行锁,表锁,死锁)

Oracle表中一行记录被锁(行锁,表锁,死锁)

Oracle表中⼀⾏记录被锁(⾏锁,表锁,死锁)表现形式:可以向表⾥⾯save新数据,但是⽆法跟新某⼀条数据,update的时候就⼀直在等待。

Oracle锁表查询和解锁⽅法数据库操作语句的分类DDL:数据库模式定义语⾔,关键字:createDML:数据操纵语⾔,关键字:Insert、delete、updateDCL:数据库控制语⾔,关键字:grant、removeDQL:数据库查询语⾔,关键字:selectoracle表在什么情况下会被锁住DML锁⼜可以分为,⾏锁、表锁、死锁⾏锁:当事务执⾏数据库插⼊、更新、删除操作时,该事务⾃动获得操作表中操作⾏的排它锁。

表级锁:当事务获得⾏锁后,此事务也将⾃动获得该⾏的表锁(共享锁),以防⽌其它事务进⾏DDL语句影响记录⾏的更新。

事务也可以在进⾏过程中获得共享锁或排它锁,只有当事务显⽰使⽤LOCK TABLE语句显⽰的定义⼀个排它锁时,事务才会获得表上的排它锁,也可使⽤LOCK TABLE显⽰的定义⼀个表级的共享锁(LOCK TABLE具体⽤法请参考相关⽂档)。

死锁:当两个事务需要⼀组有冲突的锁,⽽不能将事务继续下去的话,就出现死锁。

如事务1在表A⾏记录#3中有⼀排它锁,并等待事务2在表A中记录#4中排它锁的释放,⽽事务2在表A记录⾏#4中有⼀排它锁,并等待事务1在表A中记录#3中排它锁的释放,事务1与事务2彼此等待,因此就造成了死锁。

死锁⼀般是因拙劣的事务设计⽽产⽣。

死锁只能使⽤SQL下:alter system kill session “sid,serial#”;或者使⽤相关操作系统kill进程的命令,如UNIX下kill -9 sid,或者使⽤其它⼯具杀掉死锁进程。

DDL锁⼜可以分为:排它DDL锁、共享DDL锁、分析锁排它DDL锁:创建、修改、删除⼀个数据库对象的DDL语句获得操作对象的排它锁。

如使⽤alter table语句时,为了维护数据的完成性、⼀致性、合法性,该事务获得⼀排它DDL锁。

oracle锁表

oracle锁表

oracle锁表⼀、锁表的处理Oracle锁表⽐较简单,查询锁表的session杀掉就可以了。

1、以下⼏个为相关表SELECT*FROM V$LOCK;SELECT*FROM V$SQLAREA;SELECT*FROM V$SESSION;SELECT*FROM V$PROCESS;SELECT*FROM V$LOCKED_OBJECT;SELECT*FROM ALL_OBJECTS;SELECT*FROM V$SESSION_WAIT;2、查看被锁的表SELECT B.OWNER, B.OBJECT_NAME, A.SESSION_ID, A.LOCKED_MODEFROM V$LOCKED_OBJECT A, DBA_OBJECTS BWHERE B.OBJECT_ID= A.OBJECT_ID;3、查看那个⽤户那个进程造成死锁SELECT ERNAME, B.SID, B.SERIAL#, LOGON_TIMEFROM V$LOCKED_OBJECT A, V$SESSION BWHERE A.SESSION_ID = B.SIDORDER BY B.LOGON_TIME;4、查看连接的进程SELECT SID, SERIAL#, USERNAME, OSUSER FROM V$SESSION;5、查出锁定表的sid, serial#,os_user_name, machine_name, terminal,锁的type,modeSELECT S.SID,S.SERIAL#,ERNAME,S.SCHEMANAME,S.OSUSER,S.PROCESS,S.MACHINE,S.TERMINAL,S.LOGON_TIME,L.TYPEFROM V$SESSION S, V$LOCK LWHERE S.SID = L.SIDAND ERNAME IS NOT NULLORDER BY SID;6、这个语句将查找到数据库中所有的DML语句产⽣的锁,还可以发现,任何DML语句其实产⽣了两个锁,⼀个是表锁,⼀个是⾏锁。

oracle数据库查询

oracle数据库查询

1.查询约束条件-----SELECTowner,constraint_name,constraint_type,table_name,status,deferrable,validated FR OM user_constraints ORDER BY table_name;2.锁表查询----1、查看是否有锁表的sql复制代码代码如下:select 'blocker('||lb.sid||':'||ername||')-sql:'|| qb.sql_text blockers,'waiter ('||lw.sid||':'||ername||')-sql:'|| qw.sql_text waitersfrom v$lock lb,v$lock lw,v$session sb,v$session sw,v$sql qb,v$sql qwwhere lb.sid=sb.sidand lw.sid=sw.sidand sb.prev_sql_addr=qb.addressand sw.sql_address=qw.addressand lb.id1=lw.id1and sw.lockwait is not nulland sb.lockwait is nulland lb.block=1 ;2、查看被锁的表复制代码代码如下:selectp.spid,a.serial#,c.object_name,b.session_id,b.oracle_username,b.os_user_name from v$process p,v$session a, v$locked_object b,all_objects cwhere p.addr=a.paddr and a.process=b.process and c.object_id=b.object_id ; 3、查看那个用户那个进程造成死锁,锁的级别复制代码代码如下:select b.owner,b.object_name,l.session_id,l.locked_mode fromv$locked_object l, dba_objects4、查看连接的进程复制代码代码如下:SELECT sid, serial#, username, osuser FROMv$session;5、查看是哪个session引起的复制代码代码如下:select ername,b.sid,b.serial#,logon_timefrom v$locked_object a,v$session bwhere a.session_id = b.sid order by b.logon_time;6、杀掉进程复制代码代码如下:alter system kill session 'sid,serial#';sid是第5步查询出的sid和serid3.最大连接数查询-----查看当前的连接数,可以用select count(*) from v$process;设置的最大连接数(默认值为150)select value from v$parameter where name = ‘processes’;修改最大连接数alter system set processes = 300 scope = spfile;oracle最大连接数修改Oracle最大连接数的方法a、以sysdba身份登陆PL/SQL 或者 Worksheetb、查询目前连接数show parameter processes;c、更改系统连接数alter system set processes=3000 scope=spfile;d、创建pfilecreate pfile from spfile;e、重启Oracle服务或重启Oracle服务器查询Oracle游标使用情况的方法select * from v$open_cursor where user_name = 'TRAFFIC';查询Oracle会话的方法select * from v$session一、修改oracle参数1、原有参数#pga_aggregate_target=67108864#processes=500#sessions=555# pga_aggregate_target此参数是扩大并发连接数占用内存大小。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

我们在操作数据库的时候,有时候会由于操作不当引起数据库表被锁定,这么我们经常不知所措,不知怎么给这些表解锁,在pl/sql Developer工具的的菜单“tools”里面的“sessions”可以查询现在存在的会话,但是我们很难找到那个会话被锁定了,想找到所以被锁的会话就
更难了,下面这叫查询语句可以查询出所以被锁的会话。

如下:
SELECT ername, m.SID,sn.SERIAL#, m.TYPE,
DECODE (m.lmode,
0, 'None',
1, 'Null',
2, 'Row Share',
3, 'Row Excl.',
4, 'Share',
5, 'S/Row Excl.',
6, 'Exclusive',
lmode, LTRIM (TO_CHAR (lmode, '990'))
) lmode,
DECODE (m.request,
0, 'None',
1, 'Null',
2, 'Row Share',
3, 'Row Excl.',
4, 'Share',
5, 'S/Row Excl.',
6, 'Exclusive',
request, LTRIM (TO_CHAR (m.request, '990'))
) request,
m.id1, m.id2
FROM v$session sn, v$lock m
WHERE (sn.SID = m.SID AND m.request != 0)
OR ( sn.SID = m.SID
AND m.request = 0
AND lmode != 4
AND (id1, id2) IN (
SELECT s.id1, s.id2
FROM v$lock s
WHERE request != 0 AND s.id1 = m.id1
AND s.id2 = m.id2)
)ORDER BY id1, id2, m.request;
通过以上查询知道了sid和SERIAL#就可以开杀了
alter system kill session 'sid,SERIAL#';。

相关文档
最新文档