189 8069 5689

oracle怎么查包被锁,怎么查看oracle表是否被锁

oracle_capacity锁怎么查?

1.以下代码可以查看是否被锁表:

创新互联是一家专业从事网站制作、做网站的网络公司。作为专业网站设计公司,创新互联依托的技术实力、以及多年的网站运营经验,为您提供专业的成都网站建设、全网营销推广及网站设计开发服务!

2selecta.object_name,b.session_id,c.serial#,c.program,c.username,c.command,c.machine,c.lockwait

3fromall_objectsa,v$locked_objectb,v$sessioncwherea.object_id=b.object_idandc.sid=b.session_id;

4

2.查询锁表原因:

5selectl.session_idsid,

6s.serial#,

7l.locked_mode,

8l.oracle_username,

9s.user#,

10l.os_user_name,

11s.machine,

12s.terminal,

13a.sql_text,

14a.action

153.接上:

16fromv$sqlareaa,v$sessions,v$locked_objectl

17wherel.session_id=s.sid

18ands.prev_sql_addr=a.address

19orderbysid,s.serial#;

204.解锁方法:altersystemkillsession’146′;–146为锁住的进程号,即spid。

215.查看被锁的表:selectp.spid,c.object_name,b.session_id,b.oracle_username,b.os_user_namefromv$processp,v$sessiona,v$locked_objectb,all_objectscwherep.addr=a.paddranda.process=b.processandc.object_id=b.object_id

226.以上就是oracle查看锁表的方法,以及一些相关信息,看过之后如果觉得有帮助可以在下面给点个赞~

oracle数据库表被锁了怎么解锁

1、在做Oracle监听程序测试时,发现帐户已经被锁定。

2、在数据库安装电脑上,点击开始打开运行窗口。

3、在运行窗口输入CMD,调出命令提示符界面。

3、在命令提示符下面,用管理员身份登入到数据库sqlplus / as sysdba。

4、输入解锁命令alter user Scott account unlock后回车。

5、看见用户已更改的字样,表示命令已成功执行。

6、再切换到监听程序验证,原来的ora-28000帐户被锁定的提示已经不存在了。用户解锁成功。

如何检测被锁住的Oracle存储过程及处理办法

1.查看是哪一个存储过程被锁住

查V$DB_OBJECT_CACHE视图

select * from V$DB_OBJECT_CACHE where owner='过程的所属用户' AND LOCKS!='0'

2.查看是哪一个sid,通过sid可以知道是哪一个session

查v$access视图

select * from v$access where owner='过程的所属用户' and name='刚才查到的过程名'

3.查出sid和serial#

查v$session视图

select sid,serial#,paddr from v$session where sid='刚才查到的sid';

查v$process视图

select spid from v$process where addr='刚才查到的paddr';

4.杀进程


文章名称:oracle怎么查包被锁,怎么查看oracle表是否被锁
文章来源:http://jkwzsj.com/article/hsgpds.html

其他资讯