[{"createTime":1735734952000,"id":1,"img":"hwy_ms_500_252.jpeg","link":"https://activity.huaweicloud.com/cps.html?fromacct=261f35b6-af54-4511-a2ca-910fa15905d1&utm_source=V1g3MDY4NTY=&utm_medium=cps&utm_campaign=201905","name":"华为云秒杀","status":9,"txt":"华为云38元秒杀","type":1,"updateTime":1735747411000,"userId":3},{"createTime":1736173885000,"id":2,"img":"txy_480_300.png","link":"https://cloud.tencent.com/act/cps/redirect?redirect=1077&cps_key=edb15096bfff75effaaa8c8bb66138bd&from=console","name":"腾讯云秒杀","status":9,"txt":"腾讯云限量秒杀","type":1,"updateTime":1736173885000,"userId":3},{"createTime":1736177492000,"id":3,"img":"aly_251_140.png","link":"https://www.aliyun.com/minisite/goods?userCode=pwp8kmv3","memo":"","name":"阿里云","status":9,"txt":"阿里云2折起","type":1,"updateTime":1736177492000,"userId":3},{"createTime":1735660800000,"id":4,"img":"vultr_560_300.png","link":"https://www.vultr.com/?ref=9603742-8H","name":"Vultr","status":9,"txt":"Vultr送$100","type":1,"updateTime":1735660800000,"userId":3},{"createTime":1735660800000,"id":5,"img":"jdy_663_320.jpg","link":"https://3.cn/2ay1-e5t","name":"京东云","status":9,"txt":"京东云特惠专区","type":1,"updateTime":1735660800000,"userId":3},{"createTime":1735660800000,"id":6,"img":"new_ads.png","link":"https://www.iodraw.com/ads","name":"发布广告","status":9,"txt":"发布广告","type":1,"updateTime":1735660800000,"userId":3},{"createTime":1735660800000,"id":7,"img":"yun_910_50.png","link":"https://activity.huaweicloud.com/discount_area_v5/index.html?fromacct=261f35b6-af54-4511-a2ca-910fa15905d1&utm_source=aXhpYW95YW5nOA===&utm_medium=cps&utm_campaign=201905","name":"底部","status":9,"txt":"高性能云服务器2折起","type":2,"updateTime":1735660800000,"userId":3}]
达梦数据库表被锁住后解锁方法:
第一步:首先查看当前数据库中锁的状态
执行sql:SELECT * FROM v$lock
此时可以看到 事务2399被阻塞了,阻塞他的事务是2393,同样我们也可以通过 V T R X W A I T 视 图 查 看 谁 阻 塞 谁 。 执 行
s q l : S E L E C T ∗ F R O M V TRXWAIT 视图查看谁阻塞谁。 执行sql:SELECT * FROM VTRXWAIT视图
查看谁阻塞谁。执行sql:SELECT∗FROMVTRXWAIT;
得出同样的结果,ID 为 2399 的事务正在等待 ID 为 2393 的事务,等待时间是1071599 毫秒。
接下来,通过 V S E S S I O N S 视 图 查 找 两 个 事 务 对 应 的 会 话 。 执 行 s q l : S E L E C T
s e s s i d , s q l t e x t , s t a t e , t r x i d F R O M V SESSIONS
视图查找两个事务对应的会话。 执行sql:SELECT sess_id,sql_text,state,trx_id FROM VSESSIONS视图查找两个事务
对应的会话。执行sql:SELECTsessid,sqltext,state,trxidFROMVSESSIONS;
第二步:解决方法
根据需求有两种解决办法:
第一种:提交或回滚产生阻塞的事务,此时,我们只需要在该会话下提交或回滚事务,锁自然会被释放,阻塞解决。
第二种:关闭产生阻塞的会话
同样,我们也可以使用系统过程 SP_CLOSE_SESSION(SESS_ID)来关闭对应的会话,具体使用方法如下。
执行sql:SP_CLOSE_SESSION(SESS_ID)
此时,被阻塞的锁已经被释放,相对应被锁的表已经被解锁可以正常使用,表就可以正常操作了。