首页 > 数据库 > 国内数据库 > 南大通用GBase8s数据库锁监控及调整
南大通用GBase8s 数据库锁监控及调整
通过监控数据库实例的锁使用情况,活跃锁的个数、死锁等信息,调整锁个数和锁粒度。
1) onstat -k 监控当前活跃锁的个数,参照此设置LOCKS 、DEF_TABLE_LOCKMODE 参数,避免锁粒度太大、锁个数太多,浪费内存资源,从而影响性能。
2) onstat -u |grep L- 监控等待锁的用户信息
3) onstat -L 监控可用锁的个数
4) onstat -g spi 自旋锁 (spin lock) 的发生作为获取资源的控制机制的一部分;当一个线程需要访问共享内存资源,它必须首先获取对资源的闩 (latch) ;如果闩 (latch) 目前由另一个线程持有,当前线程将自旋等待闩 (latch) 被释放
|
命令 |
输出字段 |
描述 |
|
onstat -k |
Active |
当前活跃锁的个数 |
|
Total |
Onconfig 中 LOCKS 参数值的个数 |
图 4-18 通过 onstat -k 监控锁信息
|
命令 |
输出字段 |
描述 |
|
onstat –u |
Flags |
第一列代表状态 L 表示等待 LOCK |
图 4-19 通过 onstat -u 监控用户锁信息
|
命令 |
输出字段 |
描述 |
|
onstat -L |
available locks |
可用锁的个数 |
图 4-20 通过 onstat -L 监控锁信息
|
命令 |
输出字段 |
描述 |
|
onstat -g spi |
Num Waits |
线程等待这个锁的总次数 |
|
Num Loops |
线程在成功获得 spin lock 前自旋的次数 | |
|
Avg Loop |
Num Loops/Num Waits , 通过调整 SPINLOCK_BREAKCOUNT 环境变量,来减小此值 |
图 4-21 通过 onstat -g spi 监控自旋锁信息
官网:
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69980677/viewspace-2733426/ ,如需转载,请注明出处,否则将追究法律责任。