发现是一个很简单的select句子死锁。
SELECT category_id, category_name FROM mail_address_category ;
就是查询一个id,一个name,简单的表一个。领导让我看看是怎么回事引起的死锁,我看了好几遍程序,感觉没有什么地方可以优化的了。数据只有500多行。多人并发查询。到底能是什么原因引起的?请高手帮帮忙。在线等!!!
SELECT category_id, category_name FROM mail_address_category ;
就是查询一个id,一个name,简单的表一个。领导让我看看是怎么回事引起的死锁,我看了好几遍程序,感觉没有什么地方可以优化的了。数据只有500多行。多人并发查询。到底能是什么原因引起的?请高手帮帮忙。在线等!!!
解决方案 »
- oracle在给表空间添加数据文件时报错
- 要买正版Oracal数据库,有一些疑虑.
- 始终不明白临时表空间TEMP是用来做什么的,有什么用处
- SQL *plus连接报这个错误,有什么方法可以解决呀????(在线等啊)
- 一条sql语句
- 如何根据年令计算出生日期?
- 如何用sql语句从服务器上取系统时间?
- 请教关于Developer/2000的问题,有大侠一定帮忙!
- 快来帮帮菜鸟呀!
- 新手提问:一个有关在pb中使用oracle的问题,望各位高手赐教
- 我想学oracle但是我只看过数据库基础这本书,帮我介绍一本适合初学者的书好嘛???
- Oracle的Enterprise Manager Console 连不上
from v$session a ,v$sqltext b ,v$access c
where c.object=upper('&1')
and c.type in ('TABLE','PACKAGE','PROCEDURE','FUNCTION','PACKAGE BODY')
and a.sid=c.sid
and b.address = a.sql_address
and b.hash_value = a.sql_hash_value
order by a.sid,a.serial#,b.piece;按照提示输入表的名字,看看是什么sql锁的表。
其次死锁的话好像alert_SID.log文件里有记录的吧
lz可通过tgm78(shop34161266.taobao.com)给出的脚本查一下是否真的出现锁表了
from v$session a ,v$sqltext b ,v$access c
where c.object=upper('&1')
and c.type in ('TABLE','PACKAGE','PROCEDURE','FUNCTION','PACKAGE BODY')
and a.sid=c.sid
and b.address = a.sql_address
and b.hash_value = a.sql_hash_value
order by a.sid,a.serial#,b.piece;请问这样回出现什么样的情况呢,怎么样才是死锁呢,那里可以表现出呢
这么强大的并发.可能是lath
在事发时查查v$session_wait
看到底是在等待啥.