达梦创建索引时,提示锁超时问题处理

有用户反馈,当创建索引时,一直提示锁超时

 

根据v$lock 、v$trxwait没有查到等待及锁

select * from v$sessions s,v$lock l where s.trx_id=l.tid and l.blocked=1;

SELECT * FROM V$TRXWAIT;  --ID为被阻塞对象,WAIT_FOR_ID为阻塞对

查询当前会话

SELECT SF_GET_PARA_STRING_VALUE(1,'INSTANCE_NAME') AS 实例名,STATE AS 状态,CLNT_IP AS 连接IP,COUNT(*)AS 数量 FROM V$SESSIONS GROUP BY STATE,CLNT_IP ORDER BY STATE;

 由于只有一个活动会话,可以将全部会话杀掉之后,创建索引成功

--杀掉会话语句

begin
for rec in
(select * from v$sessions where sess_id <> sessid())
loop
sp_close_session(rec.sess_id);
end loop;
end;

如果活动会话数多,不能随意杀掉会话,可以在创建索引的时候加online, 如下是网上关于online的说明

 

 

 

posted @ 2023-02-28 14:55  fangzpa  阅读(1314)  评论(0编辑  收藏  举报