本文内容来自YashanDB官网,原文内容请见 https://doc.yashandb.com/yashandb/23.3/zh/%E6%95%B0%E6%8D%AE%...

告警日志不设开关控制,恒为打开状态,即一直保持记录文件。记录文件大小没有设置上限,当alert.log文件过大时需要手动清理告警日志。

本文将介绍YashanDB中常见的告警示例。

表空间满


space full:当表空间已满且申请不到页面时,记录告警日志。

当某个表空间已全部使用完时,告警日志将产生报错信息。

示例



2022-06-20 00:20:46.514|22|SpaceFull|53|0||tablespace TBS_TPCC is full
2022-06-20 00:20:46.520|24|SpaceFull|53|0||tablespace TBS_TPCC is full

连接数满


session exhausted:当连接数满时,上报连接数满告警。当可用连接数达到30%及以上,消除告警。

当前会话连接数超过MAX\_SESSIONS参数设置的最大值时,运行日志将产生报错信息。

示例

2022-06-19 22:45:46.542 5367 [ERROR] alloc session failed, error code:6013, error message: too many sql handlers
2022-06-19 22:45:46.554 5367 [ERROR] alloc session failed, error code:6013, error message: too many sql handlers
2022-06-19 22:45:46.554 5367 [ERROR] alloc session failed, error code:6013, error message: too many sql handlers
2022-06-19 22:45:46.554 5367 [ERROR] alloc session failed, error code:6013, error message: too many sql handlers
2022-06-19 22:45:46.554 5367 [ERROR] alloc session failed, error code:6013, error message: too many sql handlers
2022-06-19 22:45:46.554 5367 [ERROR] alloc session failed, error code:6013, error message: too many sql handlers

此时客户端无法连接数据库,并提示:

YAS-00406 connection is closed
YASQL-00007 invalid username/password; logon denied

主备连接断开


standby disconnect:当主库发现备库断连,记录告警日志。当主库发现备库重新连接上,记录消除告警的日志。

主库与备库断连时,alert.log打印情况如下:



2021-10-29 19:41:05.841|18|StandbyDisconnect|1|0||redo sender failed to connect with standby 

主库与备库断连修复时,alert.log打印情况如下:



2021-10-29 19:41:23.877|18|StandbyDisconnect|1|1|

发生死锁


dead lock:当用户操作不当导致出现数据库出现死锁情况,存储引擎能够检测出死锁问题,通过中止构成死锁环中的某个会话的等待,从而解除死锁状态。

当以下3种死锁发生时候,数据库会选择死锁环中的一个session返回error,生成对应的死锁trace log,并记录告警日志,告警日志中指示trace log文件路径:

  • 事务死锁:事务修改相同的数据产生并发等待,可能导致死锁。
  • Xslot死锁:页面内事务槽位(Xslot)资源不足时,会产生事务等待,可能导致死锁。
  • 表锁死锁:事务之间对表加共享锁与排他锁时,会产生事务等待,可能导致死锁。

例如,当发生事务相互更新导致死锁时,alert.log打印情况为:



2022-06-23 18:44:17.191|19|DeadLock|21|0|lockType=2|found xact dead lock,more info in xxx.trc(xxx.trc为具体的死锁trace log路径)

YashanDB
1 声望0 粉丝

崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的...