From 6e3b17fcdbe7594bb7b9698c0a0c61f4ae141cac Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Tue, 3 Sep 2024 14:26:47 +0800 Subject: [PATCH 1/6] =?UTF-8?q?fix(mogdb):=E8=A1=A5=E5=85=85=E9=87=8D?= =?UTF-8?q?=E8=BD=BD=E5=8F=82=E6=95=B0=E6=89=93=E5=BC=80=E5=92=8C=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E6=97=B6perform=E5=AF=B9out/inout=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E7=9A=84=E8=A1=8C=E4=B8=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2-platform-and-client-compatibility.md | 7 ++++++- .../v3.0/reference-guide/sql-syntax/CREATE-PROCEDURE.md | 6 +++--- .../2-platform-and-client-compatibility.md | 7 ++++++- .../v3.1/reference-guide/sql-syntax/CREATE-PROCEDURE.md | 6 +++--- 4 files changed, 18 insertions(+), 8 deletions(-) diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md b/product/zh/docs-mogdb/v3.0/reference-guide/guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md index 85bccf02..37d2c287 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md @@ -129,11 +129,16 @@ date: 2021-04-20 | aformat_null_test | 控制rowtype类型判空逻辑,设置此项时,对于rowtype is not null判断,当一行数据有一列不为空的时候返回ture。否则,对于rowtype is not null判断,当一行数据所有列不为空的时候返回ture. | | aformat_regexp_match | 控制正则表达式函数的匹配行为。
设置此项,且sql_compatibility参数的值为A或B时,正则表达式的 flags 参数支持的选项含义有变更:
1. “.”默认不能匹配 '\n' 字符。
2. flags 中包含n选项时,“.”能够匹配 '\n' 字符。
3. regexp_replace(source, pattern replacement) 函数替换所有匹配的子串。
4. regexp_replace(source, pattern, replacement, flags) 在 flags值为” 或者null时,返回值为null。
否则,正则表达式的 flags 参数支持的选项含义:
1. “.”默认能匹配 '\n' 字符。
2. flags 中的 n 选项表示按照多行模式匹配。
3. regexp_replace(source, pattern replacement) 函数仅替换第一个匹配到的子串。
4. regexp_replace(source, pattern, replacement, flags) 在 flags值为” 或者null时,返回值为替换后的字符串。 | | compat_cursor | 控制隐式游标状态兼容行为。设置此项,且兼容O,隐式游标状态(SQL%FOUND、SQL%NOTFOUND、SQL%ISOPNE、SQL%ROWCOUNT)由原先的仅在当前执行的函数有效,拓展到包括本函数调用的子函数有效。 | -| proc_outparam_override | 控制存储过程出参的重载行为,打开该参数后,对于存储过程只有out出参部分不同的情况下,也可以正常调用。 | +| proc_outparam_override | 控制存储过程出参的重载行为,打开该参数后,对于存储过程只有out出参部分不同的情况下,也可以正常调用。设置此选项后,包含了out参数的函数或者存储过程,必须显式调用out参数。 | | proc_implicit_for_loop_variable | 控制存储过程中FOR_LOOP查询语句行为设置此项时,在FOR rec IN query LOOP语句中,若rec已经定义,不会复用已经定义的rec变量,而且重新建立一个新的变量。否则,会复用已经定义的rec变量,不会建立新的变量。 | | allow_procedure_compile_check | 控制存储过程中select语句和open cursor语句的编译检查设置此项时,在存储过程中执行select语句、open cursor for语句、cursor%rowtype语句、for rec in语句时,若查询的表不存在,则无法创建创建存储过程,不支持trigger函数的编译检查,若查询的表存在,则成功创建存储过程。 | | char_coerce_compat | 控制char(n)类型向其它变长字符串类型转换时的行为。默认情况下char(n)类型转换其它变长字符串类型时会省略尾部的空格,开启该参数后,转换时不再省略尾部的空格,并且在转换时如果char(n)类型的长度超过其它变长字符串类型时将会报错。该参数仅在sql_compatibility参数的值为A时生效。 | +> 关于proc_outparam_override选项和perform操作行为的说明如下: +> +> 1. 关闭proc_outparam_override选项时,针对out参数,perform不支持传入常量,必须传入变量;针对inout参数,perform支持传入常量,原因在于perform的作用是忽略out参数,此时给inout参数传常量,实际是给in参数传常量。 +> 2. 打开proc_outparam_override选项时,perform支持给out参数传入变量和常量,但是传入常量时会报错,原因在于out参数需要有变量来接收它的值,而传入常量时无法再给常量赋值,所以需要传变量。相当于打开此选项时,perform原本忽略out参数的特性不起作用。 + ## plpgsql.variable_conflict **参数说明**: 设置同名的存储过程变量和表的列的使用优先级。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-PROCEDURE.md b/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-PROCEDURE.md index 8e0f678a..0a5afe5b 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-PROCEDURE.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-PROCEDURE.md @@ -23,11 +23,11 @@ date: 2021-05-10 - 在存储过程内部调用其他有出参的函数,如果在赋值表达式中调用时,被调函数的出参可以省略,给出了也会被忽略。 - 存储过程支持参数注释的查看与导出、导入。 - 存储过程支持介于IS/AS与plsql_body之间的注释的查看与导出、导入。 -- 存储过程默认为SECURITY INVOKER权限,如果想将默认行为改为SECURITY DEFINER权限,需要设置guc参数behavior\_compat\_options='plsql\_security\_definer'。 +- 存储过程默认为SECURITY INVOKER权限,如果想将默认行为改为SECURITY DEFINER权限,需要设置guc参数behavior_compat_options='plsql_security_definer'。 - 被授予CREATE ANY FUNCTION权限的用户,可以在用户模式下创建/替换存储过程。 -- out/inout参数必须传入变量,不能够传入常量。 +- out/inout参数需要传入变量,不能为常量;关闭重载时,out参数在perform操作下可以不显式调用。关于proc_outparam_override选项和perform操作行为的详细说明参见[proc_outparam_override](../guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md#behavior_compat_options)。 - 创建存储过程时,若返回类型为游标,需注意out参数在前,in参数在后。 -- 集中式环境下,想要调用in参数相同,out参数不同的存储过程,需要设置guc参数behavior\_compat\_options='proc\_outparam\_override',并且打开参数后,无论使用select还是call调用存储过程,都必须加上out参数。打开参数后,不支持使用perform调用存储过程或函数。 +- 集中式环境下,想要调用in参数相同,out参数不同的存储过程,需要设置guc参数behavior_compat_options='proc_outparam_override',并且打开参数后,无论使用select还是call调用存储过程,都必须加上out参数。 ## 语法格式 diff --git a/product/zh/docs-mogdb/v3.1/reference-guide/guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md b/product/zh/docs-mogdb/v3.1/reference-guide/guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md index 1bf3e95c..a7990715 100644 --- a/product/zh/docs-mogdb/v3.1/reference-guide/guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md +++ b/product/zh/docs-mogdb/v3.1/reference-guide/guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md @@ -140,12 +140,17 @@ date: 2021-04-20 | aformat_null_test | 控制rowtype类型判空逻辑,设置此项时,对于rowtype is not null判断,当一行数据有一列不为空的时候返回ture。否则,对于rowtype is not null判断,当一行数据所有列不为空的时候返回ture. | | aformat_regexp_match | 控制正则表达式函数的匹配行为。
设置此项,且sql_compatibility参数的值为A或B时,正则表达式的 flags 参数支持的选项含义有变更:
1. “.”默认不能匹配 '\n' 字符。
2. flags 中包含n选项时,“.”能够匹配 '\n' 字符。
3. regexp_replace(source, pattern replacement) 函数替换所有匹配的子串。
4. regexp_replace(source, pattern, replacement, flags) 在 flags值为” 或者null时,返回值为null。
否则,正则表达式的 flags 参数支持的选项含义:
1. “.”默认能匹配 '\n' 字符。
2. flags 中的 n 选项表示按照多行模式匹配。
3. regexp_replace(source, pattern replacement) 函数仅替换第一个匹配到的子串。
4. regexp_replace(source, pattern, replacement, flags) 在 flags值为” 或者null时,返回值为替换后的字符串。 | | compat_cursor | 控制隐式游标状态兼容行为。设置此项,且兼容O,隐式游标状态(SQL%FOUND、SQL%NOTFOUND、SQL%ISOPNE、SQL%ROWCOUNT)由原先的仅在当前执行的函数有效,拓展到包括本函数调用的子函数有效。 | -| proc_outparam_override | 控制存储过程出参的重载行为,打开该参数后,对于存储过程只有out出参部分不同的情况下,也可以正常调用。 | +| proc_outparam_override | 控制存储过程出参的重载行为,打开该参数后,对于存储过程只有out出参部分不同的情况下,也可以正常调用。设置此选项后,包含了out参数的函数或者存储过程,必须显式调用out参数。 | | proc_implicit_for_loop_variable | 控制存储过程中FOR_LOOP查询语句行为设置此项时,在FOR rec IN query LOOP语句中,若rec已经定义,不会复用已经定义的rec变量,而且重新建立一个新的变量。否则,会复用已经定义的rec变量,不会建立新的变量。 | | allow_procedure_compile_check | 控制存储过程中select语句和open cursor语句的编译检查设置此项时,在存储过程中执行select语句、open cursor for语句、cursor%rowtype语句、for rec in语句时,若查询的表不存在,则无法创建创建存储过程,不支持trigger函数的编译检查,若查询的表存在,则成功创建存储过程。 | | char_coerce_compat | 控制char(n)类型向其它变长字符串类型转换时的行为。默认情况下char(n)类型转换其它变长字符串类型时会省略尾部的空格,开启该参数后,转换时不再省略尾部的空格,并且在转换时如果char(n)类型的长度超过其它变长字符串类型时将会报错。该参数仅在sql_compatibility参数的值为A时生效。 | | pgformat_substr | 控制substr(str, from, for)在不同场景下的表现。默认情况下,当from小于0时,substr将从字符串尾部开始计数;当for小于1时,substr将返回NULL。开启该参数后,当from小于0时,将从字符串的第一位的前(-from + 1)位开始计数;当for小于0时,substr将报错。该参数仅在sql_compatibility参数的值为PG时生效。 | +> 关于proc_outparam_override选项和perform操作行为的说明如下: +> +> 1. 关闭proc_outparam_override选项时,针对out参数,perform不支持传入常量,必须传入变量;针对inout参数,perform支持传入常量,原因在于perform的作用是忽略out参数,此时给inout参数传常量,实际是给in参数传常量。 +> 2. 打开proc_outparam_override选项时,perform支持给out参数传入变量和常量,但是传入常量时会报错,原因在于out参数需要有变量来接收它的值,而传入常量时无法再给常量赋值,所以需要传变量。相当于打开此选项时,perform原本忽略out参数的特性不起作用。 + ## plpgsql.variable_conflict **参数说明**: 设置同名的存储过程变量和表的列的使用优先级。 diff --git a/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-PROCEDURE.md b/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-PROCEDURE.md index a5747a1d..51673f0f 100644 --- a/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-PROCEDURE.md +++ b/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-PROCEDURE.md @@ -23,11 +23,11 @@ date: 2021-05-10 - 在存储过程内部调用其他有出参的函数,如果在赋值表达式中调用时,被调函数的出参可以省略,给出了也会被忽略。 - 存储过程支持参数注释的查看与导出、导入。 - 存储过程支持介于IS/AS与plsql_body之间的注释的查看与导出、导入。 -- 存储过程默认为SECURITY INVOKER权限,如果想将默认行为改为SECURITY DEFINER权限,需要设置guc参数behavior\_compat\_options='plsql\_security\_definer'。 +- 存储过程默认为SECURITY INVOKER权限,如果想将默认行为改为SECURITY DEFINER权限,需要设置guc参数behavior_compat_options='plsql_security_definer'。 - 被授予CREATE ANY FUNCTION权限的用户,可以在用户模式下创建/替换存储过程。 -- out/inout参数必须传入变量,不能够传入常量。 +- out/inout参数需要传入变量,不能为常量;关闭重载时,out参数在perform操作下可以不显式调用。关于proc_outparam_override选项和perform操作行为的详细说明参见[proc_outparam_override](../guc-parameters/17-version-and-platform-compatibility/2-platform-and-client-compatibility.md#behavior_compat_options)。 - 创建存储过程时,若返回类型为游标,需注意out参数在前,in参数在后。 -- 集中式环境下,想要调用in参数相同,out参数不同的存储过程,需要设置guc参数behavior\_compat\_options='proc\_outparam\_override',并且打开参数后,无论使用select还是call调用存储过程,都必须加上out参数。打开参数后,不支持使用perform调用存储过程或函数。 +- 集中式环境下,想要调用in参数相同,out参数不同的存储过程,需要设置guc参数behavior_compat_options='proc_outparam_override',并且打开参数后,无论使用select还是call调用存储过程,都必须加上out参数。 ## 语法格式 -- Gitee From b8130294c59197b10c1c80578482c2cf552af556 Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Tue, 3 Sep 2024 14:29:39 +0800 Subject: [PATCH 2/6] fix(mogdb):issue IAOFAB --- .../docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- .../docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md | 2 +- .../docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md | 2 +- 32 files changed, 32 insertions(+), 32 deletions(-) diff --git a/product/en/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md b/product/en/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md index 897ae244..0b944494 100644 --- a/product/en/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/en/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md @@ -44,7 +44,7 @@ The syntax of the **option** clause is as follows: | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md b/product/en/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md index 7a3d3106..8c1425e3 100644 --- a/product/en/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/en/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md @@ -50,7 +50,7 @@ The syntax of role information configuration clause **option** is as follows: | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md b/product/en/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md index 42da346c..aa3a4414 100644 --- a/product/en/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/en/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md @@ -44,7 +44,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md b/product/en/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md index 685750ea..539478ed 100644 --- a/product/en/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/en/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md @@ -50,7 +50,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md b/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md index 44a19a74..dde0fcd1 100644 --- a/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md @@ -44,7 +44,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md b/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md index 605202aa..6622f9bb 100644 --- a/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md @@ -50,7 +50,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md b/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md index 3c560ed5..275aed18 100644 --- a/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md @@ -48,7 +48,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md b/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md index e4b9c79e..2aefd45b 100644 --- a/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md @@ -51,7 +51,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md b/product/en/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md index 3c560ed5..275aed18 100644 --- a/product/en/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/en/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md @@ -48,7 +48,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md b/product/en/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md index e5c74a48..64489b18 100644 --- a/product/en/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/en/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md @@ -53,7 +53,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md b/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md index 3c560ed5..275aed18 100644 --- a/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md @@ -48,7 +48,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md b/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md index e5c74a48..64489b18 100644 --- a/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/en/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md @@ -53,7 +53,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md b/product/en/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md index 3c560ed5..275aed18 100644 --- a/product/en/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/en/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md @@ -48,7 +48,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md b/product/en/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md index e5c74a48..64489b18 100644 --- a/product/en/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/en/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md @@ -53,7 +53,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md b/product/en/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md index 3c560ed5..275aed18 100644 --- a/product/en/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/en/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md @@ -48,7 +48,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/en/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md b/product/en/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md index e5c74a48..64489b18 100644 --- a/product/en/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/en/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md @@ -53,7 +53,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md b/product/zh/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md index eba311a8..6a822bac 100644 --- a/product/zh/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/zh/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-GROUP.md @@ -44,7 +44,7 @@ CREATE GROUP group_name [ [ WITH ] option [ ... ] ] [ ENCRYPTED | UNENCRYPTED ] | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md b/product/zh/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md index 9065d6c1..be7ce82b 100644 --- a/product/zh/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/zh/docs-mogdb/v1.1/reference-guide/sql-syntax/CREATE-ROLE.md @@ -50,7 +50,7 @@ CREATE ROLE role_name [ [ WITH ] option [ ... ] ] [ ENCRYPTED | UNENCRYPTED ] { | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md b/product/zh/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md index d18ba65d..bddf3600 100644 --- a/product/zh/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/zh/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-GROUP.md @@ -44,7 +44,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md b/product/zh/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md index 85e320ec..ac6925f7 100644 --- a/product/zh/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/zh/docs-mogdb/v2.0/reference-guide/sql-syntax/CREATE-ROLE.md @@ -50,7 +50,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md b/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md index 5c1c337e..e7d9472f 100644 --- a/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-GROUP.md @@ -44,7 +44,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md b/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md index 516d6ff5..fdd9f28c 100644 --- a/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/CREATE-ROLE.md @@ -50,7 +50,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md b/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md index d5463323..7d7275e1 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-GROUP.md @@ -48,7 +48,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md b/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md index deaa9883..c1e020da 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-ROLE.md @@ -51,7 +51,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md b/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md index d5463323..7d7275e1 100644 --- a/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-GROUP.md @@ -48,7 +48,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md b/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md index 77370929..6c7a9418 100644 --- a/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/zh/docs-mogdb/v3.1/reference-guide/sql-syntax/CREATE-ROLE.md @@ -53,7 +53,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md index 88f34d5a..2343f01d 100644 --- a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-GROUP.md @@ -49,7 +49,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md index 6463393f..0f186b1b 100644 --- a/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/zh/docs-mogdb/v5.0/reference-guide/sql-syntax/CREATE-ROLE.md @@ -54,7 +54,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md b/product/zh/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md index 88f34d5a..2343f01d 100644 --- a/product/zh/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/zh/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-GROUP.md @@ -49,7 +49,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md b/product/zh/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md index 6463393f..0f186b1b 100644 --- a/product/zh/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/zh/docs-mogdb/v5.2/reference-guide/sql-syntax/CREATE-ROLE.md @@ -54,7 +54,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md b/product/zh/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md index 88f34d5a..2343f01d 100644 --- a/product/zh/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md +++ b/product/zh/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-GROUP.md @@ -49,7 +49,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name diff --git a/product/zh/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md b/product/zh/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md index 76a318e7..4419e0e7 100644 --- a/product/zh/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md +++ b/product/zh/docs-mogdb/v6.0/reference-guide/sql-syntax/CREATE-ROLE.md @@ -54,7 +54,7 @@ option ::= {SYSADMIN | NOSYSADMIN} | IN ROLE role_name [, ...] | IN GROUP role_name [, ...] | ROLE role_name [, ...] - | ADMIN rol e_name [, ...] + | ADMIN role_name [, ...] | USER role_name [, ...] | SYSID uid | DEFAULT TABLESPACE tablespace_name -- Gitee From 5927616c48c6a2b95084f8c5219d54b430a094bc Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Tue, 3 Sep 2024 14:35:38 +0800 Subject: [PATCH 3/6] fix(mogdb):issue IAMRJP --- ...-introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - .../introduction-to-the-sql-execution-plan.md | 270 +++++++++--------- .../introduction-to-the-sql-execution-plan.md | 2 - .../introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - ...-introduction-to-the-sql-execution-plan.md | 2 - .../introduction-to-the-sql-execution-plan.md | 2 - .../introduction-to-the-sql-execution-plan.md | 2 - .../introduction-to-the-sql-execution-plan.md | 2 - 16 files changed, 134 insertions(+), 166 deletions(-) diff --git a/product/en/docs-mogdb/v1.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/en/docs-mogdb/v1.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 9fbe0358..9c620807 100644 --- a/product/en/docs-mogdb/v1.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/en/docs-mogdb/v1.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -35,8 +35,6 @@ To measure the run time cost of each node in the execution plan, the current exe Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. -The **EXPLAIN PERFORMANCE** lightweight execution is consistent with **EXPLAIN PERFORMANCE** but greatly reduces the time spent on performance analysis. - ## Description As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. diff --git a/product/en/docs-mogdb/v2.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/en/docs-mogdb/v2.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 9fbe0358..9c620807 100644 --- a/product/en/docs-mogdb/v2.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/en/docs-mogdb/v2.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -35,8 +35,6 @@ To measure the run time cost of each node in the execution plan, the current exe Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. -The **EXPLAIN PERFORMANCE** lightweight execution is consistent with **EXPLAIN PERFORMANCE** but greatly reduces the time spent on performance analysis. - ## Description As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. diff --git a/product/en/docs-mogdb/v2.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/en/docs-mogdb/v2.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 9fbe0358..9c620807 100644 --- a/product/en/docs-mogdb/v2.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/en/docs-mogdb/v2.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -35,8 +35,6 @@ To measure the run time cost of each node in the execution plan, the current exe Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. -The **EXPLAIN PERFORMANCE** lightweight execution is consistent with **EXPLAIN PERFORMANCE** but greatly reduces the time spent on performance analysis. - ## Description As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. diff --git a/product/en/docs-mogdb/v3.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/en/docs-mogdb/v3.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 9fbe0358..9c620807 100644 --- a/product/en/docs-mogdb/v3.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/en/docs-mogdb/v3.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -35,8 +35,6 @@ To measure the run time cost of each node in the execution plan, the current exe Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. -The **EXPLAIN PERFORMANCE** lightweight execution is consistent with **EXPLAIN PERFORMANCE** but greatly reduces the time spent on performance analysis. - ## Description As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. diff --git a/product/en/docs-mogdb/v3.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/en/docs-mogdb/v3.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 9fbe0358..9c620807 100644 --- a/product/en/docs-mogdb/v3.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/en/docs-mogdb/v3.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -35,8 +35,6 @@ To measure the run time cost of each node in the execution plan, the current exe Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. -The **EXPLAIN PERFORMANCE** lightweight execution is consistent with **EXPLAIN PERFORMANCE** but greatly reduces the time spent on performance analysis. - ## Description As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. diff --git a/product/en/docs-mogdb/v5.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md b/product/en/docs-mogdb/v5.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md index 9fbe0358..a5ab0944 100644 --- a/product/en/docs-mogdb/v5.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md +++ b/product/en/docs-mogdb/v5.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md @@ -1,136 +1,134 @@ ---- -title: Introduction to the SQL Execution Plan -summary: Introduction to the SQL Execution Plan -author: Guo Huan -date: 2021-03-16 ---- - -# Introduction to the SQL Execution Plan - -## Overview - -The SQL execution plan is a node tree, which displays detailed procedure when MogDB runs an SQL statement. A database operator indicates one step. - -You can run the **EXPLAIN** command to view the execution plan generated for each query by an optimizer. The output of **EXPLAIN** has one row for each execution node, showing the basic node type and the cost estimation that the optimizer made for the execution of this node, as shown in Figure 1. - -**Figure 1** SQL execution plan example - -![sql-execution-plan-example](https://cdn-mogdb.enmotech.com/docs-media/mogdb/performance-tuning/introduction-to-the-sql-execution-plan-1.png) - -- Nodes at the bottom level are scan nodes. They scan tables and return raw rows. The types of scan nodes (sequential scans and index scans) vary depending on the table access methods. Objects scanned by the bottom layer nodes may not be row-store data (not directly read from a table), such as **VALUES** clauses and functions that return rows, which have their own types of scan nodes. - -- If the query requires join, aggregation, sorting, or other operations on the raw rows, there will be other nodes above the scan nodes to perform these operations. In addition, there is more than one way to perform these operations, so different types of execution nodes may be displayed here. - -- The first row (the upper-layer node) estimates the total execution cost of the execution plan. Such an estimate indicates the value that the optimizer tries to minimize. - -### Execution Plan Information - -In addition to setting different display formats for an execution plan, you can use different **EXPLAIN** syntax to display execution plan information in detail. The following lists the common **EXPLAIN** syntax. For details about more **EXPLAIN** syntax, see EXPLAIN. - -- EXPLAIN **statement**: only generates an execution plan and does not execute. The *statement* indicates SQL statements. -- EXPLAIN ANALYZE **statement**: generates and executes an execution plan, and displays the execution summary. Then actual execution time statistics are added to the display, including the total elapsed time expended within each plan node (in milliseconds) and the total number of rows it actually returned. -- EXPLAIN PERFORMANCE **statement**: generates and executes the execution plan, and displays all execution information. - -To measure the run time cost of each node in the execution plan, the current execution of **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** adds profiling overhead to query execution. Running **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** on a query sometimes takes longer time than executing the query normally. The amount of overhead depends on the nature of the query, as well as the platform being used. - -Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. - -The **EXPLAIN PERFORMANCE** lightweight execution is consistent with **EXPLAIN PERFORMANCE** but greatly reduces the time spent on performance analysis. - -## Description - -As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. - -### Execution Plans - -The following SQL statement is used as an example: - -```sql -SELECT * FROM t1, t2 WHERE t1.c1 = t2.c2; -``` - -Run the **EXPLAIN** command and the output is as follows: - -![img](https://cdn-mogdb.enmotech.com/docs-media/mogdb/performance-tuning/introduction-to-the-sql-execution-plan-2.png) - -**Interpretation of the execution plan level (vertical)**: - -1. Layer 1:**Seq Scan on t2** - - The table scan operator scans the table **t2** using **Seq Scan**. At this layer, data in the table **t2** is read from a buffer or disk, and then transferred to the upper-layer node for calculation. - -2. Layer 2:**Hash** - - Hash operator. It is used to calculate the hash value of the operator transferred from the lower layer for subsequent hash join operations. - -3. Layer 3:**Seq Scan on t1** - - The table scan operator scans the table **t1** using **Seq Scan**. At this layer, data in the table **t1** is read from a buffer or disk, and then transferred to the upper-layer node for hash join calculation. - -4. Layer 4:**Hash Join** - - Join operator. It is used to join data in the **t1** and **t2** tables using the hash join method and output the result data. - -**Keywords in the execution plan**: - -1. Table access modes - - - Seq Scan - - Scans all rows of the table in sequence. - - - Index Scan - - The optimizer uses a two-step plan: the child plan node visits an index to find the locations of rows matching the index condition, and then the upper plan node actually fetches those rows from the table itself. Fetching rows separately is much more expensive than reading them sequentially, but because not all pages of the table have to be visited, this is still cheaper than a sequential scan. The upper-layer planning node sorts index-identified rows based on their physical locations before reading them. This minimizes the independent capturing overhead. - - If there are separate indexes on multiple columns referenced in **WHERE**, the optimizer might choose to use an **AND** or **OR** combination of the indexes. However, this requires the visiting of both indexes, so it is not necessarily a win compared to using just one index and treating the other condition as a filter. - - The following Index scans featured with different sorting mechanisms are involved: - - - Bitmap Index Scan - - Fetches data pages using a bitmap. - - - Index Scan using index_name - - Fetches table rows in index order, which makes them even more expensive to read. However, there are so few rows that the extra cost of sorting the row locations is unnecessary. This plan type is used mainly for queries fetching just a single row and queries having an **ORDER BY** condition that matches the index order, because no extra sorting step is needed to satisfy **ORDER BY**. - -2. Table connection modes - - - Nested Loop - - A nested loop is used for queries that have a smaller data set connected. In a nested loop join, the foreign table drives the internal table and each row returned from the foreign table should have a matching row in the internal table. The returned result set of all queries should be less than 10,000. The table that returns a smaller subset will work as a foreign table, and indexes are recommended for connection columns of the internal table. - - - (Sonic) Hash Join - - A hash join is used for large tables. The optimizer uses a hash join, in which rows of one table are entered into an in-memory hash table, after which the other table is scanned and the hash table is probed for matches to each row. Sonic and non-Sonic hash joins differ in their hash table structures, which do not affect the execution result set. - - - Merge Join - - In most cases, the execution performance of a merge join is lower than that of a hash join. However, if the source data has been pre-sorted and no more sorting is needed during the merge join, its performance excels. - -3. Operators - - - sort - - Sorts the result set. - - - filter - - The **EXPLAIN** output shows the **WHERE** clause being applied as a **Filter** condition attached to the **Seq Scan** plan node. This means that the plan node checks the condition for each row it scans, and returns only the ones that meet the condition. The estimated number of output rows has been reduced because of the **WHERE** clause. However, the scan will still have to visit all 10,000 rows, as a result, the cost is not decreased. It increases a bit (by 10,000 x **cpu_operator_cost**) to reflect the extra CPU time spent on checking the **WHERE** condition. - - - LIMIT - - Limits the number of output execution results. If a **LIMIT** condition is added, not all rows are retrieved. - -### Execution Information - -The following SQL statement is used as an example: - -```sql -select sum(t2.c1) from t1,t2 where t1.c1=t2.c2 group by t1.c2; -``` - -The output of running **EXPLAIN PERFORMANCE** is as follows: - -![img](https://cdn-mogdb.enmotech.com/docs-media/mogdb/performance-tuning/introduction-to-the-sql-execution-plan-3.png) +--- +title: Introduction to the SQL Execution Plan +summary: Introduction to the SQL Execution Plan +author: Guo Huan +date: 2021-03-16 +--- + +# Introduction to the SQL Execution Plan + +## Overview + +The SQL execution plan is a node tree, which displays detailed procedure when MogDB runs an SQL statement. A database operator indicates one step. + +You can run the **EXPLAIN** command to view the execution plan generated for each query by an optimizer. The output of **EXPLAIN** has one row for each execution node, showing the basic node type and the cost estimation that the optimizer made for the execution of this node, as shown in Figure 1. + +**Figure 1** SQL execution plan example + +![sql-execution-plan-example](https://cdn-mogdb.enmotech.com/docs-media/mogdb/performance-tuning/introduction-to-the-sql-execution-plan-1.png) + +- Nodes at the bottom level are scan nodes. They scan tables and return raw rows. The types of scan nodes (sequential scans and index scans) vary depending on the table access methods. Objects scanned by the bottom layer nodes may not be row-store data (not directly read from a table), such as **VALUES** clauses and functions that return rows, which have their own types of scan nodes. + +- If the query requires join, aggregation, sorting, or other operations on the raw rows, there will be other nodes above the scan nodes to perform these operations. In addition, there is more than one way to perform these operations, so different types of execution nodes may be displayed here. + +- The first row (the upper-layer node) estimates the total execution cost of the execution plan. Such an estimate indicates the value that the optimizer tries to minimize. + +### Execution Plan Information + +In addition to setting different display formats for an execution plan, you can use different **EXPLAIN** syntax to display execution plan information in detail. The following lists the common **EXPLAIN** syntax. For details about more **EXPLAIN** syntax, see EXPLAIN. + +- EXPLAIN **statement**: only generates an execution plan and does not execute. The *statement* indicates SQL statements. +- EXPLAIN ANALYZE **statement**: generates and executes an execution plan, and displays the execution summary. Then actual execution time statistics are added to the display, including the total elapsed time expended within each plan node (in milliseconds) and the total number of rows it actually returned. +- EXPLAIN PERFORMANCE **statement**: generates and executes the execution plan, and displays all execution information. + +To measure the run time cost of each node in the execution plan, the current execution of **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** adds profiling overhead to query execution. Running **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** on a query sometimes takes longer time than executing the query normally. The amount of overhead depends on the nature of the query, as well as the platform being used. + +Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. + +## Description + +As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. + +### Execution Plans + +The following SQL statement is used as an example: + +```sql +SELECT * FROM t1, t2 WHERE t1.c1 = t2.c2; +``` + +Run the **EXPLAIN** command and the output is as follows: + +![img](https://cdn-mogdb.enmotech.com/docs-media/mogdb/performance-tuning/introduction-to-the-sql-execution-plan-2.png) + +**Interpretation of the execution plan level (vertical)**: + +1. Layer 1:**Seq Scan on t2** + + The table scan operator scans the table **t2** using **Seq Scan**. At this layer, data in the table **t2** is read from a buffer or disk, and then transferred to the upper-layer node for calculation. + +2. Layer 2:**Hash** + + Hash operator. It is used to calculate the hash value of the operator transferred from the lower layer for subsequent hash join operations. + +3. Layer 3:**Seq Scan on t1** + + The table scan operator scans the table **t1** using **Seq Scan**. At this layer, data in the table **t1** is read from a buffer or disk, and then transferred to the upper-layer node for hash join calculation. + +4. Layer 4:**Hash Join** + + Join operator. It is used to join data in the **t1** and **t2** tables using the hash join method and output the result data. + +**Keywords in the execution plan**: + +1. Table access modes + + - Seq Scan + + Scans all rows of the table in sequence. + + - Index Scan + + The optimizer uses a two-step plan: the child plan node visits an index to find the locations of rows matching the index condition, and then the upper plan node actually fetches those rows from the table itself. Fetching rows separately is much more expensive than reading them sequentially, but because not all pages of the table have to be visited, this is still cheaper than a sequential scan. The upper-layer planning node sorts index-identified rows based on their physical locations before reading them. This minimizes the independent capturing overhead. + + If there are separate indexes on multiple columns referenced in **WHERE**, the optimizer might choose to use an **AND** or **OR** combination of the indexes. However, this requires the visiting of both indexes, so it is not necessarily a win compared to using just one index and treating the other condition as a filter. + + The following Index scans featured with different sorting mechanisms are involved: + + - Bitmap Index Scan + + Fetches data pages using a bitmap. + + - Index Scan using index_name + + Fetches table rows in index order, which makes them even more expensive to read. However, there are so few rows that the extra cost of sorting the row locations is unnecessary. This plan type is used mainly for queries fetching just a single row and queries having an **ORDER BY** condition that matches the index order, because no extra sorting step is needed to satisfy **ORDER BY**. + +2. Table connection modes + + - Nested Loop + + A nested loop is used for queries that have a smaller data set connected. In a nested loop join, the foreign table drives the internal table and each row returned from the foreign table should have a matching row in the internal table. The returned result set of all queries should be less than 10,000. The table that returns a smaller subset will work as a foreign table, and indexes are recommended for connection columns of the internal table. + + - (Sonic) Hash Join + + A hash join is used for large tables. The optimizer uses a hash join, in which rows of one table are entered into an in-memory hash table, after which the other table is scanned and the hash table is probed for matches to each row. Sonic and non-Sonic hash joins differ in their hash table structures, which do not affect the execution result set. + + - Merge Join + + In most cases, the execution performance of a merge join is lower than that of a hash join. However, if the source data has been pre-sorted and no more sorting is needed during the merge join, its performance excels. + +3. Operators + + - sort + + Sorts the result set. + + - filter + + The **EXPLAIN** output shows the **WHERE** clause being applied as a **Filter** condition attached to the **Seq Scan** plan node. This means that the plan node checks the condition for each row it scans, and returns only the ones that meet the condition. The estimated number of output rows has been reduced because of the **WHERE** clause. However, the scan will still have to visit all 10,000 rows, as a result, the cost is not decreased. It increases a bit (by 10,000 x **cpu_operator_cost**) to reflect the extra CPU time spent on checking the **WHERE** condition. + + - LIMIT + + Limits the number of output execution results. If a **LIMIT** condition is added, not all rows are retrieved. + +### Execution Information + +The following SQL statement is used as an example: + +```sql +select sum(t2.c1) from t1,t2 where t1.c1=t2.c2 group by t1.c2; +``` + +The output of running **EXPLAIN PERFORMANCE** is as follows: + +![img](https://cdn-mogdb.enmotech.com/docs-media/mogdb/performance-tuning/introduction-to-the-sql-execution-plan-3.png) diff --git a/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md b/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md index 7d20f9ec..a5ab0944 100644 --- a/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md +++ b/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md @@ -35,8 +35,6 @@ To measure the run time cost of each node in the execution plan, the current exe Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. -The **EXPLAIN PERFORMANCE** lightweight execution is consistent with **EXPLAIN PERFORMANCE** but greatly reduces the time spent on performance analysis. - ## Description As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. diff --git a/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md b/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md index 7d20f9ec..a5ab0944 100644 --- a/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md +++ b/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md @@ -35,8 +35,6 @@ To measure the run time cost of each node in the execution plan, the current exe Therefore, if an SQL statement is not finished after being running for a long time, run the **EXPLAIN** statement to view the execution plan and then locate the fault. If the SQL statement has been properly executed, run the **EXPLAIN ANALYZE** or **EXPLAIN PERFORMANCE** statement to check the execution plan and information to locate the fault. -The **EXPLAIN PERFORMANCE** lightweight execution is consistent with **EXPLAIN PERFORMANCE** but greatly reduces the time spent on performance analysis. - ## Description As described in [Overview](#Overview), **EXPLAIN** displays the execution plan, but will not actually run SQL statements. **EXPLAIN ANALYZE** and **EXPLAIN PERFORMANCE** both will actually run SQL statements and return the execution information. This section describes the execution plan and execution information in detail. diff --git a/product/zh/docs-mogdb/v1.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/zh/docs-mogdb/v1.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 8f013234..f076080b 100644 --- a/product/zh/docs-mogdb/v1.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/zh/docs-mogdb/v1.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -37,8 +37,6 @@ SQL执行计划是一个节点树,显示openGauss执行一条SQL语句时执 因此,当定位SQL运行慢问题时,如果SQL长时间运行未结束,建议通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出来,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及其实际的运行信息,以便更精准地定位问题原因。 -EXPLAIN PERFORMANCE轻量化执行方式与EXPLAIN PERFORMANCE保持一致,在原来的基础上减少了性能分析的时间,执行时间与SQL执行时间的差异显著减少 -
## 详解 diff --git a/product/zh/docs-mogdb/v2.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/zh/docs-mogdb/v2.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 8f013234..f076080b 100644 --- a/product/zh/docs-mogdb/v2.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/zh/docs-mogdb/v2.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -37,8 +37,6 @@ SQL执行计划是一个节点树,显示openGauss执行一条SQL语句时执 因此,当定位SQL运行慢问题时,如果SQL长时间运行未结束,建议通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出来,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及其实际的运行信息,以便更精准地定位问题原因。 -EXPLAIN PERFORMANCE轻量化执行方式与EXPLAIN PERFORMANCE保持一致,在原来的基础上减少了性能分析的时间,执行时间与SQL执行时间的差异显著减少 -
## 详解 diff --git a/product/zh/docs-mogdb/v2.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/zh/docs-mogdb/v2.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 5c5e291a..ee04debe 100644 --- a/product/zh/docs-mogdb/v2.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/zh/docs-mogdb/v2.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -37,8 +37,6 @@ SQL执行计划是一个节点树,显示openGauss执行一条SQL语句时执 因此,当定位SQL运行慢问题时,如果SQL长时间运行未结束,建议通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出来,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及其实际的运行信息,以便更精准地定位问题原因。 -EXPLAIN PERFORMANCE轻量化执行方式与EXPLAIN PERFORMANCE保持一致,在原来的基础上减少了性能分析的时间,执行时间与SQL执行时间的差异显著减少 -
## 详解 diff --git a/product/zh/docs-mogdb/v3.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/zh/docs-mogdb/v3.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 4d83428d..b5716f2f 100644 --- a/product/zh/docs-mogdb/v3.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/zh/docs-mogdb/v3.0/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -37,8 +37,6 @@ SQL执行计划是一个节点树,显示MogDB执行一条SQL语句时的详细 因此,当定位SQL运行慢问题时,如果SQL长时间运行未结束,建议通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出来,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及其实际的运行信息,以便更精准地定位问题原因。 -EXPLAIN PERFORMANCE轻量化执行方式与EXPLAIN PERFORMANCE保持一致,在原来的基础上减少了性能分析的时间,执行时间与SQL执行时间的差异显著减少 -
## 详解 diff --git a/product/zh/docs-mogdb/v3.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md b/product/zh/docs-mogdb/v3.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md index 4d83428d..b5716f2f 100644 --- a/product/zh/docs-mogdb/v3.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md +++ b/product/zh/docs-mogdb/v3.1/performance-tuning/2-sql/2-introduction-to-the-sql-execution-plan.md @@ -37,8 +37,6 @@ SQL执行计划是一个节点树,显示MogDB执行一条SQL语句时的详细 因此,当定位SQL运行慢问题时,如果SQL长时间运行未结束,建议通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出来,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及其实际的运行信息,以便更精准地定位问题原因。 -EXPLAIN PERFORMANCE轻量化执行方式与EXPLAIN PERFORMANCE保持一致,在原来的基础上减少了性能分析的时间,执行时间与SQL执行时间的差异显著减少 -
## 详解 diff --git a/product/zh/docs-mogdb/v5.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md b/product/zh/docs-mogdb/v5.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md index fb758225..1b811eeb 100644 --- a/product/zh/docs-mogdb/v5.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md +++ b/product/zh/docs-mogdb/v5.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md @@ -37,8 +37,6 @@ SQL执行计划是一个节点树,显示MogDB执行一条SQL语句时的详细 因此,当定位SQL运行慢问题时,如果SQL长时间运行未结束,建议通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出来,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及其实际的运行信息,以便更精准地定位问题原因。 -EXPLAIN PERFORMANCE轻量化执行方式与EXPLAIN PERFORMANCE保持一致,在原来的基础上减少了性能分析的时间,执行时间与SQL执行时间的差异显著减少 -
## 详解 diff --git a/product/zh/docs-mogdb/v5.2/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md b/product/zh/docs-mogdb/v5.2/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md index fb758225..1b811eeb 100644 --- a/product/zh/docs-mogdb/v5.2/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md +++ b/product/zh/docs-mogdb/v5.2/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md @@ -37,8 +37,6 @@ SQL执行计划是一个节点树,显示MogDB执行一条SQL语句时的详细 因此,当定位SQL运行慢问题时,如果SQL长时间运行未结束,建议通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出来,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及其实际的运行信息,以便更精准地定位问题原因。 -EXPLAIN PERFORMANCE轻量化执行方式与EXPLAIN PERFORMANCE保持一致,在原来的基础上减少了性能分析的时间,执行时间与SQL执行时间的差异显著减少 -
## 详解 diff --git a/product/zh/docs-mogdb/v6.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md b/product/zh/docs-mogdb/v6.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md index fb758225..1b811eeb 100644 --- a/product/zh/docs-mogdb/v6.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md +++ b/product/zh/docs-mogdb/v6.0/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md @@ -37,8 +37,6 @@ SQL执行计划是一个节点树,显示MogDB执行一条SQL语句时的详细 因此,当定位SQL运行慢问题时,如果SQL长时间运行未结束,建议通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出来,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及其实际的运行信息,以便更精准地定位问题原因。 -EXPLAIN PERFORMANCE轻量化执行方式与EXPLAIN PERFORMANCE保持一致,在原来的基础上减少了性能分析的时间,执行时间与SQL执行时间的差异显著减少 -
## 详解 -- Gitee From 5f31b79bb8f1b30570118ac348dda4bcff51ae12 Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Tue, 3 Sep 2024 15:05:44 +0800 Subject: [PATCH 4/6] fix(mogdb):links --- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- .../use-gui-tools-to-access-mogdb.md | 2 +- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- .../datastudio.md | 2 +- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- .../datastudio.md | 2 +- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- .../datastudio.md | 2 +- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- .../high-performance/1-cbo-optimizer.md | 6 +--- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- .../sql-tuning/sql-tuning-optimizer.md | 30 ------------------- .../sql-tuning/sql-tuning.md | 1 - product/en/docs-mogdb/v5.2/toc.md | 1 - product/en/docs-mogdb/v5.2/toc_performance.md | 1 - .../high-performance/1-cbo-optimizer.md | 6 +--- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- .../sql-tuning/sql-tuning-optimizer.md | 30 ------------------- .../sql-tuning/sql-tuning.md | 1 - product/en/docs-mogdb/v6.0/toc.md | 1 - product/en/docs-mogdb/v6.0/toc_performance.md | 1 - ...nfiguring-a-data-source-in-the-linux-os.md | 6 +++- ...nfiguring-a-data-source-in-the-linux-os.md | 6 +++- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- ...nfiguring-a-data-source-in-the-linux-os.md | 2 +- .../high-performance/1-cbo-optimizer.md | 6 +--- .../high-performance/1-cbo-optimizer.md | 6 +--- .../high-performance/1-cbo-optimizer.md | 6 +--- 28 files changed, 28 insertions(+), 106 deletions(-) delete mode 100644 product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/sql-tuning-optimizer.md delete mode 100644 product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/sql-tuning-optimizer.md diff --git a/product/en/docs-mogdb/v2.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/en/docs-mogdb/v2.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index 8197ee24..31051fe3 100644 --- a/product/en/docs-mogdb/v2.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/en/docs-mogdb/v2.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,7 @@ The ODBC driver (psqlodbcw.so) provided by MogDB can be used after it has been c 1. Obtain the source code package of unixODBC. Try the following link: - + [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) After the download, validate the integrity based on the integrity validation algorithm provided by the community. diff --git a/product/en/docs-mogdb/v2.0/quick-start/mogdb-access/use-gui-tools-to-access-mogdb.md b/product/en/docs-mogdb/v2.0/quick-start/mogdb-access/use-gui-tools-to-access-mogdb.md index 40bf463b..3c6df6eb 100644 --- a/product/en/docs-mogdb/v2.0/quick-start/mogdb-access/use-gui-tools-to-access-mogdb.md +++ b/product/en/docs-mogdb/v2.0/quick-start/mogdb-access/use-gui-tools-to-access-mogdb.md @@ -66,7 +66,7 @@ Java 1.8.0_181 or later > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **Note:** > -> * Please refer to [https://www.java.com/en/download/help/path.html](https://www.java.com/en/download/help/path.html) to set the Java Home path. +> * Please refer to [java.com](https://www.java.com/en/download/help/path.html) to set the Java Home path. > * To ensure the optimal experience, the recommended minimum screen resolution is 1080 x 768. Below this resolution, the interface will be abnormal.
diff --git a/product/en/docs-mogdb/v2.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/en/docs-mogdb/v2.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index 192d9451..bd16552a 100644 --- a/product/en/docs-mogdb/v2.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/en/docs-mogdb/v2.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,7 @@ The ODBC driver (psqlodbcw.so) provided by MogDB can be used after it has been c 1. Obtain the source code package of unixODBC by following link: - + [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) After the download, validate the integrity based on the integrity validation algorithm provided by the community. diff --git a/product/en/docs-mogdb/v2.1/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md b/product/en/docs-mogdb/v2.1/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md index 827071a7..a3604e1d 100644 --- a/product/en/docs-mogdb/v2.1/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md +++ b/product/en/docs-mogdb/v2.1/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md @@ -64,7 +64,7 @@ Java 1.8.0_181 or later > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **Note:** > -> * Please refer to [https://www.java.com/en/download/help/path.html](https://www.java.com/en/download/help/path.html) to set the Java Home path. +> * Please refer to [java.com](https://www.java.com/en/download/help/path.html) to set the Java Home path. > * To ensure the optimal experience, the recommended minimum screen resolution is 1080 x 768. Below this resolution, the interface will be abnormal.
diff --git a/product/en/docs-mogdb/v3.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/en/docs-mogdb/v3.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index a5be42b5..0d14c66e 100644 --- a/product/en/docs-mogdb/v3.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/en/docs-mogdb/v3.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,7 @@ The ODBC driver (psqlodbcw.so) provided by MogDB can be used after it has been c 1. Obtain the source code package of unixODBC by following link: - + [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) After the download, validate the integrity based on the integrity validation algorithm provided by the community. diff --git a/product/en/docs-mogdb/v3.0/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md b/product/en/docs-mogdb/v3.0/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md index 827071a7..a3604e1d 100644 --- a/product/en/docs-mogdb/v3.0/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md +++ b/product/en/docs-mogdb/v3.0/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md @@ -64,7 +64,7 @@ Java 1.8.0_181 or later > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **Note:** > -> * Please refer to [https://www.java.com/en/download/help/path.html](https://www.java.com/en/download/help/path.html) to set the Java Home path. +> * Please refer to [java.com](https://www.java.com/en/download/help/path.html) to set the Java Home path. > * To ensure the optimal experience, the recommended minimum screen resolution is 1080 x 768. Below this resolution, the interface will be abnormal.
diff --git a/product/en/docs-mogdb/v3.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/en/docs-mogdb/v3.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index bf99262e..b3eb23f8 100644 --- a/product/en/docs-mogdb/v3.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/en/docs-mogdb/v3.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,7 @@ The ODBC driver (psqlodbcw.so) provided by MogDB can be used after it has been c 1. Obtain the source code package of unixODBC by following link: - + [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) After the download, validate the integrity based on the integrity validation algorithm provided by the community. diff --git a/product/en/docs-mogdb/v3.1/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md b/product/en/docs-mogdb/v3.1/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md index 827071a7..a3604e1d 100644 --- a/product/en/docs-mogdb/v3.1/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md +++ b/product/en/docs-mogdb/v3.1/quick-start/mogdb-access/use-gui-tools-to-access-mogdb/datastudio.md @@ -64,7 +64,7 @@ Java 1.8.0_181 or later > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **Note:** > -> * Please refer to [https://www.java.com/en/download/help/path.html](https://www.java.com/en/download/help/path.html) to set the Java Home path. +> * Please refer to [java.com](https://www.java.com/en/download/help/path.html) to set the Java Home path. > * To ensure the optimal experience, the recommended minimum screen resolution is 1080 x 768. Below this resolution, the interface will be abnormal.
diff --git a/product/en/docs-mogdb/v5.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/en/docs-mogdb/v5.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index 69a32f00..6038f7ae 100644 --- a/product/en/docs-mogdb/v5.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/en/docs-mogdb/v5.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,7 @@ The ODBC driver (psqlodbcw.so) provided by MogDB can be used after it has been c 1. Obtain the source code package of unixODBC by following link: - + [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) After the download, validate the integrity based on the integrity validation algorithm provided by the community. diff --git a/product/en/docs-mogdb/v5.2/characteristic-description/high-performance/1-cbo-optimizer.md b/product/en/docs-mogdb/v5.2/characteristic-description/high-performance/1-cbo-optimizer.md index 6db24fa0..089cd4b8 100644 --- a/product/en/docs-mogdb/v5.2/characteristic-description/high-performance/1-cbo-optimizer.md +++ b/product/en/docs-mogdb/v5.2/characteristic-description/high-performance/1-cbo-optimizer.md @@ -33,8 +33,4 @@ None ## Dependencies -None - -## Related Pages - -[Optimizer](../../performance-tuning/sql-tuning/sql-tuning-optimizer.md) \ No newline at end of file +None \ No newline at end of file diff --git a/product/en/docs-mogdb/v5.2/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/en/docs-mogdb/v5.2/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index 69a32f00..6038f7ae 100644 --- a/product/en/docs-mogdb/v5.2/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/en/docs-mogdb/v5.2/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,7 @@ The ODBC driver (psqlodbcw.so) provided by MogDB can be used after it has been c 1. Obtain the source code package of unixODBC by following link: - + [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) After the download, validate the integrity based on the integrity validation algorithm provided by the community. diff --git a/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/sql-tuning-optimizer.md b/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/sql-tuning-optimizer.md deleted file mode 100644 index 7259af48..00000000 --- a/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/sql-tuning-optimizer.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: Optimizer -summary: Optimizer -author: zhang cuiping -date: 2023-08-11 ---- - -# Optimizer - -Optimizer aims to create an optimized execution plan. A certain SQL query (query tree) can be actually executed in multiple modes, in which the same result set will generate. If possible, a query optimizer may check each possible execution plan and finally choose the one run in highest peed. - -> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif)**Note**: In some cases, checking all possible execution modes of a query may cost much time and memory, especially for some queries in execution that involve a large number of connection operations. Optimizer is used to judge a proper query plan instead of an optimized query plan in proper time. - -An optimizer works with the data structure called paths. The data structure is a planned simplified version, including necessary information used for decisions making by an optimizer. After finding an economical path, it will make an integrated plan tree to pass it to an executor. It includes enough details, that is the plans to be executed, which can be read by the executor and run. In the following sections, the distinctions between paths and plans are ignored. - -## A Possible Plan Generated - -The optimizer generates a plan for each relation (table) that appears in the scan query. The possible plans are determined by indexes available for each relation. A sequential search is always possible once for a relation, so a sequential search plan is always created. Suppose there is an index defined on a relation (such as a BTree index) and a query contains the constraint `relation.attribute OPR constant`. If `relation.attribute` happens to match a keyword in a BTree index and `OPR` is one of the operators listed in the operator class of the index, then another plan will be created that scans the relation using the B-tree index. If there are other indexes, and the constraints in the query match the keywords in that index, more plans will be generated. - -If the query asks to link two or more relations, the plan for the linked relation will not be considered until all feasible plans have been found while scanning a single relation. There are three possible join strategies: - -- Nested loop join: The right relation is scanned once for each row found in the left relation. This strategy is easy to implement, but can be time-consuming. However, if the right relation can be scanned with an index, then this might be a good strategy. The index scan of the right relation can be performed using the number from the current row of the left relation as the key. -- Merge join: Before the join starts, each relation sorts the join fields. The two relations are then scanned concurrently, and the matching rows are combined to form the join row. This union is more attractive because each relation is scanned only once. The required sorting step can be done either by an explicit sorting step or by scanning the relations in the appropriate order using the index on the join key. -- Hash join: First the right relation is scanned and loaded into a Hash table with the joined field as a hash key, then the left relation is scanned and each row found is used as a hash key to locate the matching row in the table. - -If there are more than two relations in a query, the final result must be built through a tree of join steps, each with two inputs. The optimizer examines the possible join orders and finds the one with the least cost. - -If the query uses fewer relations than geqo_threshold, a near-exhaustive search is run in order to find the best access sequence. The planner will prefer to connect between any two relationships that have a corresponding entry clause in the `WHERE` qualification (eg. there is a relationship like `where rel1.attr1=rel2.attr2`). Consider joining only when there is no other choices. There is no join clause for a particular relation, that is, no join clause is available for another relation. The planner thinks of all possible plans for each joining pair, and one of the criteria for choosing a plan is (presumably) to choose the cheapest one. - -The finished query tree consists of a sequential or index scan of the underlying relation, plus nested loop, merge, and hash join nodes as needed, plus any auxiliary steps needed, such as sort nodes or aggregate function calculation nodes. Most of these planning node types have additional *selection* (discard rows that don't match a specified boolean condition) and *projection* (compute a derived set of fields based on the given field values, that is to compute a scalar expression if needed). One responsibility of the optimizer is to attach a selection condition from the `WHERE` clause and the output expression needed to compute the most appropriate node for the plan tree. \ No newline at end of file diff --git a/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/sql-tuning.md b/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/sql-tuning.md index 77387320..7690c5a2 100644 --- a/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/sql-tuning.md +++ b/product/en/docs-mogdb/v5.2/performance-tuning/sql-tuning/sql-tuning.md @@ -7,7 +7,6 @@ date: 2023-08-11 # SQL Optimization -- **[Optimizer](sql-tuning-optimizer.md)** - **[Query Execution Process](query-execution-process.md)** - **[Introduction to the SQL Execution Plan](introduction-to-the-sql-execution-plan.md)** - **[Tuning Process](tuning-process.md)** diff --git a/product/en/docs-mogdb/v5.2/toc.md b/product/en/docs-mogdb/v5.2/toc.md index 7aedd1a1..8fb38145 100644 --- a/product/en/docs-mogdb/v5.2/toc.md +++ b/product/en/docs-mogdb/v5.2/toc.md @@ -729,7 +729,6 @@ + [Setting a Cgroup](./performance-tuning/system-tuning/resource-load-management/resource-management-preparations/setting-control-group.md) + [Creating a Resource Pool](/performance-tuning/system-tuning/resource-load-management/resource-management-preparations/creating-resource-pool.md) + [SQL Optimization](/performance-tuning/sql-tuning/sql-tuning.md) - + [Optimizer]( ./performance-tuning/sql-tuning/sql-tuning-optimizer.md) + [Query Execution Process](/performance-tuning/sql-tuning/query-execution-process.md) + [Introduction to the SQL Execution Plan](/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md) + [Tuning Process](/performance-tuning/sql-tuning/tuning-process.md) diff --git a/product/en/docs-mogdb/v5.2/toc_performance.md b/product/en/docs-mogdb/v5.2/toc_performance.md index 131fca45..c5195ad5 100644 --- a/product/en/docs-mogdb/v5.2/toc_performance.md +++ b/product/en/docs-mogdb/v5.2/toc_performance.md @@ -18,7 +18,6 @@ + [Setting a Cgroup](/performance-tuning/system-tuning/resource-load-management/resource-management-preparations/setting-control-group.md) + [Creating a Resource Pool](/performance-tuning/system-tuning/resource-load-management/resource-management-preparations/creating-resource-pool.md) + [SQL Optimization](/performance-tuning/sql-tuning/sql-tuning.md) - + [Optimizer]( ./performance-tuning/sql-tuning/sql-tuning-optimizer.md) + [Query Execution Process](/performance-tuning/sql-tuning/query-execution-process.md) + [Introduction to the SQL Execution Plan](/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md) + [Tuning Process](/performance-tuning/sql-tuning/tuning-process.md) diff --git a/product/en/docs-mogdb/v6.0/characteristic-description/high-performance/1-cbo-optimizer.md b/product/en/docs-mogdb/v6.0/characteristic-description/high-performance/1-cbo-optimizer.md index 6db24fa0..089cd4b8 100644 --- a/product/en/docs-mogdb/v6.0/characteristic-description/high-performance/1-cbo-optimizer.md +++ b/product/en/docs-mogdb/v6.0/characteristic-description/high-performance/1-cbo-optimizer.md @@ -33,8 +33,4 @@ None ## Dependencies -None - -## Related Pages - -[Optimizer](../../performance-tuning/sql-tuning/sql-tuning-optimizer.md) \ No newline at end of file +None \ No newline at end of file diff --git a/product/en/docs-mogdb/v6.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/en/docs-mogdb/v6.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index 69a32f00..6038f7ae 100644 --- a/product/en/docs-mogdb/v6.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/en/docs-mogdb/v6.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,7 @@ The ODBC driver (psqlodbcw.so) provided by MogDB can be used after it has been c 1. Obtain the source code package of unixODBC by following link: - + [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) After the download, validate the integrity based on the integrity validation algorithm provided by the community. diff --git a/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/sql-tuning-optimizer.md b/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/sql-tuning-optimizer.md deleted file mode 100644 index 7259af48..00000000 --- a/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/sql-tuning-optimizer.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: Optimizer -summary: Optimizer -author: zhang cuiping -date: 2023-08-11 ---- - -# Optimizer - -Optimizer aims to create an optimized execution plan. A certain SQL query (query tree) can be actually executed in multiple modes, in which the same result set will generate. If possible, a query optimizer may check each possible execution plan and finally choose the one run in highest peed. - -> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif)**Note**: In some cases, checking all possible execution modes of a query may cost much time and memory, especially for some queries in execution that involve a large number of connection operations. Optimizer is used to judge a proper query plan instead of an optimized query plan in proper time. - -An optimizer works with the data structure called paths. The data structure is a planned simplified version, including necessary information used for decisions making by an optimizer. After finding an economical path, it will make an integrated plan tree to pass it to an executor. It includes enough details, that is the plans to be executed, which can be read by the executor and run. In the following sections, the distinctions between paths and plans are ignored. - -## A Possible Plan Generated - -The optimizer generates a plan for each relation (table) that appears in the scan query. The possible plans are determined by indexes available for each relation. A sequential search is always possible once for a relation, so a sequential search plan is always created. Suppose there is an index defined on a relation (such as a BTree index) and a query contains the constraint `relation.attribute OPR constant`. If `relation.attribute` happens to match a keyword in a BTree index and `OPR` is one of the operators listed in the operator class of the index, then another plan will be created that scans the relation using the B-tree index. If there are other indexes, and the constraints in the query match the keywords in that index, more plans will be generated. - -If the query asks to link two or more relations, the plan for the linked relation will not be considered until all feasible plans have been found while scanning a single relation. There are three possible join strategies: - -- Nested loop join: The right relation is scanned once for each row found in the left relation. This strategy is easy to implement, but can be time-consuming. However, if the right relation can be scanned with an index, then this might be a good strategy. The index scan of the right relation can be performed using the number from the current row of the left relation as the key. -- Merge join: Before the join starts, each relation sorts the join fields. The two relations are then scanned concurrently, and the matching rows are combined to form the join row. This union is more attractive because each relation is scanned only once. The required sorting step can be done either by an explicit sorting step or by scanning the relations in the appropriate order using the index on the join key. -- Hash join: First the right relation is scanned and loaded into a Hash table with the joined field as a hash key, then the left relation is scanned and each row found is used as a hash key to locate the matching row in the table. - -If there are more than two relations in a query, the final result must be built through a tree of join steps, each with two inputs. The optimizer examines the possible join orders and finds the one with the least cost. - -If the query uses fewer relations than geqo_threshold, a near-exhaustive search is run in order to find the best access sequence. The planner will prefer to connect between any two relationships that have a corresponding entry clause in the `WHERE` qualification (eg. there is a relationship like `where rel1.attr1=rel2.attr2`). Consider joining only when there is no other choices. There is no join clause for a particular relation, that is, no join clause is available for another relation. The planner thinks of all possible plans for each joining pair, and one of the criteria for choosing a plan is (presumably) to choose the cheapest one. - -The finished query tree consists of a sequential or index scan of the underlying relation, plus nested loop, merge, and hash join nodes as needed, plus any auxiliary steps needed, such as sort nodes or aggregate function calculation nodes. Most of these planning node types have additional *selection* (discard rows that don't match a specified boolean condition) and *projection* (compute a derived set of fields based on the given field values, that is to compute a scalar expression if needed). One responsibility of the optimizer is to attach a selection condition from the `WHERE` clause and the output expression needed to compute the most appropriate node for the plan tree. \ No newline at end of file diff --git a/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/sql-tuning.md b/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/sql-tuning.md index 77387320..7690c5a2 100644 --- a/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/sql-tuning.md +++ b/product/en/docs-mogdb/v6.0/performance-tuning/sql-tuning/sql-tuning.md @@ -7,7 +7,6 @@ date: 2023-08-11 # SQL Optimization -- **[Optimizer](sql-tuning-optimizer.md)** - **[Query Execution Process](query-execution-process.md)** - **[Introduction to the SQL Execution Plan](introduction-to-the-sql-execution-plan.md)** - **[Tuning Process](tuning-process.md)** diff --git a/product/en/docs-mogdb/v6.0/toc.md b/product/en/docs-mogdb/v6.0/toc.md index 479033f5..4a8e1315 100644 --- a/product/en/docs-mogdb/v6.0/toc.md +++ b/product/en/docs-mogdb/v6.0/toc.md @@ -730,7 +730,6 @@ + [Setting a Cgroup](./performance-tuning/system-tuning/resource-load-management/resource-management-preparations/setting-control-group.md) + [Creating a Resource Pool](/performance-tuning/system-tuning/resource-load-management/resource-management-preparations/creating-resource-pool.md) + [SQL Optimization](/performance-tuning/sql-tuning/sql-tuning.md) - + [Optimizer]( ./performance-tuning/sql-tuning/sql-tuning-optimizer.md) + [Query Execution Process](/performance-tuning/sql-tuning/query-execution-process.md) + [Introduction to the SQL Execution Plan](/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md) + [Tuning Process](/performance-tuning/sql-tuning/tuning-process.md) diff --git a/product/en/docs-mogdb/v6.0/toc_performance.md b/product/en/docs-mogdb/v6.0/toc_performance.md index f1b70a71..b22e367e 100644 --- a/product/en/docs-mogdb/v6.0/toc_performance.md +++ b/product/en/docs-mogdb/v6.0/toc_performance.md @@ -19,7 +19,6 @@ + [Setting a Cgroup](/performance-tuning/system-tuning/resource-load-management/resource-management-preparations/setting-control-group.md) + [Creating a Resource Pool](/performance-tuning/system-tuning/resource-load-management/resource-management-preparations/creating-resource-pool.md) + [SQL Optimization](/performance-tuning/sql-tuning/sql-tuning.md) - + [Optimizer]( ./performance-tuning/sql-tuning/sql-tuning-optimizer.md) + [Query Execution Process](/performance-tuning/sql-tuning/query-execution-process.md) + [Introduction to the SQL Execution Plan](/performance-tuning/sql-tuning/introduction-to-the-sql-execution-plan.md) + [Tuning Process](/performance-tuning/sql-tuning/tuning-process.md) diff --git a/product/zh/docs-mogdb/v2.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/zh/docs-mogdb/v2.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index 3c79759b..1503b326 100644 --- a/product/zh/docs-mogdb/v2.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/zh/docs-mogdb/v2.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,11 @@ date: 2021-06-16 ## 操作步骤 -1. 获取unixODBC源码包。获取参考地址: 下载后请先按照社区提供的完整性校验算法进行完整性校验。 +1. 获取unixODBC源码包。获取参考地址: + + [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) + + 下载后请先按照社区提供的完整性校验算法进行完整性校验。 2. 安装unixODBC。如果机器上已经安装了其他版本的unixODBC,可以直接覆盖安装。 diff --git a/product/zh/docs-mogdb/v2.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/zh/docs-mogdb/v2.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index 60f50686..9185772b 100644 --- a/product/zh/docs-mogdb/v2.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/zh/docs-mogdb/v2.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -13,7 +13,11 @@ date: 2021-06-16 ## 操作步骤 -1. 获取unixODBC源码包。获取参考地址: 下载后请先按照社区提供的完整性校验算法进行完整性校验。 +1. 获取unixODBC源码包。 + + 获取参考地址: [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) + + 下载后请先按照社区提供的完整性校验算法进行完整性校验。 2. 安装unixODBC。如果机器上已经安装了其他版本的unixODBC,可以直接覆盖安装。 diff --git a/product/zh/docs-mogdb/v3.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/zh/docs-mogdb/v3.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index cbe1bcae..988606c7 100644 --- a/product/zh/docs-mogdb/v3.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/zh/docs-mogdb/v3.0/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -15,7 +15,7 @@ date: 2021-06-16 1. 获取unixODBC源码包。 - 获取参考地址: + 获取参考地址: [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) 下载后请先按照社区提供的完整性校验算法进行完整性校验。 diff --git a/product/zh/docs-mogdb/v3.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md b/product/zh/docs-mogdb/v3.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md index ff0c2438..3ffd3362 100644 --- a/product/zh/docs-mogdb/v3.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md +++ b/product/zh/docs-mogdb/v3.1/developer-guide/dev/3-development-based-on-odbc/3-configuring-a-data-source-in-the-linux-os.md @@ -15,7 +15,7 @@ date: 2021-06-16 1. 获取unixODBC源码包。 - 获取参考地址: + 获取参考地址: [https://sourceforge.net/projects/unixodbc/files/unixODBC](https://sourceforge.net/projects/unixodbc/files/unixODBC) 下载后请先按照社区提供的完整性校验算法进行完整性校验。 diff --git a/product/zh/docs-mogdb/v5.0/characteristic-description/high-performance/1-cbo-optimizer.md b/product/zh/docs-mogdb/v5.0/characteristic-description/high-performance/1-cbo-optimizer.md index aaa84618..a907ed92 100644 --- a/product/zh/docs-mogdb/v5.0/characteristic-description/high-performance/1-cbo-optimizer.md +++ b/product/zh/docs-mogdb/v5.0/characteristic-description/high-performance/1-cbo-optimizer.md @@ -33,8 +33,4 @@ MogDB CBO优化器能够在众多计划中依据代价选出最高效的执行 ## 依赖关系 -无。 - -## 相关页面 - -[优化器](../../performance-tuning/sql-tuning/sql-tuning-optimizer.md) \ No newline at end of file +无。 \ No newline at end of file diff --git a/product/zh/docs-mogdb/v5.2/characteristic-description/high-performance/1-cbo-optimizer.md b/product/zh/docs-mogdb/v5.2/characteristic-description/high-performance/1-cbo-optimizer.md index aaa84618..a907ed92 100644 --- a/product/zh/docs-mogdb/v5.2/characteristic-description/high-performance/1-cbo-optimizer.md +++ b/product/zh/docs-mogdb/v5.2/characteristic-description/high-performance/1-cbo-optimizer.md @@ -33,8 +33,4 @@ MogDB CBO优化器能够在众多计划中依据代价选出最高效的执行 ## 依赖关系 -无。 - -## 相关页面 - -[优化器](../../performance-tuning/sql-tuning/sql-tuning-optimizer.md) \ No newline at end of file +无。 \ No newline at end of file diff --git a/product/zh/docs-mogdb/v6.0/characteristic-description/high-performance/1-cbo-optimizer.md b/product/zh/docs-mogdb/v6.0/characteristic-description/high-performance/1-cbo-optimizer.md index aaa84618..a907ed92 100644 --- a/product/zh/docs-mogdb/v6.0/characteristic-description/high-performance/1-cbo-optimizer.md +++ b/product/zh/docs-mogdb/v6.0/characteristic-description/high-performance/1-cbo-optimizer.md @@ -33,8 +33,4 @@ MogDB CBO优化器能够在众多计划中依据代价选出最高效的执行 ## 依赖关系 -无。 - -## 相关页面 - -[优化器](../../performance-tuning/sql-tuning/sql-tuning-optimizer.md) \ No newline at end of file +无。 \ No newline at end of file -- Gitee From 9d8dce778cadab8910c35f3c5f7f54f53fca3e46 Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Tue, 3 Sep 2024 15:18:41 +0800 Subject: [PATCH 5/6] fix(mogdb):image --- .../v6.3/basic-features/tenant-proxy-nodes-management.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/product/zh/docs-zcloud-for-mogdb/v6.3/basic-features/tenant-proxy-nodes-management.md b/product/zh/docs-zcloud-for-mogdb/v6.3/basic-features/tenant-proxy-nodes-management.md index 78d4ccf7..87695432 100644 --- a/product/zh/docs-zcloud-for-mogdb/v6.3/basic-features/tenant-proxy-nodes-management.md +++ b/product/zh/docs-zcloud-for-mogdb/v6.3/basic-features/tenant-proxy-nodes-management.md @@ -10,7 +10,7 @@ date: 2024-08-12 设置-->资源池管理-->Proxy节点管理 -![img](file:///C:\Users\Haruna\AppData\Local\Temp\ksohtml12624\wps115.jpg) +![img](https://cdn-mogdb.enmotech.com/docs-media/zcloud-for-mogdb/basic-features/basic-features-229.png) ## 功能说明 @@ -28,6 +28,6 @@ date: 2024-08-12 点击“部署”,选择“加入到已有的Proxy集群”,下拉选择要加入的Proxy。 -![img](file:///C:\Users\Haruna\AppData\Local\Temp\ksohtml12624\wps116.jpg) +![img](https://cdn-mogdb.enmotech.com/docs-media/zcloud-for-mogdb/basic-features/basic-features-230.png) 输入Proxy节点信息:IP地址、SSH端口、Proxy管理端口、服务器Root或者sudo 权限的用户、密码。 -- Gitee From 3c68c19d3a44e20e23b578b0d3929c34c8f3bb18 Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Wed, 4 Sep 2024 17:25:18 +0800 Subject: [PATCH 6/6] =?UTF-8?q?fix(mogdb):=E4=BF=AE=E6=AD=A3enable=5Ftrans?= =?UTF-8?q?action=5Fread=5Fonly=E9=BB=98=E8=AE=A4=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tool-reference/unified-database-management-tool.md | 2 +- .../reference-guide/guc-parameters/cm-parameters/cm_server.md | 2 +- .../introduction-to-cm-configuration-parameter.md | 2 +- .../cm-configuration-parameter/cm-cm_server.md | 2 +- .../cm-configuration-parameter/cm-cm_server.md | 2 +- .../cm-configuration-parameter/cm-cm_server.md | 2 +- .../tool-reference/unified-database-management-tool.md | 2 +- .../reference-guide/guc-parameters/cm-parameters/cm_server.md | 2 +- .../introduction-to-cm-configuration-parameter.md | 2 +- .../cm-configuration-parameter/cm-cm_server.md | 2 +- .../cm-configuration-parameter/cm-cm_server.md | 2 +- .../cm-configuration-parameter/cm-cm_server.md | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/product/en/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md b/product/en/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md index f7b31057..fb930696 100644 --- a/product/en/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md +++ b/product/en/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md @@ -1483,7 +1483,7 @@ You can view cm_agent parameters in the `cm_agent.conf` file in the cm_agent dat **Value range**: Boolean values **on**, **off**, **true**, **false**, **yes**, **no**, **1**, and **0** The modification of this parameter takes effect after reloading. For details about how to modify the parameter, see [Parameters for set cm](#table9). -**Default value**: **on** +**Default value**: **off** #### datastorage_threshold_check_interval diff --git a/product/en/docs-mogdb/v3.1/reference-guide/guc-parameters/cm-parameters/cm_server.md b/product/en/docs-mogdb/v3.1/reference-guide/guc-parameters/cm-parameters/cm_server.md index 6b020d0a..94445c42 100644 --- a/product/en/docs-mogdb/v3.1/reference-guide/guc-parameters/cm-parameters/cm_server.md +++ b/product/en/docs-mogdb/v3.1/reference-guide/guc-parameters/cm-parameters/cm_server.md @@ -96,7 +96,7 @@ date: 2022-05-23 **Value range**: Boolean. The value can be on, off, true, false, yes, no, 1, and 0. For parameter modification, see [Table 2 Methods for setting GUC parameters](../../../reference-guide/guc-parameters/30-appendix.md). -**Default value**: **on** +**Default value**: **off** ## datastorage_threshold_check_interval diff --git a/product/en/docs-mogdb/v3.1/reference-guide/tool-reference/unified-database-management-tool/introduction-to-cm-configuration-parameter.md b/product/en/docs-mogdb/v3.1/reference-guide/tool-reference/unified-database-management-tool/introduction-to-cm-configuration-parameter.md index 88e7aab1..bb04dfa3 100644 --- a/product/en/docs-mogdb/v3.1/reference-guide/tool-reference/unified-database-management-tool/introduction-to-cm-configuration-parameter.md +++ b/product/en/docs-mogdb/v3.1/reference-guide/tool-reference/unified-database-management-tool/introduction-to-cm-configuration-parameter.md @@ -458,7 +458,7 @@ You can view cm_agent parameters in the `cm_agent.conf` file in the cm_agent dat **Value range**: Boolean values **on**, **off**, **true**, **false**, **yes**, **no**, **1**, and **0** The modification of this parameter takes effect after reloading. For details about how to modify the parameter, see [Parameters for set cm](introduction-to-cm_ctl.md). -**Default value**: **on** +**Default value**: **off** ### datastorage_threshold_check_interval diff --git a/product/en/docs-mogdb/v5.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md b/product/en/docs-mogdb/v5.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md index 493a4353..89a39d76 100644 --- a/product/en/docs-mogdb/v5.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md +++ b/product/en/docs-mogdb/v5.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md @@ -197,7 +197,7 @@ Parameter description: Specifies the basic duration of cm_server arbitration del **Value range**: Boolean values **on**, **off**, **true**, **false**, **yes**, **no**, **1**, and **0** The modification of this parameter takes effect after reloading. For details, see [Options of set cm](./../introduction-to-cm_ctl-tool.md#setcm). -**Default value**: **on** +**Default value**: **off** ## datastorage_threshold_check_interval diff --git a/product/en/docs-mogdb/v5.2/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md b/product/en/docs-mogdb/v5.2/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md index 493a4353..89a39d76 100644 --- a/product/en/docs-mogdb/v5.2/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md +++ b/product/en/docs-mogdb/v5.2/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md @@ -197,7 +197,7 @@ Parameter description: Specifies the basic duration of cm_server arbitration del **Value range**: Boolean values **on**, **off**, **true**, **false**, **yes**, **no**, **1**, and **0** The modification of this parameter takes effect after reloading. For details, see [Options of set cm](./../introduction-to-cm_ctl-tool.md#setcm). -**Default value**: **on** +**Default value**: **off** ## datastorage_threshold_check_interval diff --git a/product/en/docs-mogdb/v6.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md b/product/en/docs-mogdb/v6.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md index 493a4353..89a39d76 100644 --- a/product/en/docs-mogdb/v6.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md +++ b/product/en/docs-mogdb/v6.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md @@ -197,7 +197,7 @@ Parameter description: Specifies the basic duration of cm_server arbitration del **Value range**: Boolean values **on**, **off**, **true**, **false**, **yes**, **no**, **1**, and **0** The modification of this parameter takes effect after reloading. For details, see [Options of set cm](./../introduction-to-cm_ctl-tool.md#setcm). -**Default value**: **on** +**Default value**: **off** ## datastorage_threshold_check_interval diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md index fcb9b87c..51ae72fa 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md @@ -943,7 +943,7 @@ cm_agent相关参数可通过cm_agent数据目录下的cm_agent.conf文件查看 **取值范围**: 布尔型,有效值有on,off,true,false,yes,no,1,0。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 -**默认值**: on +**默认值**: off #### datastorage_threshold_check_interval diff --git a/product/zh/docs-mogdb/v3.1/reference-guide/guc-parameters/cm-parameters/cm_server.md b/product/zh/docs-mogdb/v3.1/reference-guide/guc-parameters/cm-parameters/cm_server.md index 9226d84f..9b7633a5 100644 --- a/product/zh/docs-mogdb/v3.1/reference-guide/guc-parameters/cm-parameters/cm_server.md +++ b/product/zh/docs-mogdb/v3.1/reference-guide/guc-parameters/cm-parameters/cm_server.md @@ -96,7 +96,7 @@ date: 2022-05-23 **取值范围**: 布尔型,有效值有on,off,true,false,yes,no,1,0。参数修改请参考[GUC参数设置方式](../../../reference-guide/guc-parameters/30-appendix.md)进行设置。 -**默认值**: on +**默认值**: off ## datastorage_threshold_check_interval diff --git a/product/zh/docs-mogdb/v3.1/reference-guide/tool-reference/unified-database-management-tool/introduction-to-cm-configuration-parameter.md b/product/zh/docs-mogdb/v3.1/reference-guide/tool-reference/unified-database-management-tool/introduction-to-cm-configuration-parameter.md index b3768cac..479312cf 100644 --- a/product/zh/docs-mogdb/v3.1/reference-guide/tool-reference/unified-database-management-tool/introduction-to-cm-configuration-parameter.md +++ b/product/zh/docs-mogdb/v3.1/reference-guide/tool-reference/unified-database-management-tool/introduction-to-cm-configuration-parameter.md @@ -458,7 +458,7 @@ cm_agent相关参数可通过cm_agent数据目录下的cm_agent.conf文件查看 **取值范围**: 布尔型,有效值有on,off,true,false,yes,no,1,0。修改后可以reload生效,参数修改请参考[cm_ctl工具介绍#表 set cm参数](introduction-to-cm_ctl.md)进行设置。 -**默认值**: on +**默认值**: off ### datastorage_threshold_check_interval diff --git a/product/zh/docs-mogdb/v5.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md b/product/zh/docs-mogdb/v5.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md index 8724ead3..edcbfc84 100644 --- a/product/zh/docs-mogdb/v5.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md +++ b/product/zh/docs-mogdb/v5.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md @@ -197,7 +197,7 @@ date: 2023-04-07 **取值范围**:布尔型,有效值有on,off,true,false,yes,no,1,0。修改后可以reload生效,参数修改请参考[表 set cm参数](./../introduction-to-cm_ctl-tool.md#setcm)进行设置。 -**默认值**:on +**默认值**:off ## datastorage_threshold_check_interval diff --git a/product/zh/docs-mogdb/v5.2/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md b/product/zh/docs-mogdb/v5.2/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md index 8724ead3..edcbfc84 100644 --- a/product/zh/docs-mogdb/v5.2/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md +++ b/product/zh/docs-mogdb/v5.2/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md @@ -197,7 +197,7 @@ date: 2023-04-07 **取值范围**:布尔型,有效值有on,off,true,false,yes,no,1,0。修改后可以reload生效,参数修改请参考[表 set cm参数](./../introduction-to-cm_ctl-tool.md#setcm)进行设置。 -**默认值**:on +**默认值**:off ## datastorage_threshold_check_interval diff --git a/product/zh/docs-mogdb/v6.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md b/product/zh/docs-mogdb/v6.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md index 87e23083..16f64f28 100644 --- a/product/zh/docs-mogdb/v6.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md +++ b/product/zh/docs-mogdb/v6.0/high-available-guide/cluster-management/cm-configuration-parameter/cm-cm_server.md @@ -197,7 +197,7 @@ date: 2023-04-07 **取值范围**:布尔型,有效值有on,off,true,false,yes,no,1,0。修改后可以reload生效,参数修改请参考[表 set cm参数](./../introduction-to-cm_ctl-tool.md#setcm)进行设置。 -**默认值**:on +**默认值**:off ## datastorage_threshold_check_interval -- Gitee