暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBase8s数据库的Long Transaction 发生的次数及相应的事务

张维群 2021-03-01
1718

检查点 Long Transaction 发生的次数及相应的事务
方法 online.log
监控当前长事务:onstat
运行情况 A. 查看 online.log 日志,可以找到发生 long transaction 的次数 grep Long Transaction
online.log
B. 监控当前长事务
一、长事务状态
正常情况下是
onstat -
GBase Database Server Version 9.40.FC7 – On-Line – Up 35 days 16:51:16 –
3920896 Kbytes
长事务情况下是
onstat -
GBase Database Server Version 9.40.FC7 – On-Line (LONGTX) – Up 35 days
16:41:40 – 3920896 Kbytes
Blocked:LONGTX
二、显示事务(transaction)信息
其中 flag 字段中第三个标志位为 R 说明事务在 rollback,说明这个事务是长事务
onstat -x
GBase Database Server Version 9.40.FC7 – On-Line (LONGTX) – Up 35 days
16:41:56 – 3920896 Kbytes
Blocked:LONGTX
Transactions
1cf0a6748 A-R-- 1cd55c618 642073 119403 119405 0x1aa91e4 DIRTY 0
三、通过长事务的 userthread 值找出 session id
onstat -u |grep 1cd55c618
1cd55c618 --RPX-- 1880841 gbasedbt - 0 0 642073 256446 323049
四、显示会话连接信息,找出造成长事务的 SQL 语句,并优化
onstat -g ses 1880841
健康状况评估 长事务出现后,数据库将停止所有的 DML 事务的将被阻塞,等待长
事务的回滚,这将大大降低数据库的性能,严重情况导致宕机。
避免长事务的办法:
A.设置较大的逻辑日志,增加单个逻辑日志文件大小,增加逻辑日
志文件个数。
B.找出大事务,运行时间长的事务,修改应用,尽量多次提交事务。
C.LTXHWM:设定单个事务能够使用的逻辑日志文件数,占总数目
的百分比。一旦达到这个比例,系统就开始回退事务。
D.LTXEHWM:设定单个事务能够使用的逻辑日志文件数,占总数
目的百分比。一旦达到这个比例,该事务就独享剩余的逻辑日志文件
空间,其它事务被挂起。
E.DYNAMIC_LOGS:设定是否允许系统自动增加逻辑日志文件。
这些逻辑日志文件在事务完成后被系统删除。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论