[转帖]auto_explain

auto,explain · 浏览次数 : 0

小编点评

**KingbaseES 自动扩展插件 auto_explain 简介** **功能概述** auto_explain 是 KingbaseES 中的一个扩展插件,用于自动记录 SQL 语句的执行计划并写入到 KingbaseES 日志文件中。插件在服务程序加载后自动开启,并在启动时不默认加载。 **加载方式** * 配置 Kingbase.conf 文件中的 shared_preload_libraries 中。 * 使用 LOAD 命令在数据库启动时加载插件。 **参数配置** * **log_min_durationSQL语句执行时间的阈值:**控制记录的最小执行时间(毫秒)。 * **log_analyze:**控制是否加入分析功能,记录执行计划。 * **log_settings:**控制日志信息的打印级别。 * **log_buffers:**控制打印缓冲区使用的详细信息。 * **log_wal:**控制打印 WAL 日志的信息。 * **log_triggers:**控制打印触发器的统计信息。 * **log_format:**控制执行计划的输出格式。 * **sample_rate:**控制打印会话中语句计划的比例。 **使用方法** 1. 加载 auto_explain 插件。 2. 根据参数配置,将 SQL 语句的执行计划写入日志文件。 3. 使用 LOAD 命令在数据库启动时加载插件。 **卸载方法** 修改 kingbase.conf 文件中的 shared_preload_libraries 参数,然后重启数据库。

正文

https://help.kingbase.com.cn/v8/development/sql-plsql/ref-extended-plug-in/auto_explain.html

 

6.1. 插件auto_explain简介 

auto_explain是KingbaseES的一个扩展插件,主要用于在服务器端自动记录SQL语句的执行计划,写入到KingbaseES日志文件中。

插件在被服务程序加载后,其相关功能生效,插件在服务端程序启动时不是默认加载。

  • 插件名为 auto_explain

  • 插件版本 V1.0

6.2. 插件auto_explain加载方式 

如需 KingbaseES 数据库启动时默认加载该插件,将其添加到 kingbase.conf 文件的 shared_preload_libraries 中。

如需在数据库启动后使用该插件,在ksql中使用LOAD命令即可。

示例:

shared_preload_libraries = 'auto_explain'

6.3. 插件auto_explain的参数配置 

auto_explain.log_min_duration

SQL语句执行时间的阈值,所有时间超过这个阈值的SQL语句的执行计划都会被记录到日志中,单位为毫秒,0表示记录所有语句,-1表示不记录

auto_explain.log_analyze

该参数控制是否加入analyze功能,即除了计划外把实际执行时间等信息也打出来,注意该参数打开后会对性能产生较大影响,默认值为off

auto_explain.log_settings

该参数控制是否打印已修改的配置选项的信息,输出中仅包含影响执行计划的配置选项,默认值为off

auto_explain.log_verbose

该参数控制是否在执行计划中打印更为详细的输出信息,默认值为off

auto_explain.log_buffers

该参数控制是否在执行计划中打印缓冲区使用的信息,默认值为off

auto_explain.log_wal

该参数控制是否打印WAL日志的信息,默认值为off

auto_explain.log_triggers

该参数控制是否打印触发器的统计信息,注意只有当auto_explain.log_analyze参数开启时,该参数才有效,默认值为off

auto_explain.log_format

该参数用于控制执行计划的输出格式,可以是text、xml、json、yaml,默认值为text

auto_explain.log_level

该参数用于控制auto_explain插件的日志级别,其值同服务器的日志级别相同,默认值为LOG

auto_explain.log_nested_statements

该参数用于控制是否支持嵌套语句(在一个函数内执行的语句)的执行计划输出,当它关闭时,只记录顶层语句的计划,默认值为off

auto_explain.log_timing

该参数用于控制是否打印计划中每个节点的计时信息,注意只有当auto_explain.log_analyze参数开启时,该参数才有效,默认值为off

auto_explain.sample_rate

该参数用于控制打印会话中语句计划的比例,默认值为1,表示输出所有语句的计划

6.4. 插件auto_explain的使用方法 

KingbaseES加载 auto_explain 插件后,根据其参数配置,将SQL语句的执行计划输出到日志文件里。

6.5. 插件auto_explain卸载方法 

修改 kingbase.conf 文件中 shared_preload_libraries 参数后重启数据库。

示例:

shared_preload_libraries = ''

6.6. 插件auto_explain升级方法 

auto_explain扩展插件通常随着KingbaseES安装包一并升级。通常情况下用户无须单独升级该插件。

与[转帖]auto_explain相似的内容:

[转帖]auto_explain

https://help.kingbase.com.cn/v8/development/sql-plsql/ref-extended-plug-in/auto_explain.html 6.1. 插件auto_explain简介 ¶ auto_explain是KingbaseES的一个扩展插件,主要

[转帖]通过Shell脚本自动监控JAVA进程中线程cpu使用率

https://gitee.com/jialy/auto-monitor-java-process/tree/master 本文主要介绍在 show-busy-java-threads.sh 脚本的功能基础上,通过 process-cpu-monitor.sh 脚本实现Linux平台上Java进程或

【转帖】linux 调优篇 :硬件调优(BIOS配置)* 壹

一. 设置内存刷新频率为Auto二. 开启NUMA三. 设置Stream Write Mode四. 开启CPU预取配置五. 开启SRIOV六. 开启SMMU 通过在BIOS中设置一些高级选项,可以有效提升虚拟化平台性能。表1列出了TaiShan服务器和性能相关的BIOS推荐配置项。 表1 BIOS性

[转帖]linux 调优篇 :硬件调优(BIOS配置)* 壹

https://blog.csdn.net/tony_vip?type=blog 一. 设置内存刷新频率为Auto二. 开启NUMA三. 设置Stream Write Mode四. 开启CPU预取配置五. 开启SRIOV六. 开启SMMU 通过在BIOS中设置一些高级选项,可以有效提升虚拟化平台性能

[转帖]k8s中nginx工作线程的问题

https://www.cnblogs.com/lizexiong/p/15198863.html 本次环境背景信息为,需要在k8s里面跑一些前端界面,所以在pod容器中还是使用到了nginx,但是发现,如果nginx worker_processes参数为auto,pod容器会读取node节点的c

[转帖]prometheus监控nginxt的两种方法(vts)

方法一 使用nginx_ vts_exporter mkdir -p /data/nginx/{log,conf/conf.d} cat > /data/nginx/conf/nginx.conf << 'EOF' user root; worker_processes auto; error_lo

[转帖]

Linux ubuntu20.04 网络配置(图文教程) 因为我是刚装好的最小系统,所以很多东西都没有,在开始配置之前需要做下准备 环境准备 系统:ubuntu20.04网卡:双网卡 网卡一:供连接互联网使用网卡二:供连接内网使用(看情况,如果一张网卡足够,没必要做第二张网卡) 工具: net-to

[转帖]

https://cloud.tencent.com/developer/article/2168105?areaSource=104001.13&traceId=zcVNsKTUApF9rNJSkcCbB 前言 Redis作为高性能的内存数据库,在大数据量的情况下也会遇到性能瓶颈,日常开发中只有时刻

[转帖]ISV 、OSV、 SIG 概念

ISV 、OSV、 SIG 概念 2022-10-14 12:29530原创大杂烩 本文链接:https://www.cndba.cn/dave/article/108699 1. ISV: Independent Software Vendors “独立软件开发商”,特指专门从事软件的开发、生产、

[转帖]Redis 7 参数 修改 说明

2022-06-16 14:491800原创Redis 本文链接:https://www.cndba.cn/dave/article/108066 在之前的博客我们介绍了Redis 7 的安装和配置,如下: Linux 7.8 平台 Redis 7 安装并配置开机自启动 操作手册https://ww