数据库锁等待排查方法、命令行安装数据库及授权文件更新
欢迎关注“数据库运维之道”公众号,一起学习数据库技术! 本期将为大家分享“数据库锁等待排查方
法、命令行安装数据库及授权文件更新”的运维技能。
关键词:锁等待、V$LOCK、V$TRXWAIT、死锁、锁超时、命令行部署达梦、授权文件更新
当用户反馈执行SQL语句时卡死或是应用运行缓慢时,首先会想到,在数据库中有没有阻塞的发
生,然后找到它,记录它,杀掉它。让应用恢复正常,再来分析SQL的合理性并去优化它。
达梦数据库通过多版本并发控制MVCC和锁机制实现事务的并发控制和保持数据的一致性及正确
性。在实际工作中,可能出现多个事务同时访问、修改相同数据的情况,当一个事务正在占用某个资
源的锁,此时另一个事务正在请求这个资源上与第一个锁相冲突的锁类型时,就会发生阻塞。相信每
位DBA都会遇到类似的事件,因此如何使用动态性能视图查看锁等待以及解决锁阻塞的问题是一项必
备技能。
场景描述:模拟更新表记录出现锁等待,一步步定位到阻塞源头,并清理会话信息。
实验步骤:
1、新建lock_ywzd测试表,其中ID字段为主键,表结构参考如下:
1、登录数据库1
./disql SYSDBA/SYSDBA@localhost:5237 2
服务器[localhost:5237]:处于普通打开状态 3
登录使用时间 : 5.803(ms) 4
disql V85
2、创建用户6
create user ywzd identified by ywzdXX_1_2; 7
grant dba to ywzd; 8
create tablespace ywzd datafile '/dmdata/data/DMTEST/ywzd.DBF' size 128 autoextend on 9
maxsize 32768 CACHE = NORMAL; 10
alter user ywzd default tablespace ywzd; 11
3、登录数据库12
./disql ywzd/'"ywzdXX_1_2"'@localhost:5237 13
服务器[localhost:5237]:处于普通打开状态 14
登录使用时间 : 5.803(ms) 15
disql V8 16
文档被以下合辑收录
评论