达梦数据库sql日志说明

news2024/9/21 22:02:37

        SQL日志用于记录用户执行的SQL语句、参数信息、错误信息等。用户可以通过设置INI参数SVR_LOG来开启SQL日志功能,并且可以在sqllog.ini文件中进行SQL日志的详细配置,例如指定SQL日志中需要被记录的语句类型、SQL日志文件切换模式以及SQL日志占用空间等,详细介绍请参考《DM8系统管理员手册》。

        为了帮助用户更好分析SQL日志,本文档将针对事务相关SQL日志中各字段含义进行详细说明。

1.事务启动、提交、回滚日志

  • 事务启动

        事务启动时生成一条SQL日志,如下所示:

2023-12-13 11:25:46.537 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) TRX: START
  • 事务提交

        事务提交时生成一条SQL日志,如下所示:

2023-12-13 11:27:45.003 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) TRX: COMMIT

        事务提交时的SQL日志也可能包含LSN信息,如下所示:

2023-12-13 11:27:45.003 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) TRX: COMMIT LSN[12592783]

        LSN[12592783]表示事务提交的回滚记录的lsn。

  • 事务回滚

        事务回滚时生成一条SQL日志,如下所示:        

2023-12-13 11:30:26.537 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) TRX: ROLLBACK

2.事务封锁等待日志

        当事务因封锁冲突而产生封锁等待时,生成相应的SQL日志。

        生成SQL日志的时机:事务由wait状态变更为其它状态时记录。

        当前存在两种版本的锁等待SQL日志,如果可以准确获取当前事务所等待的其他事务信息,则生成精确版SQL日志。然而在部分场景下无法准确获取当前事务所等待的其他事务信息,典型的如DMDSC场景,有时本地事务仅知道自身对于某个锁发生了锁等待,但是无法获取具体的冲突信息,因此只能打印粗略版SQL日志。

        精确版SQL日志如下所示:

2023-12-13 11:25:46.537 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) trx[480521] LOCK_TID (mode:X, table id:1143) wait for 3 trxs, trx[480511, 480512, 480513] used time:23896(ms)

        以上述SQL日志为例,各字段含义如下:

  • trx[480521]

        表示当前事务ID。

  • LOCK_TID

        表示当前锁类型为事务锁。如果为对象锁,则此处将是LOCK_OBJ。

  • mode:X 

        X表示当前封锁模式为排他锁,除此之外还可以为S共享锁、IS意向共享锁、IX意向排他锁

  • table id:1143

        表示当前对象ID。

  • wait for 3 trxs

        表示当前事务所等待的事务个数为3。

  • trx[480511, 480512, 480513]

        表示当前事务等待的3个事务的ID分别为480511、480512、480513。

  • used time:23896(ms)

        表示本次锁等待的总时间。

        粗略版SQL日志如下所示:

2023-12-13 11:25:46.537 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) trx[480521] LOCK_TID (mode:X, table id:1143, tid[480511]) wait used time:23896(ms)

        以上述SQL日志为例,各字段含义如下:

  • tid[480511]

        表示当前事务等待的事务ID为480511。由于该SQL日志为粗略版SQL日志,因此当前事务可能不止等待这一个事务,但是当前节点无法获取更多的等待事务信息,用户可以通过追溯ID为480511的事务来手动分析获取更多信息。

        对于其他字段,含义同精确版SQL日志。

        对于以上粗略版SQL日志,由于是LOCK_TID类型,至少会打印一个等待事务ID,根据该事务ID可以进一步追溯其他等待事务信息。但如果是LOCK_OBJ类型的粗略版SQL日志,则可能不会打印等待事务ID,此时需要根据当前对象名,检查附近日志中是否有对该对象的操作,以此来进一步分析事务封锁冲突,该方法不保证能成功检索到冲突操作。比如对触发器对象的封锁冲突,因为SQL日志中不会打印触发器名因此无法检索。

3.回滚页相关日志

        当申请、清理回滚页时,生成相应的SQL日志。

  1、alloc pseg page日志

        表示预申请回滚页空间。

        生成时机:预申请回滚页空间。

2024-03-15 14:14:20.362 (EP[0] sess:0x7f9740010bd8 thrd:8139 user:SYSDBA trxid:32072 stmt:NULL appname:disql) trx[32072] alloc pseg page[0, 28557], page_lsn[10612892], n_pages[13843]

        以上述SQL日志为例,各字段含义如下:

  • trx[32076]

        表示当前事务ID。

  • alloc pseg page[0, 28557]

        两个数值依次表示回滚页的文件id,回滚页的页ID。

  • page_lsn[10612892]

        回滚页的LSN。

  • n_pages[13843]

        事务实际使用的回滚页个数。

  2、purg2_page

        表示PURGE一个回滚页。

        生成时机:purge一个回滚页。

2023-12-13 11:25:46.537 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) trx[32076]: purg2_page free pseg page (0, 14169), page_lsn = 14169

        以上述SQL日志为例,各字段含义如下:

  • trx[32076]

        表示当前事务ID。

  • pseg_page_free_for_insert_only_trx

        接口名,purge一个回滚页。

  • free pseg page (0, 14169)

        两个数值依次表示回滚页的文件id,回滚页的页ID。

  • page_lsn = 14169

        回滚页的页id。

  3、pseg_reset_last_page

        清理事务槽,重置最后一个回滚页信息。

        生成时机:对事务执行回滚操作。

2023-12-13 11:25:46.537 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) trx[32076]: pseg_reset_last_page free pseg page (0, 14169)

        以上述SQL日志为例,各字段含义如下:

  • trx[32076]

        表示当前事务ID。

  • pseg_reset_last_page

        接口名,清理事务槽,重置最后一个回滚页信息。

  • free pseg page (0, 14169)

        两个数值依次表示回滚页的文件id,回滚页的页ID。

  4、pseg_rollback

        对事务执行回滚操作。

        生成时机:对事务执行回滚操作。

2023-12-13 11:25:46.537 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) trx[32076]: pseg_rollback free pseg page (0, 14169) page_lsn[12592786]

        以上述SQL日志为例,各字段含义如下:

  • trx[32076]

        表示当前事务ID。

  • pseg_rollback

        接口名,表示对事务执行回滚操作。

  • free pseg page (0, 14169)

        两个数值依次表示回滚页的文件id,回滚页的页ID。

  • page_lsn[12592786]

        回滚页的lsn。

  5、pseg_page_free_for_insert_only_trx

        表示纯INSERT事务提交时,进行释放回滚页操作。

        生成时机:事务提交的第2阶段

2023-12-13 11:25:46.537 (EP[0] sess:0x7f23a823c1e8 thrd:31811 user:SYSDBA trxid:480521 stmt:NULL appname:manager.exe) trx[32076]: pseg_page_free_for_insert_only_trx free pseg page (0, 14169), page_lsn = 12592786

        以上述SQL日志为例,各字段含义如下:

  • trx[32076]

        表示当前事务ID。

  • pseg_page_free_for_insert_only_trx

        接口名,纯insert事务提交时,进行释放回滚页操作。

  • free pseg page (0, 14169)

        两个数值依次表示回滚页的文件id,回滚页的页ID。

  • page_lsn = 12592786

        回滚页的lsn。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2153418.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

卸载node,安装nvm的详细使用方法

一、nvm是什么? nvm是一个node的版本管理工具,可以简单切换的node版本、安装、查看。。。等等,与npm不同的是,npm是依赖包的管理工具。 二、nvm下载安装 安装之前需要先把 自己电脑上边的node给卸载了,不然安装不好…

【数据结构初阶】链式二叉树接口实现超详解

文章目录 1. 节点定义2. 前中后序遍历2. 1 遍历规则2. 2 遍历实现2. 3 结点个数2. 3. 1 二叉树节点个数2. 3. 2 二叉树叶子节点个数2. 3. 3 二叉树第k层节点个数 2. 4 二叉树查找值为x的节点2. 5 二叉树层序遍历2. 6 判断二叉树是否是完全二叉树 3. 二叉树性质 1. 节点定义 用…

日志系统第三弹:日志消息和格式化模块的实现

日志系统第三弹:日志消息和格式化模块的实现 一、日志消息模块的实现二、日志格式化模块的设计1.格式化占位符的约定2.如何打印1.各种零件类1.抽象类2.简单的零件类3.日期零件类4.非格式化数据零件类 2.Formatter 3.如何解析 三、日志格式化模块的实现1.解析函数2.c…

一文详解Unity下RTMP推送|轻量级RTSP服务|RTSP|RTMP播放模块说明

技术背景 好多开发者,对Unity下的模块,不甚了解,实际上,除了Windows/Linux/Android/iOS Native SDK,大牛直播SDK发布了Unity环境下的RTMP推流|轻量级RTSP服务(Windows平台Linux平台Android平台&#xff09…

Windows安装Oracle11gR2(图文教程)

本章教程,记录在Windows10上安装Oracle11gR2过程。 一、下载安装包 通过网盘分享的文件:oracle11g 链接: https://pan.baidu.com/s/15ilciQ5NlKWtClklmdAH_w?pwds4dd 提取码: s4dd 二、下载并解压文件 将网盘中的安装包文件下载到本地,在此之…

谷歌收录查询工具,好用的谷歌收录查询工具应具备的这5个特性

在探讨如何高效利用谷歌收录查询工具以优化网站可见性和搜索引擎排名时,好用这一标准往往涵盖了工具的准确性、易用性、功能全面性以及对搜索引擎算法变化的适应性等多个方面。 1.准确性 首先,一款好用的谷歌收录查询工具必须能够提供高度准确的数…

C Prime Plus 第6章习题

你该逆袭了 红色标注的是:错误的答案 蓝色标注的是:正确的答案 绿色标注的是:做题时有疑问的地方 橙色标注的是:答案中需要着重注意的地方 练习题 一、复习题1、2、3、4、5、我的答案:错误正确答案: 6、7、…

窥探 引用拷贝、浅拷贝、深拷贝 的那些事 (clone版)

谁家玉笛暗飞声 散入春风满洛城 往期回顾✨内部类 目录✨ 引用拷贝 介绍 总结 浅拷贝 介绍 浅拷贝的步骤 深拷贝 介绍 引用拷贝 介绍 引用拷贝就是我们常用的 “赋值” ,只是复制了原对象的引用,即两个对象指向同一块内存堆地址。修改其中的一个对象会影…

【图灵完备 Turing Complete】游戏经验攻略分享 Part.6 处理器架构2 函数

新的架构来了,本游戏的最后一个攻略分享,最后汇编部分无非是对于操作码的熟练,硬件没有问题,那么也就无关痛痒了。 汇编实现,两数相或和两数相与非一起相与即可。 八位异或器,整就完事了。 有手就行。 利…

【梯度下降算法学习笔记】

梯度下降单参数求解 经过之前的学习我们来引入梯度下降的理念 α \alpha α为学习率 w 1 w 初 − α ∂ J ( w ) ∂ w w_1w_初-\alpha\frac{\partial J(w)}{\partial w} w1​w初​−α∂w∂J(w)​ w 2 w 1 − α ∂ J ( w 1 ) ∂ w 1 w_2w_1-\alpha\frac{\partial J(w_1)}…

国庆电影扎堆来袭,AI智能体帮你推荐必看佳片!(附制作教程)

大家好,我是凡人。 今天看到新闻,发现国庆有10部影片要扎堆儿上映,对于选择困难症的我属实有点难选,同时也想避开一些坑省的浪费金钱和时间。 本着不知道就问AI的习惯,想问问大模型怎么看,但做了简单的交…

MySQL 优化器:理解与探秘

在 MySQL 数据库的世界里,优化器扮演着至关重要的角色。它就像是一位幕后的魔法师,默默地为数据库的高效运行贡献着力量。那么,MySQL 优化器究竟是什么?它又是如何工作的呢?让我们一起来揭开它的神秘面纱。 一、MySQL…

行业人工智能研究-Python自监督方式学习图像表示算法

学术界人工智能研究落后于工业界 摘要 行业或工业界在人工智能研究上超出学术界,并占据着大量的计算力,数据集和人才诱人的薪水和明朗的预期吸引大量人才离开学术界,涌入行业或工业界即使,比如Meta开源其人工智能模型&#xff0…

二分查找算法(1) _二分查找_模板

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 二分查找算法(1) _二分查找模板 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记,欢迎大家在评论区交流讨论💌 1. 二…

掌握Android开发新趋势:Jetpack与现代架构技术全解析

随着Android开发技术的不断进步,Jetpack和现代架构技术已成为构建高效、可维护应用的关键。本文将为您介绍一套全面的学习资料,包括大纲、PDF文档、源代码以及学习视频,帮助您深入理解Jetpack核心库、架构组件以及现代开发工具。 内容&#…

linux-基础知识4

网络连接性测试 ping ping可以用来测试本机与目标主机的连通速度网络稳定性 ping -c 5 -s 1024 目标主机ip地址 -c 表示ping包的个数,linux如果缺省-c会一直ping下去,windows平台的选项是-n -s指定ping发送数据的字节数默认是84字节。windows的是-l 没有问题时会之…

如何设计出一个比较全面的测试用例

目录 1. 测试用例的基本要素(不需要执行结果) 2. 测试用例的给我们带来的好处 3. 用例编写步骤 4. 设计测试用例的方法 4.1 基于需求进行测试用例的设计 4.2 具体的设计方法 1.等价类 2.边界值 3.判定表(因果图) 4.正交表法 5.场景设计法 6.错误猜测…

IO流体系(FiletOutputStream)

书写步骤: 1.创建字节输出流对象 细节1:参数是字符串表示的路径或者是File对象都是可以的 细节2:如果文件不存在会创建一个新的文件,但是要保证父级路径是存在的。 细节3:如果文件已经存在,则会清空文件 2.写数据 细节:write方法的参数…

Python | 绘制核密度图

写在前面 台风天,适合敲代码。前两天正好看到一个有意思的核密度图,使用的是seaborn绘制的。之前了解过这个包,但是一致没有去绘制相关的图,这次正好去学习一下相关的函数。 绘制结果如下所示: 主要两个有意思的地方…

二维光场分析

一、单色光波长的复振幅表示 实波函数 复波函数 复振幅 由于时间因子相同,可以用复振幅来描述 光强 1.1 球面波的复振幅(单色点光源发出的光波) 等相位面是同心球面,波矢处处与等相位面垂直,即 是 r = 1 处的振幅 发散球面波: 会聚球面波: <