From 75fcaffd8a8e95521999df337825c96bb7ccab1d Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Tue, 7 Jun 2022 15:25:26 +0800 Subject: [PATCH 1/9] fix(mogdb):fix issue #I5AT4Y --- .../v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md | 2 +- .../v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md b/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md index 04e76489..e10e8569 100644 --- a/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md +++ b/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md @@ -111,7 +111,7 @@ In addition to the connection parameters supported by libpq, the following optio Create a server. ```sql -mogdb=# create server my_server foreign data wrapper log_fdw; +mogdb=# create server my_server foreign data wrapper file_fdw; CREATE SERVER ``` diff --git a/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md b/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md index c44ddf13..1102df18 100644 --- a/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md +++ b/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/58-CREATE-SERVER.md @@ -111,7 +111,7 @@ CreateServer ::= CREATE SERVER server_name 创建server。 ```sql -mogdb=# create server my_server foreign data wrapper log_fdw; +mogdb=# create server my_server foreign data wrapper file_fdw; CREATE SERVER ``` -- Gitee From 1d67a5eb7d6095c91122653127ed2ea9ddddb45d Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Tue, 7 Jun 2022 17:28:12 +0800 Subject: [PATCH 2/9] =?UTF-8?q?fix(mogdb):=E5=B9=B6=E8=A1=8C=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E5=A4=8D=E5=88=B6=E6=B7=BB=E5=8A=A0=E9=99=90=E5=88=B6?= =?UTF-8?q?=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../high-availability/12-parallel-logical-decoding.md | 1 + 1 file changed, 1 insertion(+) diff --git a/product/zh/docs-mogdb/v3.0/characteristic-description/high-availability/12-parallel-logical-decoding.md b/product/zh/docs-mogdb/v3.0/characteristic-description/high-availability/12-parallel-logical-decoding.md index 96be2f9c..934b73cd 100644 --- a/product/zh/docs-mogdb/v3.0/characteristic-description/high-availability/12-parallel-logical-decoding.md +++ b/product/zh/docs-mogdb/v3.0/characteristic-description/high-availability/12-parallel-logical-decoding.md @@ -46,6 +46,7 @@ date: 2022-05-10 15. 当前不支持超大CLOB解码。 16. 不允许主备,多个备机同时使用同一个复制槽解码,否则会产生数据不一致。 17. 禁止在使用逻辑复制槽时在其他节点对该复制槽进行操作,删除复制槽的操作需在该复制槽停止解码后执行。 +18. 仅支持内置'j'风格导出,不支持wal2json插件。 ## 依赖关系 -- Gitee From 10341762360b76efeceae6396a48b79cc600e9fa Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Wed, 8 Jun 2022 17:56:42 +0800 Subject: [PATCH 3/9] =?UTF-8?q?fix(mogdb):=E5=9F=BA=E4=BA=8EJDBC=E5=BC=80?= =?UTF-8?q?=E5=8F=91=E8=A1=A5=E5=85=85=E5=85=B3=E4=BA=8E=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E7=9A=84=E9=93=BE=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2-jdbc-package-driver-class-and-environment-class.md | 2 +- .../2-jdbc-package-driver-class-and-environment-class.md | 2 +- .../2-jdbc-package-driver-class-and-environment-class.md | 4 ++-- .../2-jdbc-package-driver-class-and-environment-class.md | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/product/en/docs-mogdb/v2.1/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md b/product/en/docs-mogdb/v2.1/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md index b2554780..cf9cc09a 100644 --- a/product/en/docs-mogdb/v2.1/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md +++ b/product/en/docs-mogdb/v2.1/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md @@ -30,7 +30,7 @@ Before establishing a database connection, load the **org.postgresql.Driver** da JDK 1.8 must be configured on the client. The configuration method is as follows: -1. In the MS-DOS window, run **java -version** to check the JDK version. Ensure that the version is JDK 1.8. If JDK is not installed, download the installation package from the official website and install it. +1. In the MS-DOS window, run **java -version** to check the JDK version. Ensure that the version is JDK 1.8. If JDK is not installed, download the installation package from the official website and install it. If the system environment JDK version is lower than 1.8, please refer to [Use WebSphere to Configure MogDB Data Sources](websphere-configures-mogdb(postgresql)-data-source-reference). 2. Configure system environment variables. diff --git a/product/en/docs-mogdb/v3.0/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md b/product/en/docs-mogdb/v3.0/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md index b2554780..cf9cc09a 100644 --- a/product/en/docs-mogdb/v3.0/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md +++ b/product/en/docs-mogdb/v3.0/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md @@ -30,7 +30,7 @@ Before establishing a database connection, load the **org.postgresql.Driver** da JDK 1.8 must be configured on the client. The configuration method is as follows: -1. In the MS-DOS window, run **java -version** to check the JDK version. Ensure that the version is JDK 1.8. If JDK is not installed, download the installation package from the official website and install it. +1. In the MS-DOS window, run **java -version** to check the JDK version. Ensure that the version is JDK 1.8. If JDK is not installed, download the installation package from the official website and install it. If the system environment JDK version is lower than 1.8, please refer to [Use WebSphere to Configure MogDB Data Sources](websphere-configures-mogdb(postgresql)-data-source-reference). 2. Configure system environment variables. diff --git a/product/zh/docs-mogdb/v2.1/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md b/product/zh/docs-mogdb/v2.1/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md index 9d8e5264..5e3fa49a 100644 --- a/product/zh/docs-mogdb/v2.1/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md +++ b/product/zh/docs-mogdb/v2.1/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md @@ -11,7 +11,7 @@ date: 2021-04-26 ## JDBC包 -在linux服务器端源代码目录下执行build.sh,获得驱动jar包postgresql.jar,包位置在源代码目录下。从发布包中获取, 包名为[openGauss-x.x.x-JDBC.tar.gz](https://opengauss.org/zh/download.html)。 +在linux服务器端源代码目录下执行build.sh,获得驱动jar包postgresql.jar,包位置在源代码目录下。从发布包中获取,包名为[openGauss-x.x.x-JDBC.tar.gz](https://opengauss.org/zh/download.html)。 驱动包与PostgreSQL保持兼容,其中类名、类结构与PostgreSQL驱动完全一致,曾经运行于PostgreSQL的应用程序可以直接移植到当前系统使用。 @@ -30,7 +30,7 @@ date: 2021-04-26 客户端需配置JDK1.8,配置方法如下: -1. DOS窗口输入"java -version",查看JDK版本,确认为JDK1.8版本。如果未安装JDK,请从官方网站下载安装包并安装。 +1. DOS窗口输入"java -version",查看JDK版本,确认为JDK1.8版本。如果未安装JDK,请从官方网站下载安装包并安装。若系统环境JDK版本低于1.8,请参考[WebSphere配置MogDB数据源参考](websphere-configures-mogdb(postgresql)-data-source-reference)。 2. 根据如下步骤配置系统环境变量。 diff --git a/product/zh/docs-mogdb/v3.0/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md b/product/zh/docs-mogdb/v3.0/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md index 29f70b34..0fdc667d 100644 --- a/product/zh/docs-mogdb/v3.0/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md +++ b/product/zh/docs-mogdb/v3.0/developer-guide/dev/2-development-based-on-jdbc/2-jdbc-package-driver-class-and-environment-class.md @@ -36,7 +36,7 @@ date: 2021-04-26 客户端需配置JDK1.8,配置方法如下: -1. DOS窗口输入"java -version",查看JDK版本,确认为JDK1.8版本。如果未安装JDK,请从官方网站下载安装包并安装。 +1. DOS窗口输入"java -version",查看JDK版本,确认为JDK1.8版本。如果未安装JDK,请从官方网站下载安装包并安装。若系统环境JDK版本低于1.8,请参考[WebSphere配置MogDB数据源参考](websphere-configures-mogdb(postgresql)-data-source-reference)。 2. 根据如下步骤配置系统环境变量。 -- Gitee From 13e134297f48bf5bf257483e3101d2acdc175f39 Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Thu, 9 Jun 2022 14:15:31 +0800 Subject: [PATCH 4/9] update(mogdb):tool reference --- .../tool-reference/client-tool.md | 12 +- .../functions-of-mogdb-executable-scripts.md | 52 + .../server-tools/0-gs_cgroup.md | 58 +- .../tool-reference/server-tools/1-gs_check.md | 34 +- .../tool-reference/server-tools/10-gs_ssh.md | 4 +- .../server-tools/2-gs_checkos.md | 12 +- .../server-tools/3-gs_checkperf.md | 42 +- .../server-tools/3.1-gs_clean.md | 28 +- .../server-tools/4-gs_collector.md | 18 +- .../tool-reference/server-tools/5-gs_dump.md | 174 +-- .../server-tools/6-gs_dumpall.md | 130 +- .../tool-reference/server-tools/7-gs_guc.md | 20 +- .../server-tools/7.1-gs_encrypt.md | 44 +- .../tool-reference/server-tools/8-gs_om.md | 95 +- .../server-tools/8.1-gs_plan_simulator.md | 2 +- .../server-tools/9-gs_restore.md | 108 +- ...ogs-and-views-supported-by-gs_collector.md | 82 +- .../1-gaussdb.md | 19 +- .../10-gs_tar.md | 4 +- .../11-gs_uninstall.md | 6 +- .../12-gs_upgradectl.md | 12 +- .../13-gs_expansion.md | 19 +- .../14-gs_dropnode.md | 4 +- .../15-gs_probackup.md | 187 +-- .../16-gstrace.md | 2 +- .../2-gs_backup.md | 28 +- .../23-pg_config.md | 48 +- .../24-pg_controldata.md | 4 +- .../24.1-pg_recvlogical.md | 104 +- .../25-pg_resetxlog.md | 4 +- .../26-pg_archivecleanup.md | 4 +- .../27-pssh.md | 2 +- .../28-pscp.md | 2 +- .../3-gs_basebackup.md | 42 +- .../4-gs_ctl.md | 111 +- .../5-gs_initdb.md | 35 +- .../6-gs_install.md | 14 +- .../7-gs_postuninstall.md | 18 +- .../8-gs_preinstall.md | 20 +- .../9-gs_sshexkey.md | 52 +- .../unified-database-management-tool.md | 1134 +++++++++++++++++ product/zh/docs-mogdb/v3.0/toc.md | 2 + .../v3.0/toc_parameters-and-tools.md | 4 +- 43 files changed, 2009 insertions(+), 787 deletions(-) create mode 100644 product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/functions-of-mogdb-executable-scripts.md create mode 100644 product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool.md index 0bfeaa45..573594d9 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool.md @@ -17,13 +17,13 @@ gsql是MogDB提供在命令行下运行的数据库连接工具,可以通过 **基本功能** -- **连接数据库:**详细操作请参见《管理指南》中“日常运维 > [gsql客户端连接](using-the-gsql-client-for-connection)”章节。 +- **连接数据库**:详细操作请参见《管理指南》中“日常运维 > [gsql客户端连接](using-the-gsql-client-for-connection)”章节。 > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** gsql创建连接时,数据库默认设置会有5分钟超时时间。如果在这个时间内,数据库未正确地接受连接并对身份进行认证,gsql将超时退出。 针对此问题,可以参考[常见问题处理](#常见问题处理)。 -- **执行SQL语句:**支持交互式地键入并执行SQL语句,也可以执行一个文件中指定的SQL语句。 +- **执行SQL语句**:支持交互式地键入并执行SQL语句,也可以执行一个文件中指定的SQL语句。 -- **执行元命令:**元命令可以帮助管理员查看数据库对象的信息、查询缓存区信息、格式化SQL输出结果,以及连接到新的数据库等。元命令的详细说明请参见[元命令参考](#元命令参考)。 +- **执行元命令**:元命令可以帮助管理员查看数据库对象的信息、查询缓存区信息、格式化SQL输出结果,以及连接到新的数据库等。元命令的详细说明请参见[元命令参考](#元命令参考)。 **高级特性** @@ -508,6 +508,8 @@ omm@[local] mogdb=# | -x, --expanded | 打开扩展表格式模式。 | - | | -z, --field-separator-zero | 设置非对齐输出模式的域分隔符为空。
使用时请搭配参数“-A, --no-align”,指定为非对齐输出模式。 | - | | -0, --record-separator-zero | 设置非对齐输出模式的记录分隔符为空。
使用时请搭配参数“-A, --no-align”,指定为非对齐输出模式。 | - | +| -2, --pipeline | 使用管道传输密码,禁止在终端使用,必须和-c或者-f参数一起使用。 | - | +| -g, | 打印来自文件的所有SQL。 | - | **表 10** 连接参数 @@ -544,7 +546,7 @@ omm@[local] mogdb=# | \\copyright | 显示MogDB的版本和版权信息。 | - | | \\g [FILE] or ; | 执行查询(并将结果发送到文件或管道)。 | - | | \\h(\\help) [NAME] | 给出指定SQL语句的语法帮助。 | 如果没有给出NAME,gsql将列出可获得帮助的所有命令。如果NAME是一个星号(*),则显示所有SQL语句的语法帮助。 | -| \\parallel [on [num]\|off] | 控制并发执行开关。
- on:打开控制并发执行开关,且最大并发数为num。
- off:关闭控制并发执行开关。
说明:
- 不支持事务中开启并发执行以及并发中开启事务。
- 不支持\\d这类元命令的并发。
- 并发select返回结果混乱问题,此为客户可接受,core、进程停止响应不可接受。
- 不推荐在并发中使用set语句,否则导致结果与预期不一致。
- 不支持创建临时表!如需使用临时表,需要在开启parallel之前创建好,并在parallel内部使用。parallel内部不允许创建临时表。
- \\parallel执行时最多会启动num个独立的gsql进程连接服务器。
- \\parallel中所有作业的持续时间不能超过session_timeout,否则可能会导致并发执行过程中断连。 | num的默认值:1024。
须知:
- 服务器能接受的最大连接数受max_connection及当前已有连接数限制。
- 设置num时请考虑服务器当前可接受的实际连接数合理指定。 | +| \\parallel [on [num]\|off] | 控制并发执行开关。
- on:打开控制并发执行开关,且最大并发数为num。
- off:关闭控制并发执行开关。
说明:
- 不支持事务中开启并发执行以及并发中开启事务。
- 不支持\\d这类元命令的并发。
- 并发select返回结果混乱问题,此为客户可接受,core、进程停止响应不可接受。
- 不推荐在并发中使用set语句,否则导致结果与预期不一致。
- 不支持创建临时表!如需使用临时表,需要在开启parallel之前创建好,并在parallel内部使用。parallel内部不允许创建临时表。
- \\parallel执行时最多会启动num个独立的gsql进程连接服务器。
- \\parallel中所有作业的持续时间不能超过session_timeout,否则可能会导致并发执行过程中断连。
- 在\parallel on 之后一条或多条命令,会等到\parallel off执行后才会执行,因而,每个\parallel on需对应一个\parallel off,否则会导致\parallel on之后的命令无法执行。 | num的默认值:1024。
须知:
- 服务器能接受的最大连接数受max_connection及当前已有连接数限制。
- 设置num时请考虑服务器当前可接受的实际连接数合理指定。 | | \\q | 退出gsql程序。在一个脚本文件里,只在脚本终止的时候执行。 | - | **表 12** 查询缓存区元命令 @@ -599,6 +601,7 @@ omm@[local] mogdb=# | \\dg[+] [PATTERN] | 列出所有数据库角色。
说明:
因为用户和群组的概念被统一为角色,所以这个命令等价于\\du。为了和以前兼容,所以保留两个命令。 | 如果指定了PATTERN,只显示名称匹配PATTERN的角色。 | 列出名称为‘j_e’所有数据库角色。
`mogdb=# \dg j?e` | | \\dl | \\lo_list的别名,显示一个大对象的列表。 | - | 列出所有的大对象。
`mogdb=# \dl` | | \\dL[S+] [PATTERN] | 列出可用的程序语言。 | 如果指定了PATTERN,只列出名称匹配PATTERN的语言。 | 列出可用的程序语言。
`mogdb=# \dL` | +| \dm | 列出物化视图。 | 如果指定了PATTERN,只列出名称匹配PATTERN的物化视图。 | 列出物化视图。
`mogdb=# \dm` | | \\dn[S+] [PATTERN] | 列出所有的模式(名称空间)。 | 如果声明了PATTERN,只列出名称匹配PATTERN的模式名。缺省时,只列出用户创建的模式。 | 列出所有名称以d开头的模式以及相关信息。
`mogdb=# \dn+ d*` | | \\do[S] [PATTERN] | 列出所有可用的操作符以及它们的操作数和返回的数据类型。 | 如果声明了PATTERN,只列出名称匹配PATTERN的操作符。缺省时,只列出用户创建的操作符。 | 列出所有可用的操作符以及它们的操作数和返回的数据类型。
`mogdb=# \do` | | \\dO[S+] [PATTERN] | 列出排序规则。 | 如果声明了PATTERN,只列出名称匹配PATTERN的规则。缺省时,只列出用户创建的规则。 | 列出排序规则。
`mogdb=# \dO` | @@ -666,6 +669,7 @@ omm@[local] mogdb=# | tableattr(或T) | 声明放在html输出格式中HTML table标签的属性(例如:cellpadding或bgcolor)。注意:这里可能不需要声明border,因为已经在\\pset border里用过了。如果没有给出value,则不设置表的属性。 | - | | title | 为随后打印的表设置标题。这个可以用于给输出一个描述性标签。如果没有给出value,不设置标题。 | - | | tuples_only (或者t) | 在完全显示和只显示实际的表数据之间切换。完全显示将输出像列头、标题、各种脚注等信息。在tuples_only模式下,只显示实际的表数据。 | - | +| feedback | 切换是否输出结果行数。 | - | **表 18** 连接元命令 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/functions-of-mogdb-executable-scripts.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/functions-of-mogdb-executable-scripts.md new file mode 100644 index 00000000..2e2556cb --- /dev/null +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/functions-of-mogdb-executable-scripts.md @@ -0,0 +1,52 @@ +--- +title: MogDB可运行脚本功能说明 +summary: MogDB可运行脚本功能说明 +author: Guo Huan +date: 2022-06-08 +--- + +# MogDB可运行脚本功能说明 + +以下是MogDB常用可执行脚本,仅供MogDB接口使用。 + +**表 1** 脚本功能说明 + +| 脚本明成 | 功能说明 | +| :----------------------- | :----------------------------------------------------------- | +| UpgradeUtility.py | 升级工具。 | +| KerberosUtility.py | 安装/卸载kerberos认证方式。 | +| Uninstall.py | 卸载数据库数据库实例。 | +| LocalCheck.py | 本地节点检查。 | +| Install.py | 安装数据库节点实例。 | +| CheckUninstall.py | 检查节点是否已卸载。 | +| PreInstallUtility.py | 前置工具。 | +| CleanInstance.py | 删除数据库实例。 | +| CleanOsUser.py | 删除节点Osuser。 | +| Resetreplconninfo.py | 是用于重置本地 Replconninfo。 | +| LocalPerformanceCheck.py | 检查SSD信息。 | +| CheckUpgrade.py | 升级之前检查节点环境变量。 | +| InitInstance.py | 初始化数据库。 | +| Backup.py | 备份二进制文件和参数文件。 | +| ConfigInstance.py | 配置数据库实例。 | +| CheckConfig.py | 检查节点配置信息。 | +| ConfigHba.py | 配置pghba.cong文件等。 | +| ExecuteSql.py | 执行数据库sql命令。 | +| LocalCheckOS.py | 检查本地OS信息。 | +| UnPreinstallUtility.py | 清除前置过程中的配置。 | +| CheckPreinstall.py | 检查节点是否已进行前置。 | +| CheckInstall.py | 检查节点安装信息。 | +| GaussStat.py | 统计数据库中的节点信息。 | +| CheckPythonVersion.py | 检查python版本。 | +| expect.sh | 自动输入交互密码。 | +| CheckSshAgent.py | 负责保护ssh互信中的ssh-agent进程,互信进程保护工具。 | +| LocalCollect.py | 收集本地的文件信息及参数信息。 | +| killall | killall是系统不存在killall命令时供om使用的自研工具,其替代部分系统killall功能。 | +| transfer.py | 用于将C函数lib文件传输到所有节点或备用节点。 | +| Restore.py | 恢复二进制文件和参数文件。 | +| StartInstance.py | 用于启动数据库。 | +| StopInstance.py | 用于停止数据库。 | +| py_pstree.py | 用于杀死进程。 | +| install.sh | 单节点安装脚本。 | +| one_master_one_slave.sh | 一主一备一键安装脚本。 | +| sshexkey_encrypt_tool.sh | 负责用ssh-keygen命令生成秘钥文件(经过密码短语加密)的脚本,互信工具专用。 | +| ssh-agent.sh | 负责拉起ssh-agent进程的shell脚本,互信模块专用。 | \ No newline at end of file diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/0-gs_cgroup.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/0-gs_cgroup.md index cb54bcbe..2cdfd3b4 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/0-gs_cgroup.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/0-gs_cgroup.md @@ -97,13 +97,13 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 gs_cgroup -S class -G wg -E "spillsize=256,broadcastsize=100" -a ``` - 3. 设置组Class下的作业在所有DN上CPU总时间到达100s时执行降级动作: + 3. 设置组Class下的作业在所有数据库节点上CPU总时间到达100s时执行降级动作: ```bash gs_cgroup -S class -E "allcputime=100" --penalty ``` - 4. 设置组Class下的作业在所有DN上执行时间到达2400秒,倾斜率达到90时执行降级动作: + 4. 设置组Class下的作业在所有数据库节点上执行时间到达2400秒,倾斜率达到90时执行降级动作: ```bash gs_cgroup -S class -E "qualificationtime=2400,cpuskewpercnt=90" @@ -121,7 +121,7 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 ``` > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-notice.gif) **须知:** - > Class或Workload核数范围必须通过指定-fixed参数设置。 + > Class或Workload核数范围必须通过指定--fixed参数设置。 7. 回退上一个步骤。 @@ -130,7 +130,7 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 ``` > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** - > -recover只支持对Class控制组和Workload控制组的增删改操作进行回退,且只支持回退一次操作。 + > --recover只支持对Class控制组和Workload控制组的增删改操作进行回退,且只支持回退一次操作。 8. 查看已创建的控制组信息。 @@ -179,6 +179,26 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 ABORT: BlockTime=1200 ElapsedTime=2400 ``` + 上述示例查看到的控制组配置信息如下表所示。 + + **表 1** 控制组配置信息 + + | GID | 类型 | 名称 | Percent(%)信息 | 特定信息 | + | :--- | :-------------- | :----------------------------------------------------------- | :----------------------------------------------------------- | :----------------------------------------------------------- | + | 0 | Top控制组 | Root | 1000代表总的系统资源为1000份。括号中的50代表IO资源的50%。MogDB不通过控制组对IO资源做控制,因此下面其他控制组信息中仅涉及CPU配额情况。 | - | + | 1 | | gaussdb:omm | 系统中只运行一套数据库程序,gaussdb:omm控制组默认配额为833,数据库程序和非数据库程序的比值为(833:167=5:1)。 | - | + | 2 | | Backend | Backend和Class括号中的40和60,代表Backend占用gaussdb:dbuser控制组40%的资源,Class占用gaussdb:dbuser控制组60%的资源。 | - | + | 3 | | Class | | - | + | 4 | Backend控制组 | DefaultBackend | 括号中的80和20代表DefaultBackend和Vacuum占用Backend控制组80%和20%的资源。 | TopGID:代表Top类型控制组中Backend组的GID,即2。 | + | 5 | | Vacuum | | | + | 20 | Class控制组 | DefaultClass | DefaultClass和class1的20和40代表占Class控制组20%和40%的资源。因为当前只有两个Class组,所有它们按照20:40的比例分配Class控制组499的系统配额,则分别为166和332。 | - TopGID:代表DefaultClass和class1所属的上层控制(Top控制组中的Class组)的GID,即3。
- MaxLevel:Class组当前含有的Workload组的最大层次,DefaultClass没有Workload Cgroup,其数值为1。
- RemPCT:代表Class组分配Workload组后剩余的资源百分比。如class1中剩余的百分比为70。 | + | 21 | | class1 | | | + | 86 | Workload控制组 | grp1:2(该名称由Workload Cgroup Name和其在class中的层级组成,它是class1的第一个Workload组,层级为2,每个Class组最多10层Workload Cgroup。) | 根据设置,其占class1的百分比为30,则为332*30%=99。 | - ClsGID:代表Workload控制组所属的上层控制组(class1控制组)的GID。
- WDLevel:代表当前Workload Cgroup在对应的Class组所在的层次。 | + | 724 | Timeshare控制组 | Low | - | Rate:代表Timeshare中的分配比例,Low最少为1,Rush最高为8。这四个Timeshare组的资源配比为Rush:High:Medium:Low=8:4:2:1。 | + | 725 | | Medium | - | | + | 726 | | High | - | | + | 727 | | Rush | - | | + 2. 查看操作系统中树形结构的控制组信息 `gs_cgroup -P`显示控制组树形结构信息,其中shares代表操作系统中CPU资源的动态资源配额`cpu.shares`的数值,cpus代表操作系统中CPUSET资源的动态资源限额`cpuset.cpus`的数值,指的是该控制组能够使用的核数范围。 @@ -219,7 +239,7 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 ## 参数说明 -- -a [-abort] +- -a [--abort] 对满足设定的异常阈值的作业执行终止动作。 @@ -261,13 +281,13 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 | :---------------- | :----------------------------------------------------------- | :------------------------ | :------------- | | blocktime | 作业的阻塞时间,单位秒。包括全局并发排队以及局部并发排队的总时间。 | 0~UINT_MAX | abort | | elapsedtime | 作业的已被执行时间,单位秒。从开始执行到当前所消耗的时间。 | 0~UINT_MAX | abort | - | allcputime | 作业在所有DN上执行时所耗费的CPU总时间,单位秒。 | 0~UINT_MAX | abort,penalty | - | cpuskewpercent | 作业在DN上执行时的CPU时间的倾斜率,依赖于qualificationtime的设置。 | 0~100 | abort,penalty | + | allcputime | 作业在所有数据库节点上执行时所耗费的CPU总时间,单位秒。 | 0~UINT_MAX | abort,penalty | + | cpuskewpercent | 作业在数据库节点上执行时的CPU时间的倾斜率,依赖于qualificationtime的设置。 | 0~100 | abort,penalty | | qualificationtime | 检查作业执行cpu倾斜率的间隔时间,单位秒,需同cpuskewpercent一起设置。 | 0~UINT_MAX | none | - | spillsize | 作业在DN上下盘的数据量,单位MB。 | 0~UINT_MAX | abort | - | broadcastsize | 作业在DN上算子大表广播数据量,单位MB。 | 0~UINT_MAX | abort | + | spillsize | 作业在数据库节点上下盘的数据量,单位MB。 | 0~UINT_MAX | abort | + | broadcastsize | 作业在数据库节点上算子大表广播数据量,单位MB。 | 0~UINT_MAX | abort | -- -h [-help] +- -h [--help] 显示命令帮助信息。 @@ -281,13 +301,13 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 设置Gaussdb控制组使用的核数范围,范围必须是a-b或a的形式。其他控制组可以使用-fixed进行设置核数范围。 -- -fixed +- --fixed 设置控制组使用的核数范围比例占上一层级的百分比或者设置IO资源。 - 设置核数范围比例时-fixed设置核数范围与'-s' '-g' '-t' '-b' 一起使用。 + 设置核数范围比例时--fixed设置核数范围与'-s' '-g' '-t' '-b' 一起使用。 - 核数比例范围0-100,同一层级的核数比例总和小于或者等于100,0代表核数与上一层级相同,对于所有的控制组,CPU限额默认设置为0。-f和-fixed不能同时设置。设置-fixed之后,-f设置的范围自动失效。设置的比例以quota值在-p中进行显示。 + 核数比例范围0-100,同一层级的核数比例总和小于或者等于100,0代表核数与上一层级相同,对于所有的控制组,CPU限额默认设置为0。-f和--fixed不能同时设置。设置-fixed之后,-f设置的范围自动失效。设置的比例以quota值在-p中进行显示。 设置IO资源配额时,与'-R' '-r' '-W' '-w'一起使用。 @@ -305,7 +325,7 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 取值范围: 字符串,最长为28个字节。 -- -N [-group] name +- -N [--group] name 可以将组名简写成class:wg。 @@ -317,7 +337,7 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 显示Cgroups树形结构信息。 -- -penalty +- --penalty 对满足设定的异常阈值的作业执行降级动作,如果没有设定任何操作,则该操作将为默认操作。 @@ -333,11 +353,11 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 取值范围: 字符串,最长为32个字符。 -- -recover +- --recover 仅用于回退Class控制组和Workload控制组的增删改操作,且只能回退一步。 -- -revert +- --revert 恢复控制组为默认状态。 @@ -357,7 +377,7 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 数据库用户名称。 -- -refresh +- --refresh 刷新控制组状态。 @@ -389,7 +409,7 @@ gs_cgroup工具为使用数据库的操作系统用户创建Cgroups配置文件 更新Cgroups。 -- -V [-version] +- -V [--version] 显示gs_cgroup工具的版本信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/1-gs_check.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/1-gs_check.md index 5d299333..a8f5ec29 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/1-gs_check.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/1-gs_check.md @@ -15,7 +15,7 @@ gs_check改进增强,统一化当前系统中存在的各种检查工具,例 - 必须指定-i或-e参数,-i会检查指定的单项,-e会检查对应场景配置中的多项。 - 如果-i参数中不包含root类检查项或-e场景配置列表中没有root类检查项,则不需要交互输入root权限的用户及其密码。 -- 可使用-skip-root-items跳过检查项中包含的root类检查,以免需要输入root权限用户及密码。 +- 可使用--skip-root-items跳过检查项中包含的root类检查,以免需要输入root权限用户及密码。 - MTU值不一致时可能导致检查缓慢或进程停止响应,当巡检工具出现提示时请修改各节点MTU值一致后再进行巡检。 - 交换机不支持当前设置的MTU值时,即使MTU值一致也会出现通信问题引起进程停止响应,需要根据交换机调整MTU大小。 @@ -59,7 +59,7 @@ gs_check改进增强,统一化当前系统中存在的各种检查工具,例 - -i - 指定检查项。格式-i CheckXX详细的检查项请参见[表1 MogDB状态检查表](#zhuangtaijiancha)。 + 指定检查项。格式-i CheckXX详细的检查项请参见[MogDB状态检查表](#zhuangtaijiancha)。 - -e @@ -73,43 +73,43 @@ gs_check改进增强,统一化当前系统中存在的各种检查工具,例 指定检查结果输出文件夹路径。 -- -skip-root-items +- --skip-root-items 跳过需要root权限执行的检查项。 -- -skip-items +- --skip-items 跳过指定的检查项。 -- -format +- --format 设置结果报告的格式。 -- -set +- --set 修复支持设置的Abnormal项。 -- -cid +- --cid 检查ID,仅被内部check进程使用。 -- -time-out +- --time-out 设置超时时间。单位为秒,默认为1500s,若用户自定义超时时间不得少于1500s。 -- -routing +- --routing 指定业务IP的网段,格式为IP地址:子网掩码。 -- -disk-threshold=“PERCENT” +- --disk-threshold=“PERCENT” 检查磁盘占用时可选指定告警阈值,可指定1-99之间的整数,不输入则默认为90。检查其他项时不需要该参数。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 @@ -544,7 +544,6 @@ gs_check改进增强,统一化当前系统中存在的各种检查工具,例 - Database - @@ -740,7 +739,6 @@ gs_check改进增强,统一化当前系统中存在的各种检查工具,例
状态 巡检项 检查内容 是否支持--set
- @@ -819,7 +817,7 @@ gs_check改进增强,统一化当前系统中存在的各种检查工具,例
状态 巡检项 检查内容 是否支持--set
- + - Others @@ -910,9 +908,9 @@ gs_check改进增强,统一化当前系统中存在的各种检查工具,例 - title: 巡检项描述名称 (支持多语言)。 - :中文版检查内容。 + zh:中文版检查内容。 - :英文版检查内容。 + en:英文版检查内容。 - standard:巡检项标准说明(支持多语言)。 @@ -1133,4 +1131,4 @@ For more information please refer to /opt/huawei/wisequery/script/gspylib/inspec ## 相关命令 -[gs_checkos](2-gs_checkos),[gs_checkperf](3-gs_checkperf) +[gs_checkos](2-gs_checkos),[gs_checkperf](3-gs_checkperf) diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/10-gs_ssh.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/10-gs_ssh.md index b4f90415..0b7398e7 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/10-gs_ssh.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/10-gs_ssh.md @@ -49,11 +49,11 @@ MogDB提供了gs_ssh工具帮助用户在MogDB各节点上执行相同的命令 指定需要在MogDB各主机上执行的linux shell命令名。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/2-gs_checkos.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/2-gs_checkos.md index 3bdccb40..9a8d7987 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/2-gs_checkos.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/2-gs_checkos.md @@ -17,6 +17,8 @@ gs_checkos工具用来帮助检查操作系统、控制参数、磁盘配置等 - 各主机间root互信状态正常。 - 只能使用root用户执行gs_checkos命令。 +> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明**:该工具不支持独立调用,出于安全考虑,企业版安装方式下,前置完成后会自动删除。 + ## 语法 - 检查操作系统信息 @@ -67,7 +69,7 @@ gs_checkos工具用来帮助检查操作系统、控制参数、磁盘配置等 MogDBXML配置文件。 -- -detail +- --detail 显示检查结果详情。 @@ -83,11 +85,11 @@ gs_checkos工具用来帮助检查操作系统、控制参数、磁盘配置等 默认值:/tmp/gs_checkos/gs_checkos-YYYY-MM-DD_hhmmss.log。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 @@ -100,12 +102,12 @@ gs_checkos工具用来帮助检查操作系统、控制参数、磁盘配置等 | A3 | Unicode状态(Unicode status) | 字符集设置检查:保证MogDB各个主机的字符集一致。 | | A4 | 时区状态(Time zone status) | 时区时间设置检查:保证MogDB各个主机的时区状态一致。 | | A5 | 交换内存状态(Swap memory status) | Swap分区检查:各个主机的swap分区大小必须小于等于各主机内存总大小。 | -| A6 | 系统控制参数(System control parameters status) | 内核参数检查:保证当前内核中的参数值和默认的期望值保持一致。详细的内核参数请参见**操作系统参数**。 | +| A6 | 系统控制参数(System control parameters status) | 内核参数检查:保证当前内核中的参数值和默认的期望值保持一致。详细的内核参数请参见[操作系统参数](#操作系统参数)。 | | A7 | 文件系统配置状态(File system configuration status) | 系统文件句柄检查:系统文件句柄的参数值必须大于等于100万。线程堆栈大小检查:线程堆栈大小大于等于3072KB。进程最大可用虚拟内存:系统进程最大可用虚拟内存为unlimited。 | | A8 | 磁盘配置状态(Disk configuration status) | 硬盘挂载参数检查:格式为xfs的硬盘,其挂载格式必须为:”rw,noatime,inode64,allocsize=16m”。 | | A9 | 预读块大小状态(Pre-read block size status) | 预读参数检查:预读参数期望值为16384。 | | A10 | IO调度状态(IO scheduler status) | IO调度策略检查:IO调度策略的方式为deadline。 | -| A11 | 网卡配置状态(Network card configuration status) | 万兆以下网卡参数检查:确保网卡mtu=1500。万兆及以上网卡参数检查:当网卡为非绑定模式,同时网卡类型为万兆时,确保mtu=1500,rx/tx >=4096。当网卡为绑定模式时,需保证绑定的每个网卡类型均为万兆,然后再确保mtu=1500,rx/tx>=4096。MogDB周边设备(例如交换机等)的网卡也要设置成与MogDB部署的主机一致的值。 | +| A11 | 网卡配置状态(Network card configuration status) | 万兆以下网卡参数检查:
- 确保网卡mtu=1500。
万兆及以上网卡参数检查:
- 当网卡为非绑定模式,同时网卡类型为万兆时,确保mtu=1500,rx/tx >=4096。
- 当网卡为绑定模式时,需保证绑定的每个网卡类型均为万兆,然后再确保mtu=1500,rx/tx>=4096。
- MogDB周边设备(例如交换机等)的网卡也要设置成与MogDB部署的主机一致的值。 | | A12 | 时间一致性(Time consistency status) | 时间一致性检查:确认ntp服务启动,MogDB各个主机的系统时间误差不超过60s。 | | A13 | 防火墙状态(Firewall service status) | 防火墙检查: 确认防火墙的状态为关闭状态。 | | A14 | THP服务(THP service status) | THP服务检查:确认THP服务状态为关闭状态。 | diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/3-gs_checkperf.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/3-gs_checkperf.md index 656b9a8f..ae95874a 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/3-gs_checkperf.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/3-gs_checkperf.md @@ -16,6 +16,8 @@ MogDB提供了gs_checkperf工具来帮助对MogDB级别(主机CPU占用率、G - MogDB运行状态正常且不为只读模式。 - 运行在数据库之上的业务运行正常。 +> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明**:出于安全考虑,企业版安装方式下,gaussdbToolPath目录下该工具前置完成后会自动删除。 + ## 注意事项 - gs_checkperf工具的监控信息依赖于pmk模式下的表的数据。如果pmk模式下的表未执行analyze操作,则可能导致gs_checkperf工具执行失败。其报错示例信息如下。 @@ -91,7 +93,7 @@ MogDB提供了gs_checkperf工具来帮助对MogDB级别(主机CPU占用率、G 如果不指定该参数,以MogDB用户身份默认检查PMK,以root用户身份默认检查SSD。 -- -detail +- --detail 显示PMK检查结果详情。 @@ -101,33 +103,33 @@ MogDB提供了gs_checkperf工具来帮助对MogDB级别(主机CPU占用率、G 默认路径为:/var/log/mogdb/omm/om/gs_checkperf-YYYY-MM-DD_hhmmss.log -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 **表 1** 性能检查项 -| 分类 | 性能参数项 | 描述 | -| :------------------------------ | :----------------------------------------------------------- | :----------------------------------------------------------- | -| MogDB级别 | 主机CPU占用率 | 主机CPU占用率。 | -| Gauss CPU占用率 | Gauss CPU占用率。 | | -| 共享内存击中率 | 共享内存的击中率。 | | -| 内存中排序比率 | 内存中完成的排序所占比率。 | | -| I/O使用情况 | 文件读写次数和时间。 | | -| 磁盘使用情况 | 文件写次数和平均写时间、最大写时间等。 | | -| 事务统计 | 当前SQL执行数和Session数。 | | -| 节点级别 | CPU使用情况 | 主机使用CPU情况,包括cpu busy time,cpu idle time等。 | -| 内存使用情况 | 主机使用内存情况,包括物理内存总量,已使用量等。 | | -| I/O使用情况 | 文件读写次数和时间。 | | -| 会话/进程级别 | CPU使用情况 | 会话使用CPU情况,包括cpu busy time,cpu idle time等。 | -| 内存使用情况 | 会话使用内存情况,包括物理内存总量,已使用量等。 | | -| I/O使用情况 | 会话共享缓冲区命中次数等。 | | -| SSD性能(只用root用户才能查看) | 写入性能 | 使用dd命令(flag=direct bs=8M count=2560)向每个SSD写入内容,写入每个SSD时间应在10s左右。 | -| 读取性能 | 使用dd命令(flag=direct bs=8M count=2560)从每个SSD读取内容,读取每个SSD时间应在7s左右。 | | +| 分类 | 性能参数项 | 描述 | +| :------------------------------ | :-------------- | :----------------------------------------------------------- | +| MogDB级别 | 主机CPU占用率 | 主机CPU占用率。 | +| | MogDB CPU占用率 | MogDB CPU占用率。 | +| | 共享内存击中率 | 共享内存的击中率。 | +| | 内存中排序比率 | 内存中完成的排序所占比率。 | +| | I/O使用情况 | 文件读写次数和时间。 | +| | 磁盘使用情况 | 文件写次数和平均写时间、最大写时间等。 | +| | 事务统计 | 当前SQL执行数和Session数。 | +| 节点级别 | CPU使用情况 | 主机使用CPU情况,包括cpu busy time,cpu idle time等。 | +| | 内存使用情况 | 主机使用内存情况,包括物理内存总量,已使用量等。 | +| | I/O使用情况 | 文件读写次数和时间。 | +| 会话/进程级别 | CPU使用情况 | 会话使用CPU情况,包括cpu busy time,cpu idle time等。 | +| | 内存使用情况 | 会话使用内存情况,包括物理内存总量,已使用量等。 | +| | I/O使用情况 | 会话共享缓冲区命中次数等。 | +| SSD性能(只用root用户才能查看) | 写入性能 | 使用dd命令(flag=direct bs=8M count=2560)向每个SSD写入内容,写入每个SSD时间应在10s左右。 | +| | 读取性能 | 使用dd命令(flag=direct bs=8M count=2560)从每个SSD读取内容,读取每个SSD时间应在7s左右。 | ## 示例 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/3.1-gs_clean.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/3.1-gs_clean.md index 3b6c37a6..390a490b 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/3.1-gs_clean.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/3.1-gs_clean.md @@ -23,11 +23,11 @@ gs_clean [OPTION ...] [USERNAME] OPTION的取值如下所示: -- -a, -all +- -a, --all 清理所有可用数据库中残留的临时表。 -- -h, -host=HOSTADDRESS +- -h, --host=HOSTADDRESS 目标DN所在主机的IP地址。 @@ -35,7 +35,7 @@ OPTION的取值如下所示: 默认值:localhost -- -p, -port=PORT +- -p, --port=PORT 主DN的端口号。 @@ -43,21 +43,21 @@ OPTION的取值如下所示: 默认值:5432。如果已经设置了操作系统的环境变量PGPORT,则默认为PGPORT的值。 -- -q, -quiet +- -q, --quiet 静态模式,除了错误信息,不打印任何其它信息。 -- -r, -rollback +- -r, --rollback 回滚所有异常事务。 -- -t, -timeout=SECS +- -t, --timeout=SECS 连接超时机制。 默认值:5s。单位:秒(s)。 -- -U, -username=USERNAME +- -U, --username=USERNAME 连接数据库的用户名称。 @@ -65,29 +65,29 @@ OPTION的取值如下所示: 默认值:操作系统用户名称。 -- -v, -verbose +- -v, --verbose 打印详细的恢复信息。 -- -V, -version +- -V, --version 打印该工具的版本信息。 -- -w, -no-password +- -w, --no-password 无需输入密码验证。 -- -W, -password=PASSWORD +- -W, --password=PASSWORD 需要输入密码验证。 取值范围: 有效字符串。符合密码复杂度要求。 -- -e, -exclusive +- -e, --exclusive 仅清理临时表。 -- -j, -jobs +- -j, --jobs 清理两阶段残留文件的并发数。 @@ -95,6 +95,6 @@ OPTION的取值如下所示: 默认值:3。 -- -?, -help +- -?, --help 打印帮助信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/4-gs_collector.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/4-gs_collector.md index ef9b557a..db05e882 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/4-gs_collector.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/4-gs_collector.md @@ -16,12 +16,12 @@ date: 2021-06-07 | TypeName | Content | 描述 | 是否默认收集 | | :------- | :------------------------ | :-----------------------| :-------------------------------- | | System | HardWareInfoRunTimeInfo | 收集现在操作系统的状态信息:
- HardWareInfo
- Cpu(cat /proc/cpuinfo)
- 内存(cat /proc/meminfo)
- 磁盘(df -h)
- RunTimeInfo:
- topStatus(ps ux)
- ioStat(iostat -xm 2 3)
- 网络状态(cat /proc/net/dev)
- 内存使用情况(free -m) | 是 | -| Database | 具体列表见表**工具支持收集的系统表和视图列表**。 | 收集系统视图或者系统表的内容。 | 是,默认收集pg_locks,pg_stat_activity和 pg_thread_wait_status三个视图的信息。 | +| Database | 具体列表见表[工具支持收集的系统表和视图列表](system-catalogs-and-views-supported-by-gs_collector)。 | 收集系统视图或者系统表的内容。 | 是,默认收集pg_locks,pg_stat_activity和 pg_thread_wait_status三个视图的信息。 | | Log | DataNodeClusterManager | 收集DataNode的pg_log和gs_profile
收集ClusterManager的日志信息包括:
- om
- gs_ctl
- gs_guc
- gs_initdb | 是 | | Config | DataNode | 收集DataNode的配置信息:
- postgresql.conf
- gaussdb.state
- pg_hba.conf
- pg_control
- pg_replslot
- pg_ident.conf | 是 | | Gstack | DataNode | 利用gstack命令得到DataNode的当前堆栈信息。 | 否 | | CoreDump | gs_ctl、gaussdb、GaussMaster、AioWorker、AlarmChecker、Archiver、Auditor、AutoVacLauncher、AutoVacWorker、AuxMain、BackendMode、BgWriter、BootStrap、Catchup、CBMWriter、Checkpointer、CommAuxStream、CommPoolCleane、CommRcvStream、CommRcvWorker、CommSendStream、CpMonitor、DataRcvWriter、DataReceiver、DataSender、ExtremeRTO、FencedUDFMaster、Heartbeater、JobExecutor、JobScheduler、LWLockMonitor、PageWriter、ParallelRecov、PercentileJob、Reaper、RemoteSrv、StartupProcess、StatCollector、Stream、SysLogger、ThdPoolListener、TwoPhaseCleaner、WalRcvWriter、WalReceiver、WalSender、WalWriter、WDRSnapshot、WlmArbiter、WlmCollector、WlmMonitor | 通过时间筛选gaussdb进程的core文件。
注意:
关于Core的配置和方式请按照如下要求:在/proc/sys/mogdb/core_pattern文件中添加core文件的格式:core-%e-%p-%t。 | 否 | -| XLog | DataNode 通过时间筛选收集xlog。 | 否 | +| XLog | DataNode 通过时间筛选收集xlog。 | 否 || | Plan | * | 收集计划复现信息:
- 用户输入*表示收集所有数据库上的计划复现信息。
- 用户输入具体的数据库名称表示收集指定数据库上的计划复现信息。 | 否 | ## 前提条件 @@ -99,7 +99,7 @@ date: 2021-06-07 ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** - TypeName和对应的Content取值范围见表1gs_collector内容收集对照表。 对于Log、CoreDump、Config和XLog四种类型,Interval和Count参数不生效。 + TypeName和对应的Content取值范围见表1 gs_collector内容收集对照表。 对于Log、CoreDump、Config和XLog四种类型,Interval和Count参数不生效。 默认配置文件内容如下: @@ -114,7 +114,7 @@ date: 2021-06-07 } ``` -- -keyword=KEYWORD +- --keyword=KEYWORD 包含关键字KEYWORD的日志文件。 @@ -122,25 +122,25 @@ date: 2021-06-07 > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 性能日志为二进制日志,关键字搜集功能不支持该日志的搜集。 -- -begin-time +- --begin-time 日志的开始时间。输入格式为“yyyymmdd hh:mm”。 -- -end-time +- --end-time 日志的结束时间。输入格式为“yyyymmdd hh:mm”。 -- -speed-limit +- --speed-limit 日志收集时的收集速率,输入格式为非负整数,单位为MB/s。 该参数主要是为了防止日志收集过程中产生过高的磁盘或网络IO,导致数据库节点故障(如果它们与\$GAUSSLOG/$PGHOST部署在同一个磁盘上)。该值应当不超过MogDB内上述磁盘IO与网络IO速率的最小值的1/3。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/5-gs_dump.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/5-gs_dump.md index b11ae09e..b11c9e11 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/5-gs_dump.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/5-gs_dump.md @@ -24,18 +24,18 @@ gs_dump支持导出兼容v1版本数据库的文本格式文件。 gs_dump支持将数据库信息导出至纯文本格式的SQL脚本文件或其他归档文件中。 - 纯文本格式的SQL脚本文件:包含将数据库恢复为其保存时的状态所需的SQL语句。通过gsql运行该SQL脚本文件,可以恢复数据库。即使在其他主机和其他数据库产品上,只要对SQL脚本文件稍作修改,也可以用来重建数据库。 -- 归档格式文件:包含将数据库恢复为其保存时的状态所需的数据,可以是tar格式、目录归档格式或自定义归档格式,详见[表1](#daochuwenjian)。该导出结果必须与**gs_restore**配合使用来恢复数据库,gs_restore工具在导入时,系统允许用户选择需要导入的内容,甚至可以在导入之前对等待导入的内容进行排序。 +- 归档格式文件:包含将数据库恢复为其保存时的状态所需的数据,可以是tar格式、目录归档格式或自定义归档格式,详见[表1](#daochuwenjian)。该导出结果必须与gs_restore配合使用来恢复数据库,gs_restore工具在导入时,系统允许用户选择需要导入的内容,甚至可以在导入之前对等待导入的内容进行排序。 ## 主要功能 -gs_dump可以创建四种不同的导出文件格式,通过“-F”或者“-format=”选项指定,具体如[表1](#daochuwenjian)所示。 +gs_dump可以创建四种不同的导出文件格式,通过“-F”或者“--format=”选项指定,具体如[表1](#daochuwenjian)所示。 **表 1** 导出文件格式 -| 格式名称 | -F的参数值 | 说明 | 建议 | 对应导入工具 | -| :------------- | :--------- | :------------------------------------ | :------------------------------------- | :-------------------------------------------- | +| 格式名称 | -F的参数值 | 说明 | 建议 | 对应导入工具 | +| :------------- | :--------- | :----------------------------------------------------------- | :------------------------------------- | :----------------------------------------------------------- | | 纯文本格式 | p | 纯文本脚本文件包含SQL语句和命令。命令可以由gsql命令行终端程序执行,用于重新创建数据库对象并加载表数据。 | 小型数据库,一般推荐纯文本格式。 | 使用gsql工具恢复数据库对象前,可根据需要使用文本编辑器编辑纯文本导出文件。 | -| 自定义归档格式 | c | 一种二进制文件。支持从导出文件中恢复所有或所选数据库对象。 | 中型或大型数据库,推荐自定义归档格式。 | 使用**gs_restore**可以选择要从自定义归档导出文件中导入相应的数据库对象。 | +| 自定义归档格式 | c | 一种二进制文件。支持从导出文件中恢复所有或所选数据库对象。 | 中型或大型数据库,推荐自定义归档格式。 | 使用gs_restore可以选择要从自定义归档导出文件中导入相应的数据库对象。 | | 目录归档格式 | d | 该格式会创建一个目录,该目录包含两类文件,一类是目录文件,另一类是每个表和blob对象对应的数据文件。 | - | | | tar归档格式 | t | tar归档文件支持从导出文件中恢复所有或所选数据库对象。tar归档格式不支持压缩且对于单独表大小应小于8GB。 | - | | @@ -44,7 +44,7 @@ gs_dump可以创建四种不同的导出文件格式,通过“-F”或者“-f ## 注意事项 - 禁止修改导出的文件和内容,否则可能无法恢复成功。 -- 为了保证数据一致性和完整性,gs_dump会对需要转储的表设置共享锁。如果表在别的事务中设置了共享锁,gs_dump会等待锁释放后锁定表。如果无法在指定时间内锁定某个表,转储会失败。用户可以通过指定-lock-wait-timeout选项,自定义等待锁超时时间。 +- 为了保证数据一致性和完整性,gs_dump会对需要转储的表设置共享锁。如果表在别的事务中设置了共享锁,gs_dump会等待锁释放后锁定表。如果无法在指定时间内锁定某个表,转储会失败。用户可以通过指定--lock-wait-timeout选项,自定义等待锁超时时间。 - 不支持加密导出存储过程和函数。 ## 语法 @@ -53,7 +53,7 @@ gs_dump可以创建四种不同的导出文件格式,通过“-F”或者“-f gs_dump [OPTION]... [DBNAME] ``` -![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** “dbname”前面不需要加短或长选项。“dbname”指定要连接的数据库。 例如: 不需要-d,直接指定“dbname”。 +![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** “DBNAME”前面不需要加短或长选项。“DBNAME”指定要连接的数据库。 例如: 不需要-d,直接指定“DBNAME”。 ```bash gs_dump -p port_number postgres -f dump1.sql @@ -72,11 +72,11 @@ gs_dump -p port_number -f dump1.sql 通用参数: -- -f, -file=FILENAME +- -f, --file=FILENAME 将输出发送至指定文件或目录。如果省略该参数,则使用标准输出。如果输出格式为(-F c/-F d/-F t)时,必须指定-f参数。如果-f的参数值含有目录,要求当前用户对该目录具有读写权限,并且不能指定已有目录。 -- -F, -format=c|d|t|p +- -F, --format=c|d|t|p 选择输出格式。格式如下: @@ -90,15 +90,15 @@ gs_dump -p port_number -f dump1.sql 输出一个tar格式的归档形式,也可以作为gsql输入信息。 -- -v, -verbose +- -v, --verbose 指定verbose模式。该选项将导致gs_dump向转储文件输出详细的对象注解和启动/停止次数,向标准错误流输出处理信息。 -- -V, -version +- -V, --version 打印gs_dump版本,然后退出。 -- -Z, -compress=0-9 +- -Z, --compress=0-9 指定使用的压缩比级别。 @@ -110,41 +110,41 @@ gs_dump -p port_number -f dump1.sql 针对自定义归档格式,该选项指定单个表数据片段的压缩,默认方式是以中等级别进行压缩。纯文本格式或tar归档格式目前不支持压缩。 -- -lock-wait-timeout=TIMEOUT +- --lock-wait-timeout=TIMEOUT 请勿在转储刚开始时一直等待以获取共享表锁。如果无法在指定时间内锁定某个表,就选择失败。可以以任何符合SET statement_timeout的格式指定超时时间。 -- -?, -help +- -?, --help 显示gs_dump命令行参数帮助,然后退出。 转储参数: -- -a, -data-only +- -a, --data-only 只输出数据,不输出模式(数据定义)。转储表数据、大对象和序列值。 -- -b, -blobs +- -b, --blobs 该参数为扩展预留接口,不建议使用。 -- -c, -clean +- -c, --clean 在将创建数据库对象的指令输出到备份文件之前,先将清理(删除)数据库对象的指令输出到备份文件中。(如果目标数据库中没有任何对象,gs_restore工具可能会输出一些提示性的错误信息) 该选项只对文本格式有意义。针对归档格式,可以调用gs_restore时指定选项。 -- -C, -create +- -C, --create 备份文件以创建数据库和连接到创建的数据库的命令开始。(如果命令脚本是这种方式执行,可以先指定任意数据库用于执行创建数据库的命令,数据不会恢复到指定的数据库中,而是恢复到创建的数据库中。) 该选项只对文本格式有意义。针对归档格式,可以在调用gs_restore时指定选项。 -- -E, -encoding=ENCODING +- -E, --encoding=ENCODING 以指定的字符集编码创建转储。默认情况下,以数据库编码创建转储。(得到相同结果的另一个办法是将环境变量“PGCLIENTENCODING”设置为所需的转储编码。) -- -n, -schema=SCHEMA +- -n, --schema=SCHEMA 只转储与模式名称匹配的模式,此选项包括模式本身和所有它包含的对象。如果该选项没有指定,所有在目标数据库中的非系统模式将会被转储。写入多个-n选项来选择多个模式。此外,根据gsql的\d命令所使用的相同规则,模式参数可被理解成一个pattern,所以多个模式也可以通过在该pattern中写入通配符来选择。使用通配符时,注意给pattern打引号,防止shell扩展通配符。 @@ -163,7 +163,7 @@ gs_dump -p port_number -f dump1.sql 在上面这个例子中,sch1和sch2会被转储。 -- -N, -exclude-schema=SCHEMA +- -N, --exclude-schema=SCHEMA 不转储任何与模式pattern匹配的模式。pattern将参照针对-n的相同规则来理解。可以通过输入多次-N,不转储与任何pattern匹配的模式。 @@ -181,25 +181,25 @@ gs_dump -p port_number -f dump1.sql 在上面这个例子中,sch1和sch2在转储过程中会被排除。 -- -o, -oids +- -o, --oids 转储每个表的对象标识符(OIDs),作为表的一部分数据。该选项用于应用以某种方式参照了OID列的情况。如果不是以上这种情况,请勿使用该选项。 -- -O, -no-owner +- -O, --no-owner 不输出设置对象的归属这样的命令,以匹配原始数据库。默认情况下,gs_dump会发出ALTER OWNER或SET SESSION AUTHORIZATION语句设置所创建的数据库对象的归属。如果脚本正在运行,该语句不会执行成功,除非是由系统管理员触发(或是拥有脚本中所有对象的同一个用户)。通过指定-O,编写一个任何用户都能存储的脚本,且该脚本会授予该用户拥有所有对象的权限。 该选项只对文本格式有意义。针对归档格式,可以在调用gs_restore时指定选项。 -- -s, -schema-only +- -s, --schema-only 只转储对象定义(模式),而非数据。 -- -S, -sysadmin=NAME +- -S, --sysadmin=NAME 该参数为扩展预留接口,不建议使用。 -- -t, -table=TABLE +- -t, --table=TABLE 指定转储的表(或视图、或序列、或外表)对象列表,可以使用多个-t选项来选择多个表,也可以使用通配符指定多个表对象。 @@ -210,7 +210,7 @@ gs_dump -p port_number -f dump1.sql ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** - -t参数选项个数必须小于等于100。 - - 如果-t参数选项个数大于100,建议使用参数-include-table-file来替换。 + - 如果-t参数选项个数大于100,建议使用参数--include-table-file来替换。 - 当-t已指定时,gs_dump不会转储已选表所附着的任何其他数据库对象。因此,无法保证某个指定表的转储结果能够自行成功地储存到一个空数据库中。 - -t tablename只转储在默认搜索路径中可见的表。-t '*.tablename'转储数据库下所有模式下的tablename表。-t schema.table转储特定模式中的表。 - -t tablename不会导出表上的触发器信息。 @@ -223,11 +223,11 @@ gs_dump -p port_number -f dump1.sql 在上面这个例子中,schema1.table1和schema2.table2会被转储。 -- -include-table-file=FILENAME +- --include-table-file=FILENAME 指定需要dump的表文件。 -- -T, -exclude-table=TABLE +- -T, --exclude-table=TABLE 不转储的表(或视图、或序列、或外表)对象列表,可以使用多个-T选项来选择多个表,也可以使用通配符指定多个表对象。 @@ -241,99 +241,107 @@ gs_dump -p port_number -f dump1.sql 在上面这个例子中,table1和table2在转储过程中会被排除。 -- -exclude-table-file=FILENAME +- --exclude-table-file=FILENAME 指定不需要dump的表文件。 - ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 同-include-table-file,其内容格式如下: schema1.table1 schema2.table2 …… + ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 同--include-table-file,其内容格式如下: schema1.table1 schema2.table2 …… -- -x, -no-privileges|-no-acl +- -x, --no-privileges|--no-acl 防止转储访问权限(授权/撤销命令)。 -- -q, -target +- -q, --target 指定导出兼容其他版本数据库的文本文件,目前支持v1和v5参数。v1参数用于导出v5数据库的数据为兼容v1的文本文件。v5参数用于导出v5数据库的数据为v5格式的文本文件,减少了导入v5时的可能的报错情况。 - 在使用v1参数时,建议和-exclude-guc=“enable_cluster_resize”、-exclude-function、-exclude-with等选项共用,否则导入到v1时可能报错。 + 在使用v1参数时,建议和--exclude-guc=“enable_cluster_resize”、--exclude-function、--exclude-with等选项共用,否则导入到v1时可能报错。 -- -exclude-guc +- --exclude-guc 导出的文本文件中,不包括相关guc参数的set命令,目前只支持enable_cluster_resize。 -- -exclude-function +- --exclude-function 不导出函数和存储过程。 -- -exclude-with +- --exclude-with 导出的表定义,末尾不添加WITH(orientation=row,compression=on)这样的描述。 -- -binary-upgrade +- --binary-upgrade 该参数为扩展预留接口,不建议使用。 -- -binary-upgrade-usermap=“USER1=USER2” +- --binary-upgrade-usermap=“USER1=USER2” 该参数为扩展预留接口,不建议使用。 -- -column-inserts|-attribute-inserts +- --column-inserts|--attribute-inserts 以INSERT命令带列名(INSERT INTO表(列、…)值…)方式导出数据。这会导致恢复缓慢。但是由于该选项会针对每行生成一个独立分开的命令,所以在重新加载某行时出现的错误只会导致那行丢失,而非整个表内容。 -- -disable-dollar-quoting +- --disable-dollar-quoting 该选项将禁止在函数体前使用美元符号$,并强制使用SQL标准字符串语法对其进行引用。 -- -disable-triggers +- --disable-triggers 该参数为扩展预留接口,不建议使用。 -- -exclude-table-data=TABLE +- --exclude-table-data=TABLE 指定不转储任何匹配表pattern的表这方面的数据。依照针对-t的相同规则理解该pattern。 - 可多次输入-exclude-table-data来排除匹配任何pattern的表。当用户需要特定表的定义但不需要其中的数据时,这个选项很有帮助。 + 可多次输入--exclude-table-data来排除匹配任何pattern的表。当用户需要特定表的定义但不需要其中的数据时,这个选项很有帮助。 - 排除数据库中所有表的数据,参见[-schema-only](#schema-only)。 + 排除数据库中所有表的数据,参见[--schema-only](#schema-only)。 -- -inserts +- --inserts 发出INSERT命令(而非COPY命令)转储数据。这会导致恢复缓慢。 - 但是由于该选项会针对每行生成一个独立分开的命令,所以在重新加载某行时出现的错误只会导致那行丢失,而非整个表内容。注意:如果重排列顺序,可能会导致整个恢复失败。列顺序改变时,-column-inserts选项不受影响,虽然会更慢。 + 但是由于该选项会针对每行生成一个独立分开的命令,所以在重新加载某行时出现的错误只会导致那行丢失,而非整个表内容。注意:如果重排列顺序,可能会导致整个恢复失败。列顺序改变时,--column-inserts选项不受影响,虽然会更慢。 -- -no-security-labels +- --no-publications + + 不转储发布。 + +- --no-security-labels 该参数为扩展预留接口,不建议使用。 -- -no-tablespaces +- --no-subscriptions + + 不转储订阅。 + +- --no-tablespaces 不输出选择表空间的命令。使用该选项,无论默认表空间是哪个,在恢复过程中所有对象都会被创建。 该选项只对文本格式有意义。针对归档格式,可以在调用gs_restore时指定选项。 -- -no-unlogged-table-data +- --no-unlogged-table-data 该参数为扩展预留接口,不建议使用。 -- -non-lock-table +- --non-lock-table 该参数为扩展预留接口,不建议使用。 -- -include-alter-table +- --include-alter-table 转储表删除列。该选项会记录列的删除。 -- -quote-all-identifiers +- --quote-all-identifiers 强制对所有标识符加引号。为了向后续版本迁移,且其中可能涉及引入额外关键词,在转储相应数据库时该选项会有帮助。 -- -section=SECTION +- --section=SECTION 指定已转储的名称区段(pre-data、data和post-data)。 -- -serializable-deferrable +- --serializable-deferrable 转储过程中使用可串行化事务,以确保所使用的快照与之后的数据库状态一致;要实现该操作需要在无异常状况的事务流中等待某个点,因为这样才能保证转储成功,避免引起其他事务出现serialization_failure要重新再做。 @@ -341,15 +349,15 @@ gs_dump -p port_number -f dump1.sql 如果当gs_dump启动时,读写事务仍处于非活动状态,即便使用该选项也不会对其产生影响。如果读写事务处于活动状态,转储的开始时间可能会延迟一段不确定的时间。 -- -use-set-session-authorization +- --use-set-session-authorization 输出符合SQL标准的SET SESSION AUTHORIZATION命令而不是ALTER OWNER命令来确定对象所有权。这样令转储更加符合标准,但是如果转储文件中的对象的历史有些问题,那么可能不能正确恢复。并且,使用SET SESSION AUTHORIZATION的转储需要数据库系统管理员的权限才能转储成功,而ALTER OWNER需要的权限则低得多。 -- -with-encryption=AES128 +- --with-encryption=AES128 指定转储数据需用AES128进行加密。 -- -with-key=KEY +- --with-key=KEY AES128密钥长度规则如下: @@ -359,26 +367,30 @@ gs_dump -p port_number -f dump1.sql > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** > - > - 使用gs_dump工具进行加密导出时,仅支持plain格式导出。通过-F plain导出的数据,需要通过gsql工具进行导入,且如果以加密方式导入,在通过gsql导入时,需要指定-with-key参数。 + > - 使用gs_dump工具进行加密导出时,仅支持plain格式导出。通过-F plain导出的数据,需要通过gsql工具进行导入,且如果以加密方式导入,在通过gsql导入时,需要指定--with-key参数。 > - 不支持加密导出存储过程和函数。 -- -with-salt=RANDVALUES +- --with-salt=RANDVALUES gs_dumpall使用此参数传递随机值。 -- -include-extension +- --include-extension 在转储中包含扩展。 -- -include-depend-objs +- --include-depend-objs + + 备份结果包含依赖于指定对象的对象信息。该参数需要同-t/--include-table-file参数关联使用才会生效。 + +- --exclude-self - 备份结果包含依赖于指定对象的对象信息。该参数需要同-t/-include-table-file参数关联使用才会生效。 + 备份结果不包含指定对象自身的信息。该参数需要同-t/--include-table-file参数关联使用才会生效。 -- -exclude-self +- --pipeline - 备份结果不包含指定对象自身的信息。该参数需要同-t/-include-table-file参数关联使用才会生效。 + 使用管道传输密码,禁止在终端使用。 -- -dont-overwrite-file +- --dont-overwrite-file 文本、tar、以及自定义格式情况下会重写现有文件。这对目录格式不适用。 @@ -386,7 +398,7 @@ gs_dump -p port_number -f dump1.sql 设想这样一种情景,即当前目录下backup.sql已存在。如果在输入命令中输入-f backup.sql选项时,当前目录恰好也生成backup.sql,文件就会被重写。 - 如果备份文件已存在,且输入-dont-overwrite-file选项,则会报告附带‘转储文件已经存在’信息的错误。 + 如果备份文件已存在,且输入--dont-overwrite-file选项,则会报告附带‘转储文件已经存在’信息的错误。 ```bash gs_dump -p port_number postgres -f backup.sql -F plain --dont-overwrite-file @@ -394,17 +406,17 @@ gs_dump -p port_number -f dump1.sql ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** -- -s/-schema-only和-a/-data-only不能同时使用。 -- -c/-clean和-a/-data-only不能同时使用。 -- -inserts/-column-inserts和-o/-oids不能同时使用,因为INSERT命令不能设置OIDS。 -- -role和-rolepassword必须一起使用。 -- -binary-upgrade-usermap和-binary-upgrade必须一起使用。 -- -include-depend-objs/-exclude-self需要同-t/-include-table-file参数关联使用才会生效。 -- -exclude-self必须同-include-depend-objs一起使用。 +- -s/--schema-only和-a/--data-only不能同时使用。 +- -c/--clean和-a/--data-only不能同时使用。 +- --inserts/--column-inserts和-o/--oids不能同时使用,因为INSERT命令不能设置OIDS。 +- --role和--rolepassword必须一起使用。 +- --binary-upgrade-usermap和--binary-upgrade必须一起使用。 +- --include-depend-objs/--exclude-self需要同-t/--include-table-file参数关联使用才会生效。 +- --exclude-self必须同--include-depend-objs一起使用。 连接参数: -- -h, -host=HOSTNAME +- -h, --host=HOSTNAME 指定主机名称。如果数值以斜杠开头,则被用作到Unix域套接字的路径。缺省从PGHOST环境变量中获取(如果已设置),否则,尝试一个Unix域套接字连接。 @@ -414,13 +426,13 @@ gs_dump -p port_number -f dump1.sql 环境变量:PGHOST -- -p, -port=PORT +- -p, --port=PORT 指定主机端口。在开启线程池情况下,建议使用 pooler port,即主机端口+1。 环境变量:PGPORT -- -U, -username=NAME +- -U, --username=NAME 指定所连接主机的用户名。 @@ -428,19 +440,19 @@ gs_dump -p port_number -f dump1.sql 环境变量:PGUSER -- -w, -no-password +- -w, --no-password 不出现输入密码提示。如果主机要求密码认证并且密码没有通过其它形式给出,则连接尝试将会失败。 该选项在批量工作和不存在用户输入密码的脚本中很有帮助。 -- -W, -password=PASSWORD +- -W, --password=PASSWORD 指定用户连接的密码。如果主机的认证策略是trust,则不会对系统管理员进行密码验证,即无需输入-W选项;如果没有-W选项,并且不是系统管理员,“Dump Restore工具”会提示用户输入密码。 -- -role=ROLENAME +- --role=ROLENAME 指定创建转储使用的角色名。选择该选项,会使gs_dump连接数据库后,发起一个SET ROLE角色名命令。当所授权用户(由-U指定)没有gs_dump要求的权限时,该选项会起到作用,即切换到具备相应权限的角色。某些安装操作规定不允许直接以超系统管理员身份登录,而使用该选项能够在不违反该规定的情况下完成转储。 -- -rolepassword=ROLEPASSWORD +- --rolepassword=ROLEPASSWORD 指定角色名的密码。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/6-gs_dumpall.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/6-gs_dumpall.md index b6a82a58..c31f27a5 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/6-gs_dumpall.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/6-gs_dumpall.md @@ -29,7 +29,7 @@ gs_dumpall在导出MogDB所有数据库时分为两部分: ## 注意事项 - 禁止修改导出的文件和内容,否则可能无法恢复成功。 -- 为了保证数据一致性和完整性,gs_dumpall会对需要转储的表设置共享锁。如果某张表在别的事务中设置了共享锁,gs_dumpall会等待此表的锁释放后锁定此表。如果无法在指定时间内锁定某张表,转储会失败。用户可以通过指定-lock-wait-timeout选项,自定义等待锁超时时间。 +- 为了保证数据一致性和完整性,gs_dumpall会对需要转储的表设置共享锁。如果某张表在别的事务中设置了共享锁,gs_dumpall会等待此表的锁释放后锁定此表。如果无法在指定时间内锁定某张表,转储会失败。用户可以通过指定--lock-wait-timeout选项,自定义等待锁超时时间。 - 由于gs_dumpall读取所有数据库中的表,因此必须以MogDB管理员身份进行连接,才能导出完整文件。在使用gsql执行脚本文件导入时,同样需要管理员权限,以便添加用户和组,以及创建数据库。 ## 语法 @@ -40,169 +40,181 @@ gs_dumpall [OPTION]... ## 参数说明 -通用参数: +### 通用参数 -- -f, -filename=FILENAME +- -f, --filename=FILENAME 将输出发送至指定文件。如果这里省略,则使用标准输出。 -- -v, -verbose +- -v, --verbose 指定verbose模式。该选项将导致gs_dumpall向转储文件输出详细的对象注解和启动/停止次数,向标准错误流输出处理信息。 -- -V, -version +- -V, --version 打印gs_dumpall版本,然后退出。 -- -lock-wait-timeout=TIMEOUT +- --lock-wait-timeout=TIMEOUT 请勿在转储刚开始时一直等待以获取共享表锁。如果无法在指定时间内锁定某个表,就选择失败。可以以任何符合SET statement_timeout的格式指定超时时间。 -- -?, -help +- -?, --help 显示gs_dumpall命令行参数帮助,然后退出。 -转储参数: +### 转储参数 -- -a, -data-only +- -a, --data-only 只转储数据,不转储模式(数据定义)。 -- -c, -clean +- -c, --clean 在重新创建数据库之前,执行SQL语句清理(删除)这些数据库。针对角色和表空间的转储命令已添加。 -- -g, -globals-only +- -g, --globals-only 只转储全局对象(角色和表空间),无数据库。 -- -o, -oids +- -o, --oids 转储每个表的对象标识符(OIDs),作为表的一部分数据。该选项用于应用以某种方式参照了OID列的情况。如果不是以上这种情况,请勿使用该选项。 -- -O, -no-owner +- -O, --no-owner 不输出设置对象的归属这样的命令,以匹配原始数据库。默认情况下,gs_dumpall会发出ALTER OWNER或SET SESSION AUTHORIZATION语句设置所创建的模式元素的所属。如果脚本正在运行,该语句不会执行成功,除非是由系统管理员触发(或是拥有脚本中所有对象的同一个用户)。通过指定-O,编写一个任何用户都能存储的脚本,且该脚本会授予该用户拥有所有对象的权限。 -- -r, -roles-only +- -r, --roles-only 只转储角色,不转储数据库或表空间。 -- -s, -schema-only +- -s, --schema-only 只转储对象定义(模式),而非数据。 -- -S, -sysadmin=NAME +- -S, --sysadmin=NAME 在转储过程中使用的系统管理员名称。 -- -t, -tablespaces-only +- -t, --tablespaces-only 只转储表空间,不转储数据库或角色。 -- -x, -no-privileges +- -x, --no-privileges 防止转储访问权限(授权/撤销命令)。 -- -column-inserts|-attribute-inserts +- --column-inserts|--attribute-inserts 以INSERT命令带列名(INSERT INTO表(列、…)值…)方式导出数据。这会导致恢复缓慢。但是由于该选项会针对每行生成一个独立分开的命令,所以在重新加载某行时出现的错误只会导致那行丢失,而非整个表内容。 -- -disable-dollar-quoting +- --disable-dollar-quoting 该选项将禁止在函数体前使用美元符号$,并强制使用SQL标准字符串语法对其进行引用。 -- -disable-triggers +- --disable-triggers 该参数为扩展预留接口,不建议使用。 -- -inserts +- --inserts - 发出INSERT命令(而非COPY命令)转储数据。这会导致恢复缓慢。注意:如果重排列顺序,可能会导致恢复整个失败。-column-inserts选项更加安全,虽然可能更慢些。 + 发出INSERT命令(而非COPY命令)转储数据。这会导致恢复缓慢。注意:如果重排列顺序,可能会导致恢复整个失败。--column-inserts选项更加安全,虽然可能更慢些。 -- -no-security-labels +- --no-publications + + 不转储发布。 + +- --no-security-labels 该参数为扩展预留接口,不建议使用。 -- -no-tablespaces +- --no-subscriptions + + 不转储订阅。 + +- --no-tablespaces 请勿输出创建表空间的命令,也请勿针对对象选择表空间。使用该选项,无论默认表空间是哪个,在恢复过程中所有对象都会被创建。 -- -no-unlogged-table-data +- --no-unlogged-table-data 该参数为扩展预留接口,不建议使用。 -- -include-alter-table +- --include-alter-table 导出表中已删除的列信息。 -- -quote-all-identifiers +- --quote-all-identifiers 强制对所有标识符加引号。为了向后续版本迁移,且其中可能涉及引入额外关键词,在转储相应数据库时该选项会有帮助。 -- -dont-overwrite-file +- --dont-overwrite-file 不重写当前文件。 -- -use-set-session-authorization +- --use-set-session-authorization 输出符合SQL标准的SET SESSION AUTHORIZATION命令而不是ALTER OWNER命令来确定对象所有权。这样令转储更加符合标准,但是如果转储文件中的对象的历史有些问题,那么可能不能正确恢复。并且,使用SET SESSION AUTHORIZATION的转储需要数据库系统管理员的权限才能转储成功,而ALTER OWNER需要的权限则低得多。 -- -with-encryption=AES128 +- --with-encryption=AES128 指定转储数据需用AES128进行加密。 -- -with-key=KEY +- --with-key=KEY AES128密钥长度规则如下: - 密钥长度为8~16字符。 - 至少包含大写字母(A-Z)、小写字母(a-z)、数字(0-9)、非字母数字字符(限定为~!@#$%^&*()-_=+|[]{};:,<.>/?)四类字符中的三类字符。 -- -include-extension +- --include-extension - 如果-include-extension参数被设置,将备份所有的CREATE EXTENSION语句。 + 如果--include-extension参数被设置,将备份所有的CREATE EXTENSION语句。 -- -include-templatedb +- --include-templatedb 转储过程中包含模板库。 -- -binary-upgrade +- --binary-upgrade 该参数为扩展预留接口,不建议使用。 -- -binary-upgrade-usermap=“USER1=USER2” +- --binary-upgrade-usermap=“USER1=USER2” 该参数为扩展预留接口,不建议使用。 -- -non-lock-table +- --non-lock-table 该参数仅供OM工具使用。 -- -tablespaces-postfix +- --tablespaces-postfix 该参数为扩展预留接口,不建议使用。 -- -parallel-jobs +- --parallel-jobs 指定备份进程并发数,取值范围为1~1000。 + +- --pipeline + + 使用管道传输密码,禁止在终端使用。 ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** -- -g/-globals-only和-r/-roles-only不能同时使用。 -- -g/-globals-only和-t/-tablespaces-only不能同时使用。 -- -r/-roles-only和-t/-tablespaces-only不能同时使用。 -- -s/-schema-only和-a/-data-only不能同时使用。 -- -r/-roles-only和-a/-data-only不能同时使用。 -- -t/-tablespaces-only和-a/-data-only不能同时使用。 -- -g/-globals-only和-a/-data-only不能同时使用。 -- -tablespaces-postfix和-binary-upgrade必须一起使用。 -- -binary-upgrade-usermap和-binary-upgrade必须一起使用。 -- -parallel-jobs和-f/-file必须一起使用。 +- -g/--globals-only和-r/--roles-only不能同时使用。 +- -g/--globals-only和-t/--tablespaces-only不能同时使用。 +- -r/--roles-only和-t/--tablespaces-only不能同时使用。 +- -s/--schema-only和-a/--data-only不能同时使用。 +- -r/--roles-only和-a/--data-only不能同时使用。 +- -t/--tablespaces-only和-a/--data-only不能同时使用。 +- -g/--globals-only和-a/--data-only不能同时使用。 +- --tablespaces-postfix和--binary-upgrade必须一起使用。 +- --binary-upgrade-usermap和--binary-upgrade必须一起使用。 +- --parallel-jobs和-f/--file必须一起使用。 -连接参数: +### 连接参数 -- -h, -host +- -h, --host 指定主机的名称。如果取值是以斜线开头,它将用作Unix域套接字的目录。默认值取自PGHOST环境变量;如果没有设置,将启动某个Unix域套接字建立连接。 @@ -210,11 +222,11 @@ gs_dumpall [OPTION]... 环境变量:PGHOST -- -l, -database +- -l, --database 指定所连接的转储全局对象的数据库名称,并去寻找还有其他哪些数据库需要被转储。如果没有指定,会使用postgres数据库,如果postgres数据库不存在,会使用template1。 -- -p, -port +- -p, --port 指定服务器所侦听的TCP端口或本地Unix域套接字后缀,以确保连接。默认值设置为PGPORT环境变量。 @@ -222,25 +234,25 @@ gs_dumpall [OPTION]... 环境变量:PGPORT -- -U, -username +- -U, --username 所连接的用户名。 环境变量:PGUSER -- -w, -no-password +- -w, --no-password 不出现输入密码提示。如果服务器要求密码认证并且密码没有通过其它形式给出,则连接尝试将会失败。 该选项在批量工作和不存在用户输入密码的脚本中很有帮助。 -- -W, -password +- -W, --password 指定用户连接的密码。如果主机的认证策略是trust,则不会对系统管理员进行密码验证,即无需输入-W选项;如果没有-W选项,并且不是系统管理员,“Dump Restore工具”会提示用户输入密码。 -- -role +- --role 指定创建转储使用的角色名。选择该选项,会使gs_dumpall连接数据库后,发起一个SET ROLE角色名命令。当所授权用户(由-U指定)没有gs_dumpall要求的权限时,该选项会起到作用,即切换到具备相应权限的角色。某些安装操作规定不允许直接以系统管理员身份登录,而使用该选项能够在不违反该规定的情况下完成转储。 -- -rolepassword +- --rolepassword 指定具体角色用户的角色密码。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/7-gs_guc.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/7-gs_guc.md index e60c6cba..3916655d 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/7-gs_guc.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/7-gs_guc.md @@ -142,7 +142,7 @@ gs_guc工具由操作系统用户omm执行。 > - gs_guc工具不支持参数值中包含'#'的设置。可以使用vi工具通过手工修改配置文件来设置。 > > - 如果已经在环境变量中设置PGDATA,则可以省略-D参数。否则提示设置参数失败。 -> - 环境变量PGDATA设置方法:先将参数PGDATA设置为_/gaussdb/data_,然后在执行“export PGDATA”使设置生效。 +> - 环境变量PGDATA设置方法:先将参数PGDATA设置为\_/gaussdb/data_,然后在执行“export PGDATA”使设置生效。 > - authpolicy包含一串认证参数:HOSTTYPE DATABASE USERNAME IPADDR IPMASK或者HOSTTYPE DATABASE USERNAME IPADDR-WITH-IPMASK或者HOSTTYPE DATABASE USERNAME HOSTNAME。 > - 如果设置GUC参数时使用-c “parameter”,则会将已设置的GUC参数值设置成该参数的内核默认值(注意log_directory和audit_directory不会被设置为内核参数默认值,而是设为$GAUSSLOG/pg_audit/instance_name)。因GUC参数间存在依赖关系,因此请慎用该功能。 > - 设置-c参数时,参数都可以省略双引号。 @@ -204,6 +204,8 @@ gs_guc工具由操作系统用户omm执行。 > > - 如果参数是一个字符串变量,则使用-c parameter=“'value'“或者使用-c “parameter = 'value'“。 > + > - 如果需要配置的value内容中包含双引号, 则需要在双引号前加上转义符。例如value为a"b"c, 则命令为-c " parameter = 'a\\"b\\"c' " + > > - 当使用gs_guc set/reload为“log_directory” 恢复默认值时,其默认值会被置为具体的data目录。 > - 当使用gs_guc reload进行参数设定,并指定-N参数时,当指定的节点为主节点时,主备节点的参数值都会被修改;当指定节点为备节点时,只会修改备节点的参数值,不会修改主节点的参数值。 > - 当使用gs_guc reload进行参数设定,未指定-N参数时,当在主节点上执行时,主备节点的参数值都会被修改;当在备节点上执行时,只会修改备节点的参数值,不会修改主节点的参数值。 @@ -222,6 +224,16 @@ gs_guc工具由操作系统用户omm执行。 取值范围: 已经创建的逻辑数据库名称。 +- --ignore-node=NODES + + 需要忽略的主机名称。 + + >![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** + > + > - 该参数必须与set/reload一起使用,且-Z只支持datanode。 + > - 该参数不支持与-D一起使用。 + > - 在与reload一起使用时,如果--ignore-node没有指定主节点,则集群中所有节点的参数依然会全部同步修改。 + - -c parameter 当进行check操作时,表示需要检查的参数名称;当进行set/reload操作时,参数值不允许为空,为空时不会恢复为数据库参数的默认值。 @@ -259,15 +271,15 @@ authmehod-options是可选输入,取值: > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 指定-h的情况下,默认会尝试修改所有节点的pg_hba文件,但是如果是编译安装,由于没有静态文件,可以成功修改本节点的pg_hba文件,但是会提示静态文件不存在。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本信息。 -- -M, -keymode=MODE +- -M, --keymode=MODE 设定该密码在数据库运行过程中,用于服务端(server)、客户端(client)还是创建Data Source对象时调用。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/7.1-gs_encrypt.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/7.1-gs_encrypt.md index 404bffab..48551f9d 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/7.1-gs_encrypt.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/7.1-gs_encrypt.md @@ -25,31 +25,31 @@ gs_encrypt [OPTION]... PLAINTEXT ## 参数说明 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 -- -k _PASSWORD_, -key=*PASSWORD* +- -k _PASSWORD_, --key=*PASSWORD* 用户输入的口令,用于派生出加密操作时使用的密钥。口令长度有效范围为8~16个字符,并且至少包含大写字母、小写字母、数字和特殊字符中的三种字符。 -- -v _VectorValue_,-vector=*VectorValue* +- -v _VectorValue_,--vector=*VectorValue* 用户输入的盐值,计算口令单向哈希时用于对口令进行加扰。字符串长度必须等于16。 -- -f *FilePrefix*, -file-prefix=*FilePrefix* +- -f *FilePrefix*, --file-prefix=*FilePrefix* 加密操作时使用的cipher和rand文件前缀字符串。cipher和rand文件必须存放在$GAUSSHOME/bin目录下。 -- -B _Value_,-key-base64=*Value* +- -B _Value_,--key-base64=*Value* 加密时使用的明文密钥,以base64编码。 -- -D _Value_, -vector-base64=*Value* +- -D _Value_, --vector-base64=*Value* 加密时使用的随机数,以base64编码。base64编码前的字符串长度必须为16。 @@ -61,6 +61,11 @@ gs_encrypt [OPTION]... PLAINTEXT ```bash gs_encrypt -k password@123 -v 1234567890123456 test_encrypt +``` + +命令回显: + +``` G0R7Y2oROfuiEjWtUBx9+eHP3I21A1wMOJ2onVQIiAsxMjM0NTY3ODkwMTIzNDU2 ``` @@ -70,6 +75,11 @@ G0R7Y2oROfuiEjWtUBx9+eHP3I21A1wMOJ2onVQIiAsxMjM0NTY3ODkwMTIzNDU2 ```bash gs_guc generate -S Mppdb@123 -D $GAUSSHOME/bin -o test + ``` + + 命令回显: + + ``` gs_guc encrypt -S *** ``` @@ -77,6 +87,11 @@ G0R7Y2oROfuiEjWtUBx9+eHP3I21A1wMOJ2onVQIiAsxMjM0NTY3ODkwMTIzNDU2 ```bash gs_encrypt -f test test_encrypt + ``` + + 命令回显: + + ``` tSWpR8aFyF4GHVIVO7QNXhEMNlTcqRMrk172nAf2hLgSQwhcFWyP7X0QVS0SONon ``` @@ -88,6 +103,11 @@ G0R7Y2oROfuiEjWtUBx9+eHP3I21A1wMOJ2onVQIiAsxMjM0NTY3ODkwMTIzNDU2 python >>> import base64 >>> print base64.b64encode("XXXXXXXXX"); + ``` + + 命令回显: + + ``` R2F1c3NAMTIz ``` @@ -95,6 +115,11 @@ G0R7Y2oROfuiEjWtUBx9+eHP3I21A1wMOJ2onVQIiAsxMjM0NTY3ODkwMTIzNDU2 ```python >>> print base64.b64encode("1234567890abcdef"); + ``` + + 命令回显: + + ``` MTIzNDU2Nzg5MGFiY2RlZg== ``` @@ -102,5 +127,10 @@ G0R7Y2oROfuiEjWtUBx9+eHP3I21A1wMOJ2onVQIiAsxMjM0NTY3ODkwMTIzNDU2 ```bash gs_encrypt -B R2F1c3NAMTIz -D MTIzNDU2Nzg5MGFiY2RlZg== test_encrypt + ``` + + 命令回显: + + ``` V7mpnsfIHTjVTYGw1YHI0c6aY0N4J5L7BtU4CqDoeIkxMjM0NTY3ODkwYWJjZGVm ``` diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/8-gs_om.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/8-gs_om.md index cd3a7257..e4df43eb 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/8-gs_om.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/8-gs_om.md @@ -20,7 +20,7 @@ MogDB提供了gs_om工具帮助对MogDB进行维护,包括启动MogDB、停止 - 启动MogDB ```bash - gs_om -t start [-h HOSTNAME] [-D dataDir] [--time-out=SECS] [--security-mode=MODE] [-l LOGFILE] + gs_om -t start [-h HOSTNAME] [-D dataDir] [--time-out=SECS] [--security-mode=MODE] [--cluster-number=None] [-l LOGFILE] ``` - 停止MogDB @@ -45,6 +45,7 @@ MogDB提供了gs_om工具帮助对MogDB进行维护,包括启动MogDB、停止 ```bash gs_om -t generateconf -X XMLFILE [--distribute] [-l LOGFILE] + gs_om -t generateconf --old-values=old --new-values=new [--distribute] [-l LOGFILE] ``` - 生成动态配置文件,备机failover或switchover成主机后,需要执行此操作 @@ -100,7 +101,7 @@ gs_om参数可以分为如下几类: gs_om命令的类型。 - 取值范围: start、stop、status、generateconf、cert、view、query、refreshconf、kerberos。 + 取值范围: start、stop、status、generateconf、cert、view、query、refreshconf、kerberos。 - -l @@ -108,11 +109,11 @@ gs_om参数可以分为如下几类: 默认值:$GAUSSLOG/om/gs_om-YYYY-MM-DD_hhmmss.log(virtualip的默认值:/tmp/gs_virtualip/gs_om-YYYY-MM-DD_hhmmss.log) - - -?, -help + - -?, --help 显示帮助信息。 - - -V, -version + - -V, --version 显示版本号信息。 @@ -122,34 +123,40 @@ gs_om参数可以分为如下几类: 指定需要启动的服务器名称。一次只能启动一个服务器。 - 取值范围: 服务器名称。 + 取值范围:服务器名称。 不指定服务器名称时,表示启动MogDB。 - -D - 指定 dn路径 + 指定数据库节点路径 - 取值范围: dn路径 + 取值范围:数据库节点路径 - 不指定dn路径,表示使用静态文件中的dn路径 + 不指定数据库节点路径,表示使用静态文件中的数据库节点路径 - - -time-out=SECS + - --time-out=SECS 指定超时时间,如果超时,om脚本自动退出。单位:s。 - 取值范围: 正整数,建议值300。 + 取值范围:正整数,建议值300。 默认值:300 - - -security-mode + - --security-mode 指定是否以安全模式启动数据库。 - 取值范围: + 取值范围: - on以安全模式启动。 - off不以安全模式启动,默认不开启安全模式。 + + - --cluster-number + + 指定启动时内核运行版本号。 + + 取值范围: 内核版本号。 - 停止MogDB参数: @@ -157,26 +164,26 @@ gs_om参数可以分为如下几类: 指定需要停止实例所在的服务器名称。一次只能停止一个服务器。 - 取值范围: 实例所在的服务器名称。 + 取值范围:实例所在的服务器名称。 不指定服务器名称时,表示停止MogDB。 - - -m, -mode=MODE + - -m, --mode=MODE 停止模式设置。 - 取值范围: 支持两种停止模式。 + 取值范围:支持两种停止模式。 - fast方式:保证有主备关系的实例数据是一致的。 - immediate方式:不保证有主备关系的实例数据是一致的。 默认值:fast方式。 - - -time-out=SECS + - --time-out=SECS 指定超时时间,如果超时,om脚本自动退出。单位:s。 - 取值范围: 正整数,建议值300。 + 取值范围:正整数,建议值300。 默认值:300 @@ -188,15 +195,15 @@ gs_om参数可以分为如下几类: 指定需要待查询的服务器名称。 - 取值范围: 服务器名称。 + 取值范围:服务器名称。 不指定服务器时,表示查询MogDB。 - - -az + - --az - 指定需要查询的AZ名称,比如-az=AZ1。 + 指定需要查询的AZ名称,比如--az=AZ1。 - 取值范围: AZ名称,不指定AZ名称时,表示查询所有AZ。 + 取值范围: AZ名称,不指定AZ名称时,表示查询所有AZ。 - -o @@ -204,13 +211,13 @@ gs_om参数可以分为如下几类: 如果不指定,直接显示在屏幕上。 - - -detail + - --detail 显示详细信息。如果不指定,只提示该服务器是否正常。 ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 本参数通过在每个数据库节点执行gs_ctl query命令进行查询并汇总结果,来获取MogDB的详细信息。 - - -all + - --all 显示MogDB所有节点信息。 @@ -222,43 +229,55 @@ gs_om参数可以分为如下几类: 选择MogDB配置文件路径。 - 取值范围: clusterconfig.xml的路径。 + 取值范围: clusterconfig.xml的路径。 + + - --old-values=old + + 需要修改的静态文件中的旧值。 + + 取值范围:port、ip、hostname,可以输入多个值,用逗号隔开。 + + - --new-values=new + + 需要修改的静态文件中的新值。 + + 取值范围:port、ip、hostname,可以输入多个值,用逗号隔开,与old-values一一对应。 - - -distribute + - --distribute 将静态配置文件发布到MogDB实例的安装目录。 - - 开启、关闭数据库内kerberos认证: +- 开启、关闭数据库内kerberos认证: - -U 指定数据库部署用户。 - 取值范围: 数据库部署用户 + 取值范围:数据库部署用户 - -m 指定所要进行的操作。 - 取值范围: + 取值范围: install:开启数据库内kerberos认证。 uninstall:关闭数据库内kerberos认证。 - - -krb-server安装kerberos服务端认证。 + - --krb-server安装kerberos服务端认证。 - - -krb-client安装kerberos客户端认证。 + - --krb-client安装kerberos客户端认证。 - 注:需要先安装-krb-server,卸载时同步卸载不需要该参数 + 注:需要先安装--krb-server,卸载时同步卸载不需要该参数 - SSL证书替换: - - -cert-file + - --cert-file 指定本地SSL证书zip压缩包所在路径。 - - -rollback + - --rollback 证书回退到上一次成功备份的状态。 @@ -276,7 +295,7 @@ gs_om参数可以分为如下几类: | node | 主机名称 | 表示该实例所在的主机名称。多AZ时会显示AZ编号。 | | node_ip | 主机IP | 表示该实例所在的主机IP。 | | instance | 实例ID | 表示该实例的ID。 | -| state | 实例状态 | - P: 节点的初始角色是Primary,数据库安装后就不再变动,从系统静态文件读取。
- S: 节点的初始角色是Standby,数据库安装后就不再变动,从系统静态文件读取。
- C: 节点的初始角色是Cascade Standby,数据库安装后就不再变动,从系统静态文件读取。
- Primary:表示实例为主实例。
- Standby:表示实例为备实例。
- Cascade Standby:表示实例为级联备实例。
- Secondary:表示实例为从备实例。
- Pending:表示该实例在仲裁阶段。
- Unknown:表示实例状态未知。
- Down:表示实例处于宕机状态。 | +| state | 实例状态 | - P: 节点的初始角色是Primary,数据库安装后就不再变动,从系统静态文件读取。
- S: 节点的初始角色是Standby,数据库安装后就不再变动,从系统静态文件读取。
- C: 节点的初始角色是Cascade Standby,数据库安装后就不再变动,从系统静态文件读取。
- Primary:表示实例为主实例。
- Standby:表示实例为备实例。
- Cascade Standby:表示实例为级联备实例。
- Pending:表示该实例在仲裁阶段。
- Unknown:表示实例状态未知。
- Down:表示实例处于宕机状态。 | **表 2** 特性ID说明 @@ -340,8 +359,8 @@ gs_om参数可以分为如下几类: node node_ip port instance state ----------------------------------------------------------------------------------------------------- - 1 pekpopgsci00235 10.244.62.204 5432 6001 /opt/gaussdb/cluster/data/dn1 P Primary Normal - 2 pekpopgsci00238 10.244.61.81 5432 6002 /opt/gaussdb/cluster/data/dn1 S Standby Normal + 1 pekpopgsci00235 10.244.62.204 5432 6001 /opt/mogdb/cluster/data/dn1 P Primary Normal + 2 pekpopgsci00238 10.244.61.81 5432 6002 /opt/mogdb/cluster/data/dn1 S Standby Normal ``` - 在MogDB上执行如下命令,生成配置文件。 @@ -353,7 +372,7 @@ gs_om参数可以分为如下几类: Successfully created the temp directory. Generating static configuration files. Successfully generated static configuration files. - Static configuration files for all nodes are saved in /opt/mogdb/Bigdata/gaussdb/wisequery/script/static_config_files. + Static configuration files for all nodes are saved in /opt/mogdb/Bigdata/mogdb/wisequery/script/static_config_files. Distributing static configuration files to all nodes. Successfully distributed static configuration files. ``` @@ -361,7 +380,7 @@ gs_om参数可以分为如下几类: 然后打开生成的配置文件目录,会看到新生成的3个文件。 ```bash - cd /opt/mogdb/Bigdata/gaussdb/wisequery/script/static_config_files + cd /opt/mogdb/Bigdata/mogdb/wisequery/script/static_config_files ll total 456 -rwxr-xr-x 1 omm dbgrp 155648 2016-07-13 15:51 cluster_static_config_plat1 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/8.1-gs_plan_simulator.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/8.1-gs_plan_simulator.md index eefa3c7e..a758075c 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/8.1-gs_plan_simulator.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/8.1-gs_plan_simulator.md @@ -100,7 +100,7 @@ date: 2021-11-17 工具的功能信息,表示工具要执行的操作。 - 取值范围: + 取值范围: - restore:利用收集的数据库信息来复现数据库环境,同时创建数据库。 - off:关闭已经存在的由该工具复现数据库。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/9-gs_restore.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/9-gs_restore.md index fd076ac3..2467de63 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/9-gs_restore.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/server-tools/9-gs_restore.md @@ -38,13 +38,13 @@ gs_restore [OPTION]... FILE ## 参数说明 -通用参数: +### 通用参数 -- -d, -dbname=NAME +- -d, --dbname=NAME 连接数据库dbname并直接导入到该数据库中。 -- -f, -file=FILENAME +- -f, --file=FILENAME 指定生成脚本的输出文件,或使用-l时列表的输出文件。 @@ -54,7 +54,7 @@ gs_restore [OPTION]... FILE -f不能同-d一起使用。 -- -F, -format=c|d|t +- -F, --format=c|d|t 指定归档格式。由于gs_restore会自动决定格式,因此不需要指定格式。 @@ -64,41 +64,41 @@ gs_restore [OPTION]... FILE - d/directory:该归档形式是一个目录归档形式。 - t/tar:该归档形式是一个tar归档形式。 -- -l, -list +- -l, --list 列出归档形式内容。这一操作的输出可用作-L选项的输入。注意如果像-n或-t的过滤选项与-l使用,过滤选项将会限制列举的项目(即归档形式内容)。 -- -v, -verbose +- -v, --verbose 指定verbose模式。 -- -V, -version +- -V, --version 打印gs_restore版本,然后退出。 -- -?, -help +- -?, --help 显示gs_restore命令行参数帮助,然后退出。 -导入参数: +### 导入参数 -- -a, -data-only +- -a, --data-only 只导入数据,不导入模式(数据定义)。gs_restore的导入是以追加方式进行的。 -- -c, -clean +- -c, --clean 在重新创建数据库对象前,清理(删除)已存在于将要还原的数据库中的数据库对象。 -- -C, -create +- -C, --create 导入到数据库之前会先使用CREATE DATABASE创建数据库(指定该选项后,-d指定的数据库仅用以执行CREATE DATABASE命令,所有数据将被导入到创建的数据库中)。 -- -e, -exit-on-error +- -e, --exit-on-error 当发送SQL语句到数据库时如果出现错误,请退出。默认状态下会继续,且在导入后会显示一系列错误信息。 -- -I, -index=NAME +- -I, --index=NAME 只导入已列举的index的定义。允许导入多个index。如果多次输入-I index导入多个index。 @@ -110,7 +110,7 @@ gs_restore [OPTION]... FILE 在上面这个例子中,Index1和Index2会被导入。 -- -j, -jobs=NUM +- -j, --jobs=NUM 运行gs_restore最耗时的部分(如加载数据、创建index、或创建约束)使用并发任务。该选项能大幅缩短导入时间,即将一个大型数据库导入到某一多处理器的服务器上。 @@ -120,13 +120,13 @@ gs_restore [OPTION]... FILE 该选项只支持自定义归档格式。输入文件必须是常规文件(不能是像pipe的文件)。如果是通过脚本文件,而非直接连接数据库服务器,该选项可忽略。而且,多任务不能与-single-transaction选项一起使用。 -- -L, -use-list=FILENAME +- -L, --use-list=FILENAME 只导入列举在list-file中的那些归档形式元素,导入顺序以它们在文件中的顺序为准。注意如果像-n或-t的过滤选项与-L使用,它们将会进一步限制导入的项目。 一般情况下,list-file是通过编辑前面提到的某个-l参数的输出创建的。文件行的位置可更改或直接删除,也可使用分号(;)在行的开始注出。 -- -n, -schema=NAME +- -n, --schema=NAME 只导入已列举的模式中的对象。 @@ -142,11 +142,11 @@ gs_restore [OPTION]... FILE 在上面这个例子中,sch1和sch2会被导入。 -- -O, -no-owner +- -O, --no-owner 不输出设置对象的归属这样的命令,以匹配原始数据库。默认情况下,gs_restore会发出ALTER OWNER或SET SESSION AUTHORIZATION语句设置所创建的模式元素的所属。除非是由系统管理员(或是拥有脚本中所有对象的同一个用户)进行数据库首次连接的操作,否则语句会失败。使用-O选项,任何用户名都可用于首次连接,且该用户拥有所有已创建的对象。 -- -P, -function=NAME(args) +- -P, --function=NAME(args) 只导入已列举的函数。请按照函数所在转储文件中的目录,准确拼写函数名称和参数。 @@ -162,15 +162,15 @@ gs_restore [OPTION]... FILE 在上面这个例子中,test1模式下的函数Func1(i integer)和test2模式下的函数Func2(j integer)会被一起导入。 -- -s, -schema-only +- -s, --schema-only 只导入模式(数据定义),不导入数据(表内容)。当前的序列值也不会导入。 -- -S, -sysadmin=NAME +- -S, --sysadmin=NAME 该参数为扩展预留接口,不建议使用。 -- -t, -table=NAME +- -t, --table=NAME 只导入已列举的表定义、数据或定义和数据。该选项与-n选项同时使用时,用来指定某个模式下的表对象。-n参数不输入时,默认为PUBLIC模式。多次输入-n -t 可以导入指定模式下的多个表。 @@ -198,47 +198,59 @@ gs_restore -h host_name -p port_number -d postgres -n PUBLIC -t table1 -n test1 -t参数不支持schema_name.table_name的输入格式。 -- -T, -trigger=NAME +- -T, --trigger=NAME 该参数为扩展预留接口。 -- -x, -no-privileges/-no-acl +- -x, --no-privileges/--no-acl - 防止导入访问权限(grant/revoke命令)。 + 防止导入访问权限(GRANT/REVOKE命令)。 -- -1, -single-transaction +- -1, --single-transaction 执行导入作为一个单独事务(即把命令包围在BEGIN/COMMIT中)。 - 该选项确保要么所有命令成功完成,要么没有改变应用。该选项意为-exit-on-error。 + 该选项确保要么所有命令成功完成,要么没有改变应用。该选项意为--exit-on-error。 -- -disable-triggers +- --disable-triggers 该参数为扩展预留接口,不建议使用。 -- -no-data-for-failed-tables +- --no-data-for-failed-tables 默认状态下,即使创建表的命令失败(如表已经存在),表数据仍会被导入。使用该选项,像这种表的数据会被跳过。如果目标数据库已包含想要的表内容,这种行为会有帮助。 该选项只有在直接导入到某数据库中时有效,不针对生成SQL脚本文件输出。 -- -no-security-labels +- --no-publications + + 不导入发布。 + +- --no-security-labels 该参数为扩展预留接口,不建议使用。 -- -no-tablespaces +- --no-subscriptions + + 不导入订阅。 + +- --no-tablespaces 不输出选择表空间的命令。使用该选项,无论默认表空间是哪个,在导入过程中所有对象都会被创建。 -- -section=SECTION +- --section=SECTION 导入已列举的区段(如pre-data、data、或post-data)。 -- -use-set-session-authorization +- --use-set-session-authorization 该选项用来进行文本格式的备份。 输出SET SESSION AUTHORIZATION命令,而非ALTER OWNER命令,用以决定对象归属。该选项使转储更加兼容标准,但通过参考转储中对象的记录,导入过程可能会有问题。使用SET SESSION AUTHORIZATION的转储要求必须是系统管理员,同时在导入前还需参考”SET SESSION AUTHORIZATION”,手工对导出文件的密码进行修改验证,只有这样才能进行正确的导入操作,相比之下,ALTER OWNER对权限要求较低。 + +- --pipeline + + 使用管道传输密码,禁止在终端使用。 ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-notice.gif) **须知:** @@ -252,43 +264,43 @@ gs_restore -h host_name -p port_number -d postgres -n PUBLIC -t table1 -n test1 ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** -1. -d/-dbname 和 -f/-file 不能同时使用; -2. -s/-schema-only 和 -a/-data-only不能同时使用; -3. -c/-clean 和 -a/-data-only不能同时使用; -4. 使用-single-transaction时,-j/-jobs必须为单任务; -5. -role 和 -rolepassword必须一起使用。 +1. -d/--dbname 和 -f/--file 不能同时使用; +2. -s/--schema-only 和 -a/--data-only不能同时使用; +3. -c/--clean 和 -a/--data-only不能同时使用; +4. 使用--single-transaction时,-j/--jobs必须为单任务; +5. --role 和--rolepassword必须一起使用。 -连接参数: +### 连接参数 -- -h, -host=HOSTNAME +- -h, --host=HOSTNAME 指定的主机名称。如果取值是以斜线开头,他将用作Unix域套接字的目录。默认值取自PGHOST环境变量;如果没有设置,将启动某个Unix域套接字建立连接。 该参数只针对MogDB外,对MogDB内本机只能用127.0.0.1。 -- -p, -port=PORT +- -p, --port=PORT 指定服务器所侦听的TCP端口或本地Unix域套接字后缀,以确保连接。默认值设置为PGPORT环境变量。 在开启线程池情况下,建议使用 pooler port,即侦听端口+1。 -- -U, -username=NAME +- -U, --username=NAME 所连接的用户名。 -- -w, -no-password +- -w, --no-password 不出现输入密码提示。如果服务器要求密码认证并且密码没有通过其它形式给出,则连接尝试将会失败。 该选项在批量工作和不存在用户输入密码的脚本中很有帮助。 -- -W, -password=PASSWORD +- -W, --password=PASSWORD 指定用户连接的密码。如果主机的认证策略是trust,则不会对系统管理员进行密码验证,即无需输入-W参数;如果没有-W参数,并且不是系统管理员,“gs_restore”会提示用户输入密码。 -- -role=ROLENAME +- --role=ROLENAME 指定导入操作使用的角色名。选择该参数,会使gs_restore连接数据库后,发起一个SET ROLE角色名命令。当所授权用户(由-U指定)没有gs_restore要求的权限时,该参数会起到作用,即切换到具备相应权限的角色。某些安装操作规定不允许直接以初始用户身份登录,而使用该参数能够在不违反该规定的情况下完成导入。 -- -rolepassword=ROLEPASSWORD +- --rolepassword=ROLEPASSWORD 指定具体角色用户的角色密码。 @@ -381,3 +393,7 @@ gs_restore backup/MPPDB_backup.dmp -p 15400 -d postgres -e -a -n PUBLIC -t table gs_restore[2017-07-21 19:16:26]: restore operation successful gs_restore[2017-07-21 19:16:26]: total time: 20203 ms ``` + +## 相关命令 + +[gs_dump](5-gs_dump),[gs_dumpall](6-gs_dumpall) diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/system-catalogs-and-views-supported-by-gs_collector.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/system-catalogs-and-views-supported-by-gs_collector.md index 065ae36e..3fd7a66c 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/system-catalogs-and-views-supported-by-gs_collector.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/system-catalogs-and-views-supported-by-gs_collector.md @@ -7,86 +7,6 @@ date: 2021-11-17 # gs_collector工具支持收集的系统表和视图列表 -- OS - - gs_os_run_info - - pg_os_threads -- Session/Thread - - gs_session_stat - - gs_session_time - - gs_session_cpu_statistics - - gs_session_memory_statistics - - gs_session_memory_context - - gs_session_memory - - gs_session_memory_detail - - pg_stat_activity - - gs_thread_memory_context -- WLM - - gs_cluster_resource_info - - pg_total_user_resource_info - - pg_total_user_resource_info_oid - - gs_wlm_rebuild_user_resource_pool - - gs_wlm_resource_pool - - gs_wlm_workload_records - - pg_wlm_statistics - - pg_app_workloadgroup_mapping -- Query-AP Operator - - gs_wlm_operator_info - - gs_wlm_operator_history - - gs_wlm_operator_statistics -- Query-AP - - gs_wlm_session_info_all - - gs_wlm_session_history - - gs_wlm_session_info - - gs_wlm_user_session_info - - gs_wlm_session_statistics - - pg_session_iostat - - pg_session_wlmstat -- Cache I/O - - pg_statio_all_indexes - - pg_statio_all_sequences - - pg_statio_all_tables - - pg_statio_sys_indexes - - pg_statio_sys_sequences - - pg_statio_sys_tables - - pg_statio_user_indexes - - pg_statio_user_sequences - - pg_statio_user_tables - - gs_stat_db_cu - - gs_stat_session_cu -- Memory - - pg_total_memory_detail - - pg_shared_memory_detail - - gs_total_memory_detail -- File - - gs_file_stat - - gs_redo_stat - - pg_stat_bad_block -- Object - - pg_stat_user_tables - - pg_stat_user_indexes - - pg_stat_sys_tables - - pg_stat_sys_indexes - - pg_stat_all_tables - - pg_stat_all_indexes - - pg_stat_database - - pg_stat_database_conflicts - - pg_stat_xact_all_tables - - pg_stat_xact_sys_tables - - pg_stat_xact_user_tables - - pg_stat_xact_user_functions -- Lock - - pg_locks -- Utility - - pg_stat_replication - - pg_replication_slots - - pg_stat_bgwriter -- Transaction - - pg_running_xacts - - pg_prepared_xacts -- Waits - - pg_thread_wait_status - - +
diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/1-gaussdb.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/1-gaussdb.md index 617c8deb..5cd3a891 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/1-gaussdb.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/1-gaussdb.md @@ -55,11 +55,11 @@ gaussdb接受[表1](#canshushuoming)中所示的命令行参数。 | -p PORT | 指定gaussdb侦听客户端连接的TCP/IP端口或本地Unix domain socket文件的扩展。默认端口号为15400。 | 正整数,在操作系统支持的端口范围内。 | | -s | 在每条命令结束时打印时间信息和其他统计信息。 | - | | -S WORK-MEM | 声明内部排序和散列在求助于临时磁盘文件之前可以使用的内存大小。 | 单位为KB。 | -| -single_node | 拉起单机数据库。 | - | -| -V, -version | 打印gaussdb的版本信息然后退出。 | - | -| -NAME=VALUE | 给一个正在运行的参数赋值。 | - | -| -describe-config | 描述配置参数然后退出。 | - | -| -?, -help | 显示关于gaussdb命令行参数的帮助信息,然后退出。 | - | +| --single_node | 拉起单机数据库。 | - | +| -V, --version | 打印gaussdb的版本信息然后退出。 | - | +| --NAME=VALUE | 给一个正在运行的参数赋值。 | - | +| --describe-config | 描述配置参数然后退出。 | - | +| -?, --help | 显示关于gaussdb命令行参数的帮助信息,然后退出。 | - | [表2](#kaifazhexuanxiang)中的参数主要是便于开发人员调试使用,有时也用于帮助恢复严重损坏的数据库。在应用程序使用数据库提供服务时,请不要使用这些参数进行调试。 @@ -70,10 +70,11 @@ gaussdb接受[表1](#canshushuoming)中所示的命令行参数。 | -f s\|i\|n\|m\|h | 禁止某种扫描和连接方法的使用。 | 取值范围:
- s:关闭顺序
- i:索引扫描
- n:关闭嵌套循环
- m:融合(merge)连接
- h:Hash连接 | | -n | 主要用于调试导致服务器进程异常崩溃的问题。一般策略是通知所有其他服务器进程终止并重新初始化共享内存和信号灯。该选项指定gaussdb不重新初始化共享内存。 | - | | -P | 读系统表时忽略系统索引,但在修改表时仍然更新索引。 | - | +| -O | 允许修改系统表的结构
须知:此选项可能导致系统表损坏,甚至数据库无法启动。 | - | | -t pa\|pl\|ex | 打印与每个主要系统模块相关的查询记时统计。 | - | | -T | 主要用于调试导致服务器进程异常崩溃的问题。该选项指定gaussdb通过发送SIGSTOP信号停止其他所有服务器进程,但是并不让它们退出。这样就允许系统程序员手动从所有服务器进程搜集内核转储。 | - | | -W NUM | 指定一个新的服务器进程开始需要等待的秒数。 | 单位:秒 | -| -localxid | 使用本地事务ID,而不是全局事务ID。须知:此选项仅用于gs_initdb。使用此选项可能会导致数据库不一致。 | 已存在的本地事务ID | +| --localxid | 使用本地事务ID,而不是全局事务ID。
须知:此选项仅用于gs_initdb。使用此选项可能会导致数据库不一致。 | 已存在的本地事务ID | 下面的选项[表3](#danyonghu)仅在单用户模式下可用。 @@ -81,7 +82,7 @@ gaussdb接受[表1](#canshushuoming)中所示的命令行参数。 | 参数 | 参数说明 | 取值范围 | | :---------- | :--------------------------------------------------- | :--------------------- | -| -single | 启动单用户模式。必须是命令行中的第一个选项。 | - | +| --single | 启动单用户模式。必须是命令行中的第一个选项。 | - | | DBNAME | 要访问的数据库的名称。必须是命令行中的最后一个选项。 | 字符串。默认为用户名。 | | -d 0-5 | 重新指定调试级别。 | 0-5 | | -E | 回显所有命令。 | - | @@ -92,7 +93,7 @@ gaussdb接受[表1](#canshushuoming)中所示的命令行参数。 | 参数 | 参数说明 | 取值范围 | | :---------- | :----------------------------------------------------------- | :------- | -| -boot | 启动自启动模式。必须是命令行中的第一个选项。该参数是对数据库中的参数变量及相关配置初始化,常用在数据库安装的流程中,直接使用该参数,无明显行为感知。 | - | +| --boot | 启动自启动模式。必须是命令行中的第一个选项。该参数是对数据库中的参数变量及相关配置初始化,常用在数据库安装的流程中,直接使用该参数,无明显行为感知。 | - | | -r FILENAME | 将所有服务器标准输出和标准错误保存到文件filename中。 | - | | -x NUM | 指定一个新的服务器线程的类型。在初始化数据库时,会用到自启动模式,通过设置这个参数,启动不同线程来执行一些逻辑,正常情况下,不会用到,因为自启动模式很少会用到。 | - | @@ -102,7 +103,7 @@ gaussdb接受[表1](#canshushuoming)中所示的命令行参数。 | :----- | :--------------------------- | :------- | | -u NUM | 指定升级前数据库内核版本号。 | - | -除以上参数外,出现在postgres.conf中的所有参数,均可以用-guc_name=guc_value的方式在gaussdb启动时传给gaussdb。例如,-enable_fast_query_shipping=off。 +除以上参数外,出现在postgres.conf中的所有参数,均可以用--guc_name=guc_value的方式在gaussdb启动时传给gaussdb。例如,--enable_fast_query_shipping=off。 ## 环境变量 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/10-gs_tar.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/10-gs_tar.md index 21357ff9..c3e92e03 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/10-gs_tar.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/10-gs_tar.md @@ -34,11 +34,11 @@ date: 2021-06-07 gs_tar参数如下: -- -F, -filename=FILENAME +- -F, --filename=FILENAME 解压文件,必选项。 -- -D,-destination=DIRECTORY +- -D,--destination=DIRECTORY 解压文件输出的目录,必选项。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/11-gs_uninstall.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/11-gs_uninstall.md index 5214bfc6..959d28da 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/11-gs_uninstall.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/11-gs_uninstall.md @@ -33,7 +33,7 @@ MogDB提供了gs_uninstall工具来帮助完成MogDB的卸载。 ## 参数说明 -- -delete-data +- --delete-data 删除数据文件。 @@ -51,11 +51,11 @@ MogDB提供了gs_uninstall工具来帮助完成MogDB的卸载。 > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 由于在执行gs_uninstall时,系统会自动删除MogDB相关目录。因此建议用户通过该参数指定日志文件到非MogDB相关路径。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/12-gs_upgradectl.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/12-gs_upgradectl.md index 3d87ed41..f8b6ba18 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/12-gs_upgradectl.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/12-gs_upgradectl.md @@ -30,7 +30,7 @@ date: 2021-06-07 - 升级前后,数据库的部署方式(配置文件)不能发生变化。升级前会对部署方式进行校验,如果改变,会报错。 - 升级前要保证操作系统处于健康状态,通过gs_checkos工具可以完成操作系统状态检查。 - 就地升级需要停止业务,灰度升级支持全业务操作。 -- 数据库运行正常且主DN的数据完全同步到备DN。 +- 数据库运行正常且主数据库节点的数据完全同步到备数据库节点。 - 升级过程中不允许打开kerberos开关。 - 请不要修改安装包中解压出来的version.cfg文件。 - 如果升级过程中出现异常导致升级失败,需用户手动回滚,并且必须回滚成功后才能进行下一次升级。 @@ -102,11 +102,11 @@ date: 2021-06-07 默认值:/var/log/gaussdb/用户名/om/gs_upgradectl-YYYY-MM-DD_hhmmss.log -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 @@ -116,11 +116,11 @@ date: 2021-06-07 取值范围: xml文件的存储路径。 -- -grey +- --grey 使用灰度升级方式来进行升级操作。 -- -force +- --force 当MogDB状态不正常,无法支持正常回滚时,用此参数进行强制回滚操作。 @@ -218,7 +218,7 @@ gs_upgradectl -t commit-upgrade -X /data/xml/3node_3c3d_1m2s_etcd.xml **示例三:**使用gs_upgradectl脚本执行自动回滚,撤销已经成功/失败的升级操作(升级回滚)。 ```bash -gs_upgradectl -t rollback -X /data/xml/3node_3c3d_1m2s_etcd.xml +gs_upgradectl -t auto-rollback -X /data/xml/3node_3c3d_1m2s_etcd.xml Static configuration matched with old static configuration files. Performing inplace rollback. Checking static configuration files. diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/13-gs_expansion.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/13-gs_expansion.md index 0abc4f31..e26ed0af 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/13-gs_expansion.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/13-gs_expansion.md @@ -17,6 +17,9 @@ MogDB提供了gs_expansion工具对数据库的备机进行扩容。支持从单 - 扩容级联备之前要确保原集群中有处于同一AZ(Available Zone)且状态正常的备机,或扩容级联备的同时也扩容了处于同AZ的备机。 - 对数据库集群进行扩容前,需要关注主机及新扩容节点CPU、IO、网络等情况,不建议在硬件压力较大时执行扩容,否则可能导致扩容耗时较长甚至扩容失败。 - 当原集群数据量较大时,在进行扩容操作前应当在主机上先执行checkpoint,否则可能导致扩容耗时较长甚至扩容失败。 +- 在单节点扩容时,如果节点hot_standby被关闭过,则需要在每个备节点上也按照如下流程修改: + 1. 备节点需要先修改wal_level大于等于hot_standby后重启 + 2. 然后再修改hot_standby为on重启,之后主机扩容才能成功。否则扩容时备机会启动失败 ## 前提条件 @@ -32,6 +35,8 @@ MogDB提供了gs_expansion工具对数据库的备机进行扩容。支持从单 - 不允许同时执行2次相同的gs_expansion命令。 - 扩容备节点的操作只能在主节点上执行。 +> **说明**:出于安全考虑,企业版安装方式下,gaussdbToolPath目录下该工具前置完成后会自动删除。 + ## 语法 - 备机扩容 @@ -64,7 +69,7 @@ MogDB提供了gs_expansion工具对数据库的备机进行扩容。支持从单 运行MogDB的操作系统用户组。 - 新增扩容的备机用户组必须与已安装数据库的主机保持一致,且要提前创建好。 + 新增扩容的备机用户组必须与已安装数据库的主机保持一致。 - -X @@ -89,11 +94,19 @@ MogDB提供了gs_expansion工具对数据库的备机进行扩容。支持从单 3. 扩容备机上的数据必须使用om方式安装,使用编译方式启动的数据库不支持与主机扩容。 4. 新增扩容节点的数据库版本需要与主库保持一致。 -- -?, -help +- --time-out=SECS + + 指定在扩容时候传输软件包的超时时间,对于网络性能较差的情况下,可以适当增加超时时间,避免发送软件包超时。 + + 默认值:300s。 + + 单位:s。 + +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/14-gs_dropnode.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/14-gs_dropnode.md index 85230669..e5a1f14d 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/14-gs_dropnode.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/14-gs_dropnode.md @@ -28,9 +28,9 @@ MogDB提供了gs_dropnode工具从一主多备的数据库中移除不需要的 方式二:在当前主机上将目标备机加入到/etc/hosts.deny文件中(例如:sshd:10.11.12.13:deny),拒绝从目标备机的远程ssh连接(对所有用户生效),此方法需要系统sshd服务绑定到libwrap库。 -- 当目标备机被移除后,如果不再需要目标备机,请在目标备机上使用**gs_uninstall -delete-data -L**命令单点卸载,请注意务必添加-L选项。 +- 当目标备机被移除后,如果不再需要目标备机,请在目标备机上使用`gs_uninstall -delete-data -L`命令单点卸载,请注意务必添加-L选项。 -- 当目标备机被移除后,如果需要以单机方式使用目标备机且保留原数据,请在目标备机上先执行**gs_guc set -D /gaussdb/data/dbnode -c “replconninfoX“** 其中 */gaussdb/data/dbnode* 表示数据目录,*replconninfoX* 表示主备集群中的除本节点外的其他节点,比如一主一备则需要配置 *replconninfo1*, 一主两备需要配置 *replconninfo1* 和 *replconninfo2*, 以此类推;如果无需保留原数据,请先执行**gs_uninstall -delete-data -L**命令卸载后重新安装。 +- 当目标备机被移除后,如果需要以单机方式使用目标备机且保留原数据,请在目标备机上先执行`gs_guc set -D /gaussdb/data/dbnode -c "replconninfoX"`,其中`/gaussdb/data/dbnode`表示数据目录,`replconninfoX`表示主备集群中的除本节点外的其他节点,比如一主一备则需要配置`replconninfo1`, 一主两备需要配置`replconninfo1`和`replconninfo2`, 以此类推;如果无需保留原数据,请先执行`gs_uninstall -delete-data -L`命令卸载后重新安装。 - 当目标备机被移除后,如果需要以备机方式使用目标备机,请参考gs_expansion命令重新将目标备机添加到集群中。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/15-gs_probackup.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/15-gs_probackup.md index fc0d4339..e7887206 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/15-gs_probackup.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/15-gs_probackup.md @@ -11,7 +11,7 @@ date: 2021-06-07 gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对MogDB实例进行定期备份,以便在数据库出现故障时能够恢复服务器。 -- 可用于备份单机数据库或者主节点数据库,为物理备份。 +- 可用于备份单机数据库,也可对主机或者主节点数据库备机进行备份,为物理备份。 - 可备份外部目录的内容,如脚本文件、配置文件、日志文件、dump文件等。 - 支持增量备份、定期备份和远程备份。 - 可设置备份的留存策略。 @@ -29,9 +29,12 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 - 如果要通过ssh在远程模式下备份数据库,需要在本地和远程主机安装相同主版本的数据库,并通过ssh-copy-id remote_user@remote_host命令设置本地主机备份用户和远程主机数据库用户的无密码ssh连接。 - 远程模式下只能执行add-instance、backup、restore子命令。 - 使用restore子命令前,应先停止gaussdb进程。 -- 当存在用户自定义表空间时,备份的时候要加上 -external-dirs 参数,否则,该表空间不会被备份。 -- 当备份的规模比较大时,为了防止备份过程中timeout发生,请适当调整postgresql.conf文件的参数 session_timeout、wal_sender_timeout。并且在备份的命令行参数中适当调整参数-rw-timeout的值。 -- 恢复时,使用-T选项把备份中的外部目录重定向到新目录时,请同时指定参数-external-mapping。 +- 当存在用户自定义表空间时,备份的时候要加上--external-dirs 参数,否则,该表空间不会被备份。 +- 当备份的规模比较大时,为了防止备份过程中timeout发生,请适当调整postgresql.conf文件的参数 session_timeout、wal_sender_timeout。并且在备份的命令行参数中适当调整参数--rw-timeout的值。 +- 恢复时,使用-T选项把备份中的外部目录重定向到新目录时,请同时指定参数--external-mapping。 +- 当使用远程备份时,请确保远程机器和备份机器的时钟同步,以防止使用--recovery-target-time恢复的场合,启动gaussdb时有可能会失败。 +- 当远程备份有效时\(remote-proto=ssh\),请确保-h和--remote-host指定的是同一台机器。当远程备份无效时,如果指定了-h选项,请确保-h指定的是本机地址或本机主机名。 +- 当前暂不支持备份逻辑复制槽。 ## 命令说明 @@ -91,7 +94,7 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 [--help] ``` -- 显示位于备份目录中的pg_probackup.conf配置文件的内容。可以通过指定-format=json选项,以json格式显示。默认情况下,显示为纯文本格式。 +- 显示位于备份目录中的pg_probackup.conf配置文件的内容。可以通过指定--format=json选项,以json格式显示。默认情况下,显示为纯文本格式。 ```bash gs_probackup show-config -B backup-path --instance=instance_name @@ -99,7 +102,7 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 [--help] ``` -- 显示备份目录的内容。如果指定了instance_name和backup_id,则显示该备份的详细信息。可以通过指定-format=json选项,以json格式显示。默认情况下,备份目录的内容显示为纯文本格式。 +- 显示备份目录的内容。如果指定了instance_name和backup_id,则显示该备份的详细信息。可以通过指定--format=json选项,以json格式显示。默认情况下,备份目录的内容显示为纯文本格式。 ```bash gs_probackup show -B backup-path @@ -163,49 +166,49 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 ## 参数说明 -**通用参数** +### 通用参数 - command gs_probackup除version和help以外的子命令:init、add-instance、del-instance、set-config、set-backup、show-config、show、backup、restore、merge、delete、validate。 -- -?, -help +- -?, --help 显示gs_probackup命令行参数的帮助信息,然后退出。 子命令中只能使用-help,不能使用-?。 -- -V, -version +- -V, --version 打印gs_probackup版本,然后退出。 -- -B *backup-path*, -backup-path=*backup-path* +- -B *backup-path*, --backup-path=*backup-path* 备份的路径。 系统环境变量:$BACKUP_PATH -- -D *pgdata-path*, -pgdata=*pgdata-path* +- -D *pgdata-path*, --pgdata=*pgdata-path* 数据目录的路径。 系统环境变量:$PGDATA -- -instance=*instance_name* +- --instance=*instance_name* 实例名。 -- -i *backup-id*, -backup-id=*backup-id* +- -i *backup-id*, --backup-id=*backup-id* 备份的唯一标识。 -- -format=*format* +- --format=*format* 指定显示备份信息的格式,支持plain和json格式。 默认值:plain -- -status=*backup_status* +- --status=*backup_status* 删除指定状态的所有备份,包含以下状态: @@ -218,25 +221,25 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 - ERROR:由于意外错误,备份失败。 - ORPHAN:由于其父备份之一已损坏或丢失,备份无效。 -- -j *threads_num*, -threads=*threads_num* +- -j *threads_num*, --threads=*threads_num* 设置备份、还原、合并进程的并行线程数。 -- -archive +- --archive 显示WAL归档信息。 -- -progress +- --progress 显示进度。 -- -note=*text* +- --note=*text* 给备份添加note。 -**备份相关参数** +### 备份相关参数 -- -b *backup-mode*, -backup-mode=*backup-mode* +- -b *backup-mode*, --backup-mode=*backup-mode* 指定备份模式,支持FULL和PTRACK。 @@ -244,43 +247,43 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 PTRACK:创建PTRACK增量备份。 -- -C, -smooth-checkpoint +- -C, --smooth-checkpoint 将检查点在一段时间内展开。默认情况下,gs_probackup会尝试尽快完成检查点。 -- -S *slot-name*, -slot=*slot-name* +- -S *slot-name*, --slot=*slot-name* 指定WAL流处理的复制slot。 -- -temp-slot +- --temp-slot 在备份的实例中为WAL流处理创建一个临时物理复制slot,它确保在备份过程中,所有所需的WAL段仍然是可用的。 - 默认的slot名为pg_probackup_slot,可通过选项-slot/-S更改。 + 默认的slot名为pg_probackup_slot,可通过选项--slot/-S更改。 -- -backup-pg-log +- --backup-pg-log 将日志目录包含到备份中。此目录通常包含日志消息。默认情况下包含日志目录,但不包含日志文件。如果修改了默认的日志路径,需要备份日志文件时可使用-E参数进行备份,使用方法见下文。 -- -E *external-directories-paths*, -external-dirs=*external-directories-paths* +- -E *external-directories-paths*, --external-dirs=*external-directories-paths* 将指定的目录包含到备份中。此选项对于备份位于数据目录外部的脚本、sql转储和配置文件很有用。如果要备份多个外部目录,请在Unix上用冒号分隔它们的路径。 例如:-E /tmp/dir1:/tmp/dir2 -- -skip-block-validation +- --skip-block-validation 关闭块级校验,加快备份速度。 -- -no-validate +- --no-validate 在完成备份后跳过自动验证。 -- -no-sync +- --no-sync 不将备份文件同步到磁盘。 -- -archive-timeout=*timeout* +- --archive-timeout=*timeout* 以秒为单位设置流式处理的超时时间。 @@ -292,109 +295,109 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 默认值: 120 -**恢复相关参数** +### 恢复相关参数 -- -I, -incremental-mode=none|checksum|lsn +- -I, --incremental-mode=none|checksum|lsn 若PGDATA中可用的有效页没有修改,则重新使用它们。 默认值:none -- -external-mapping=*OLDDIR=NEWDIR* +- --external-mapping=*OLDDIR=NEWDIR* 在恢复时,将包含在备份中的外部目录从_OLDDIR_重新定位到_NEWDIR_目录。_OLDDIR_和_NEWDIR_都必须是绝对路径。如果路径中包含“=”,则使用反斜杠转义。此选项可为多个目录多次指定。 -- -T *OLDDIR=NEWDIR*, -tablespace-mapping=*OLDDIR=NEWDIR* +- -T *OLDDIR=NEWDIR*, --tablespace-mapping=*OLDDIR=NEWDIR* - 在恢复时,将表空间从_OLDDIR_重新定位到_NEWDIR_目录。_OLDDIR_和_NEWDIR_必须都是绝对路径。如果路径中包含“=”,则使用反斜杠转义。多个表空间可以多次指定此选项。此选项必须和-external-mapping一起使用。 + 在恢复时,将表空间从_OLDDIR_重新定位到_NEWDIR_目录。_OLDDIR_和_NEWDIR_必须都是绝对路径。如果路径中包含“=”,则使用反斜杠转义。多个表空间可以多次指定此选项。此选项必须和--external-mapping一起使用。 -- -skip-external-dirs +- --skip-external-dirs 跳过备份中包含的使用-external-dirs选项指定的外部目录。这些目录的内容将不会被恢复。 -- -skip-block-validation +- --skip-block-validation 跳过块级校验,以加快验证速度。在恢复之前的自动验证期间,将仅做文件级别的校验。 -- -no-validate +- --no-validate 跳过备份验证。 -- -force +- --force 允许忽略备份的无效状态。如果出于某种原因需要从损坏的或无效的备份中恢复数据,可以使用此标志。请谨慎使用。 -**恢复目标相关参数(recovery_options)** +### 恢复目标相关参数(recovery_options) > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 当前不支持配置连续的WAL归档的PITR,因而使用这些参数会有一定限制,具体如下描述。 如果需要使用持续归档的WAL日志进行PITR恢复,请按照下面描述的步骤: 1. 将物理备份的文件替换目标数据库目录。 2. 删除数据库目录下pg_xlog/中的所有文件。 3. 将归档的WAL日志文件复制到pg_xlog文件中(此步骤可以省略,通过配置recovery.conf恢复命令文件中的restore_command项替代)。 4. 在数据库目录下创建恢复命令文件recovery.conf,指定数据库恢复的程度。 5. 启动数据库。 6. 连接数据库,查看是否恢复到希望预期的状态。若已经恢复到预期状态,通过pg_xlog_replay_resume()指令使主节点对外提供服务。 -- -recovery-target-lsn=*lsn* +- --recovery-target-lsn=*lsn* 指定要恢复到的lsn,当前只能指定备份的stop lsn。 -- -recovery-target-name=*target-name* +- --recovery-target-name=*target-name* 指定要将数据恢复到的已命名的保存点,保存点可以通过查看备份中recovery-name字段得到。 -- -recovery-target-time=*time* +- --recovery-target-time=*time* 指定要恢复到的时间,当前只能指定备份中的recovery-time。 -- -recovery-target-xid=*xid* +- --recovery-target-xid=*xid* 指定要恢复到的事务ID,当前只能指定备份中的recovery-xid。 -- -recovery-target-inclusive=*boolean* +- --recovery-target-inclusive=*boolean* 当该参数指定为true时,恢复目标将包括指定的内容。 当该参数指定为false时,恢复目标将不包括指定的内容。 - 该参数必须和-recovery-target-name、-recovery-target-time、-recovery-target-lsn或-recovery-target-xid一起使用。 + 该参数必须和--recovery-target-name、--recovery-target-time、--recovery-target-lsn或--recovery-target-xid一起使用。 -**留存相关参数(retention_options)** +### 留存相关参数(retention_options) > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 可以和backup和delete命令一起使用这些参数。 -- -retention-redundancy=*retention-redundancy* +- --retention-redundancy=*retention-redundancy* 指定在数据目录中留存的完整备份数。必须为正整数。0表示禁用此设置。 默认值:0 -- -retention-window=*retention-window* +- --retention-window=*retention-window* 指定留存的天数。必须为正整数。0表示禁用此设置。 默认值:0 -- -wal-depth=*wal-depth* +- --wal-depth=*wal-depth* 每个时间轴上必须留存的执行PITR能力的最新有效备份数。必须为正整数。0表示禁用此设置。 默认值:0 -- -delete-wal +- --delete-wal 从任何现有的备份中删除不需要的WAL文件。 -- -delete-expired +- --delete-expired 删除不符合pg_probackup.conf配置文件中定义的留存策略的备份。 -- -merge-expired +- --merge-expired 将满足留存策略要求的最旧的增量备份与其已过期的父备份合并。 -- -dry-run +- --dry-run 显示所有可用备份的当前状态,不删除或合并过期备份。 -**固定备份相关参数(pinning_options)** +### 固定备份相关参数(pinning_options) > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 如果要将某些备份从已建立的留存策略中排除,可以和backup和set-backup命令一起使用这些参数。 -- -ttl=*interval* +- --ttl=*interval* 指定从恢复时间开始计算,备份要固定的时间量。必须为正整数。0表示取消备份固定。 @@ -402,51 +405,51 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 例如:-ttl=30d。 -- -expire-time=*time* +- --expire-time=*time* 指定备份固定失效的时间戳。必须是ISO-8601标准的时间戳。 - 例如:-expire-time='2020-01-01 00:00:00+03' + 例如:--expire-time='2020-01-01 00:00:00+03' -**日志相关参数(logging_options)** +### 日志相关参数(logging_options) 日志级别:verbose、log、info、warning、error和off。 -- -log-level-console=*log-level-console* +- --log-level-console=*log-level-console* 设置要发送到控制台的日志级别。每个级别都包含其后的所有级别。级别越高,发送的消息越少。指定off级别表示禁用控制台日志记录。 默认值:info -- -log-level-file=*log-level-file* +- --log-level-file=*log-level-file* 设置要发送到日志文件的日志级别。每个级别都包含其后的所有级别。级别越高,发送的消息越少。指定off级别表示禁用日志文件记录。 默认值:off -- -log-filename=*log-filename* +- --log-filename=*log-filename* 指定要创建的日志文件的文件名。文件名可以使用strftime模式,因此可以使用%-escapes指定随时间变化的文件名。 例如,如果指定了“pg_probackup-%u.log”模式,则pg_probackup为每周的每一天生成单独的日志文件,其中%u替换为相应的十进制数字,即pg_probackup-1.log表示星期一;pg_probackup-2.log表示星期二,以此类推。 - 如果指定了-log-level-file参数启用日志文件记录,则该参数有效。 + 如果指定了--log-level-file参数启用日志文件记录,则该参数有效。 默认值:“pg_probackup.log” -- -error-log-filename=*error-log-filename* +- --error-log-filename=*error-log-filename* - 指定仅用于error日志的日志文件名。指定方式与-log-filename参数相同。 + 指定仅用于error日志的日志文件名。指定方式与--log-filename参数相同。 此参数用于故障排除和监视。 -- -log-directory=*log-directory* +- --log-directory=*log-directory* 指定创建日志文件的目录。必须是绝对路径。此目录会在写入第一条日志时创建。 默认值:$BACKUP_PATH/log -- -log-rotation-size=*log-rotation-size* +- --log-rotation-size=*log-rotation-size* 指定单个日志文件的最大大小。如果达到此值,则启动gs_probackup命令后,日志文件将循环,但help和version命令除外。0表示禁用基于文件大小的循环。 @@ -454,7 +457,7 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 默认值:0 -- -log-rotation-age=*log-rotation-age* +- --log-rotation-age=*log-rotation-age* 单个日志文件的最大生命周期。如果达到此值,则启动gs_probackup命令后,日志文件将循环,但help和version命令除外。$BACKUP_PATH/log/log_rotation目录下保存最后一次创建日志文件的时间。0表示禁用基于时间的循环。 @@ -462,17 +465,17 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 默认值:0 -**连接相关参数(connection_options)** +### 连接相关参数(connection_options) > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 可以和backup命令一起使用这些参数。 -- -d *dbname*, -pgdatabase=*dbname* +- -d *dbname*, --pgdatabase=*dbname* 指定要连接的数据库名称。该连接仅用于管理备份进程,因此您可以连接到任何现有的数据库。如果命令行、PGDATABASE环境变量或pg_probackup.conf配置文件中没有指定此参数,则gs_probackup会尝试从PGUSER环境变量中获取该值。如果未设置PGUSER变量,则从当前用户名获取。 系统环境变量:$PGDATABASE -- -h *hostname*, -pghost=*hostname* +- -h *hostname*, --pghost=*hostname* 指定运行服务器的系统的主机名。如果该值以斜杠开头,则被用作到Unix域套接字的路径。 @@ -480,7 +483,7 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 默认值:local socket -- -p *port*, -pgport=_p_*ort* +- -p *port*, --pgport=_p_*ort* 指定服务器正在侦听连接的TCP端口或本地Unix域套接字文件扩展名。 @@ -488,25 +491,25 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 默认值:5432 -- -U *username*, -pguser=*username* +- -U *username*, --pguser=*username* 指定所连接主机的用户名。 系统环境变量:$PGUSER -- -w, -no-password +- -w, --no-password 不出现输入密码提示。如果主机要求密码认证并且密码没有通过其它形式给出,则连接尝试将会失败。 该选项在批量工作和不存在用户输入密码的脚本中很有帮助。 -- -W *password*, -password=*password* +- -W *password*, --password=*password* 指定用户连接的密码。如果主机的认证策略是trust,则不会对系统管理员进行密码验证,即无需输入-W选项;如果没有-W选项,并且不是系统管理员,则会提示用户输入密码。 -**压缩相关参数(compression_options)** +### 压缩相关参数(compression_options) > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 可以和backup命令一起使用这些参数。 -- -compress-algorithm=*compress-algorithm* +- --compress-algorithm=*compress-algorithm* 指定用于压缩数据文件的算法。 @@ -514,26 +517,26 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 默认值:none -- -compress-level=*compress-level* +- --compress-level=*compress-level* 指定压缩级别。取值范围: 0~9 - 0表示无压缩。 - 1表示压缩比最小,处理速度最快。 - 9表示压缩比最大,处理速度最慢。 - - 可与-compress-algorithm选项一起使用。 + - 可与--compress-algorithm选项一起使用。 默认值:1 -- -compress +- --compress - 以-compress-algorithm=zlib和-compress-level=1进行压缩。 + 以--compress-algorithm=zlib和--compress-level=1进行压缩。 -**远程模式相关参数(remote_options)** +### 远程模式相关参数(remote_options) > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 通过SSH远程运行gs_probackup操作的相关参数。可以和add-instance、set-config、backup、restore命令一起使用这些参数。 -- -remote-proto=*protocol* +- --remote-proto=*protocol* 指定用于远程操作的协议。目前只支持SSH协议。取值包括: @@ -543,41 +546,41 @@ gs_probackup是一个用于管理MogDB数据库备份和恢复的工具。它对 如果指定了-remote-host参数,可以省略此参数。 -- -remote-host=*destination* +- --remote-host=*destination* 指定要连接的远程主机的IP地址或主机名。 -- -remote-port=*port* +- --remote-port=*port* 指定要连接的远程主机的端口号。 默认值:22 -- -remote-user=*username* +- --remote-user=*username* 指定SSH连接的远程主机用户。如果省略此参数,则使用当前发起SSH连接的用户。 默认值:当前用户 -- -remote-path=*path* +- --remote-path=*path* 指定gs_probackup在远程系统的安装目录。 默认值:当前路径 -- -remote-lib=*libpath* +- --remote-libpath=*libpath* 指定gs_probackup在远程系统安装的lib库目录。 -- -ssh-options=*ssh_options* +- --ssh-options=*ssh_options* 指定SSH命令行参数的字符串。 - 例如:-ssh-options='-c cipher_spec -F configfile' + 例如:--ssh-options='-c cipher_spec -F configfile' > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** > - > - 如果因为网络临时故障等原因导致server端无应答,gs_probackup将在等待archive-timeout(默认300秒)后退出。 + > - 如果因为网络临时故障等原因导致server端无应答,gs_probackup将在等待archive-timeout(默认300秒)后退出。 > > - 如果备机lsn与主机有差别时,数据库会不停地刷以下log信息,此时应重新build备机。 > diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/16-gstrace.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/16-gstrace.md index a7315e21..3eda0b9d 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/16-gstrace.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/16-gstrace.md @@ -45,7 +45,7 @@ gstrace [start|stop|config|dump|detailcodepath|analyze] [-p ][-s 格式:[comp…][ALL].[func…][ALL]
描述:
- comp 是模块列表,使用‘,’分隔,例如:executer,mogdb。也可以使用序号,例如:executer,2。
- func 是function列表,使用‘,’ 分隔。 例如:sql_execute_ddl, sql_execute_dcl。也可以使用序号指代模块中第几个function,例如:2。
- 设置成ALL表示所有模块或所有function被trace。
示例:
- executer,mogdb.ALL :所有定义定义在executer和mogdb模块下的function被trace。
- executer,mogdb.sql_execute_ddl :定义在executer 下的Function sql_execute_ddl被trace. mogdb模块被忽略,因为下面没有该function 。
- executer,mogdb.1 :定义在模块executer和mogdb下的第一个function被trace。
ALL.1,2 :定义在所有模块下的第一,二个function被trace。 | -| -s BUFFER_SIZE | 指定用于trace功能的共享内存大小,默认为1G。如果指定的BUFFER_SIZE小于最小值2048,系统将自动调整为最小值。如果指定的BUFFER_SIZE不是2^N(二的N次方),则向下对齐2^N;例如:指定BUFFER_SIZE=3072,由于2^11<3072<2^12,系统将调整为2048。 | +| -s BUFFER_SIZE | 指定用于trace功能的共享内存大小,默认为1G。如果指定的BUFFER_SIZE小于最小值2048,系统将自动调整为最小值。如果指定的BUFFER_SIZE不是2^N^(二的N次方),则向下对齐2^N^;例如:指定BUFFER_SIZE=3072,由于2^11^<3072<2^12^,系统将调整为2048。 | ## 示例 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/2-gs_backup.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/2-gs_backup.md index 3d31e796..4afd5c96 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/2-gs_backup.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/2-gs_backup.md @@ -55,19 +55,19 @@ gs_backup参数可以分为如下几类: 取值范围: 主机名称。如果不指定主机名称,则备份当前集群。 - - -backup-dir=BACKUPDIR + - --backup-dir=BACKUPDIR 备份文件保存路径。 - - -parameter + - --parameter - 备份参数文件,不指定-parameter、-binary、-all参数时默认只备份参数文件。 + 备份参数文件,不指定--parameter、--binary、--all参数时默认只备份参数文件。 - - -binary + - --binary 备份app目录下的二进制文件。 - - -all + - --all 备份app目录下的二进制文件、pg_hba.conf和postgsql.conf文件。 @@ -85,19 +85,19 @@ gs_backup参数可以分为如下几类: 取值范围: 主机名称。如果不指定主机,则恢复对应的备份节点。 - - -backup-dir=BACKUPDIR + - --backup-dir=BACKUPDIR 恢复文件提取路径。 - - -parameter + - --parameter - 恢复参数文件,不指定-parameter、-binary、-all参数时默认只恢复参数文件。 + 恢复参数文件,不指定--parameter、--binary、--all参数时默认只恢复参数文件。 - - -binary + - --binary 恢复二进制文件。 - - -all + - --all 恢复二进制和参数文件。 @@ -107,17 +107,17 @@ gs_backup参数可以分为如下几类: 默认值:$GAUSSLOG/om/gs_backup-YYYY-MM-DD_hhmmss.log - - -force + - --force - 节点的静态文件丢失之后强行restore,仅限-all或者-binary参数使用时才生效。 + 节点的静态文件丢失之后强行restore,仅限--all或者--binary参数使用时才生效。 - 其他参数: - - -?, -help + - -?, --help 显示帮助信息。 - - -V, -version + - -V, --version 显示版本号信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/23-pg_config.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/23-pg_config.md index f46885bf..593775cd 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/23-pg_config.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/23-pg_config.md @@ -21,98 +21,98 @@ pg_config [option...] pg_config工具支持下面一个或多个选项,如果给出多于一个选项,那么信息以该顺序打印,每行一条。 如果没有给出选项,则打印所有可获得的信息,连着标签一起打印。 -- -bindir +- --bindir 打印用户可执行文件的路径。 比如,可以用这个找psql程序。 通常这也是pg_config程序存在的路径。 -- -docdir +- --docdir 打印文档文件的位置。 -- -htmldir +- --htmldir 输出HTML文档文件的位置。 -- -includedir +- --includedir 打印客户端接口C头文件的路径。 -- -pkgincludedir +- --pkgincludedir 打印其它C头文件的位置。 -- -includedir-server +- --includedir-server 打印那些做服务器编程时使用的C头文件的位置。 -- -libdir +- --libdir 打印目标代码库的路径。 -- -pkglibdir +- --pkglibdir 打印动态加载的模块的位置,或者服务器在哪里寻找他们。 其它体系相关的数据文件可能也放在这个目录里。 -- -localedir +- --localedir 打印区域支持文件的位置。如果在编译数据库的时候没有配置区域支持, 则其值为空字符串。 -- -mandir +- --mandir 打印手册页的位置。 -- -sharedir +- --sharedir 打印体系无关的支持文件的位置。 -- -sysconfdir +- --sysconfdir 打印系统范围的配置文件位置。 -- -pgxs +- --pgxs 打印扩展makefiles文件的位置。 -- -configure +- --configure 打印配置和编译数据库时给configure脚本传递的选项, 用于复制相同配置, 或者找出二进制包是用哪些选项编译的。 不过请注意二进制包通常包含供应商提供的补丁。 -- -cc +- --cc 打印用于编译数据库的CC变量的数值。 这个选项显示使用的C编译器。 -- -cppflags +- --cppflags 打印用于编译数据库的CPPFLAGS变量的数值。 这个选项显示在预处理的时候所需要的C编译器开关(通常是-I开关)。 -- -cflags +- --cflags 打印编译数据库时使用的CFLAGS变量的数值。 这个选项显示C编译器开关。 -- -cflags_sl +- --cflags_sl 打印编译数据库时使用的CFLAGS_SL变量的数值。 这个选项显示了编译共享库的额外的C编译器开关。 -- -ldflags +- --ldflags 打印编译数据库时使用的LDFLAGS变量的数值。 它显示了链接器的开关。 -- -ldflags_ex +- --ldflags_ex 输出用于创建数据库的LDFLAGS_EX变量的值。 这显示用于构建可执行文件的链接器开关。 -- -ldflags_sl +- --ldflags_sl 打印编译数据库时使用的LDFLAGS_SL变量的数值。 它显示了用于编译共享库的链接器的开关。 -- -libs +- --libs 打印编译数据库时使用的LIBS变量的数值。 其内容通常包含连接到数据库的外部库的-l开关。 -- -version +- --version 打印数据库的版本。 -- -?, -help +- -?, --help 显示关于pg_config命令行参数的帮助文件,并且退出。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/24-pg_controldata.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/24-pg_controldata.md index 321d8d1c..8313e06d 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/24-pg_controldata.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/24-pg_controldata.md @@ -41,10 +41,10 @@ pg_controldata工具用来显示数据库目录下control文件的信息。 查看control文件信息时所用的参数,DATADIR为实例对应的数据库目录。 -- -V, -version +- -V, --version 显示版本信息。 -- -?,-help +- -?,--help 打印帮助信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/24.1-pg_recvlogical.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/24.1-pg_recvlogical.md index 3a5bc3d8..f5b40655 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/24.1-pg_recvlogical.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/24.1-pg_recvlogical.md @@ -21,105 +21,109 @@ pg_recvlogical [OPTION]... ## 参数说明 -- 逻辑复制槽行为参数:必选参数。 +### 逻辑复制槽行为参数(必选参数) - - -create +- --create - 创建一个新的逻辑复制槽。 + 创建一个新的逻辑复制槽。内部调用了pg_create_logical_replication_slot函数,调用该函数的用户需要具有SYSADMIN权限或具有REPLICATION权限或继承了内置角色gs_role_replication的权限,且此函数目前只支持在主机调用。参考[逻辑复制函数](8-logical-replication-functions)中pg_create_logical_replication_slot函数的说明。 - - -start +- --start - 启动该逻辑复制槽的流复制。 + 启动该逻辑复制槽的流复制。 - - -drop +- --drop - 删除一个逻辑复制槽。 + 删除一个逻辑复制槽。 -- 连接参数: +### 连接参数 - - -d, -dbname=DBNAME +- -d, --dbname=DBNAME - 连接的目标数据库名。 + 连接的目标数据库名。 - - -h, -host=HOSTNAME +- -h, -host=HOSTNAME - 连接的目标主机名或socket。 + 连接的目标主机名或socket。 - - -p, -port=PORT +- -p, --port=PORT - 连接的目标DN的HA端口号。 + 连接的目标数据库节点的HA端口号。 - - -U, -username=NAME +- -U, --username=NAME - 连接目标库所使用的用户名。 + 连接目标库所使用的用户名。 - - -w, -no-password +- -w, --no-password - 不使用密码进行连接。 + 不使用密码进行连接。 - - -W, -password +- -W, --password - 使用指定密码进行连接。 + 使用指定密码进行连接。 -- 复制参数: +### 复制参数 - - -F -fsync-interval=INTERVAL +- -F --fsync-interval=INTERVAL - 同步到目标输出文件的间隔时间。 + 同步到目标输出文件的间隔时间。 - 单位为秒,默认值10。 + 单位为秒,默认值10。 - - -o, -option=NAME[=VALUE] +- -o, --option=NAME[=VALUE] - 指定向逻辑复制槽的输出插件添加参数。 + 指定向逻辑复制槽的输出插件添加参数。 - 参数的取值为:include-xids、skip-empty-xacts、include-timestamp。 + 参数的取值为:include-xids、skip-empty-xacts、include-timestamp、only-local、force-binary、white-table-list、standby-connection、parallel-decode-num、decode-style、sending-batch。 - 详细请参见《开发者指南》中“SQL参考 > 函数和操作符 > 系统管理函数 > 逻辑复制函数 > options”章节。 + 详细请参见《参考指南》中“系统函数 > 系统管理函数 > [逻辑复制函数](8-logical-replication-functions) > options”章节以及《开发者指南》中 “应用程序开发教程 > 基于JDBC开发 > [示例:逻辑复制代码示例](14-example-logic-replication-code)”章节。 - - -P, -plugin=PLUGIN +- -P, --plugin=PLUGIN - 指定使用的逻辑复制槽输出插件。 + 指定使用的逻辑复制槽输出插件。 - 默认值为mppdb_decoding。 + 默认值为mppdb_decoding。 - - -s, -status-interval=INTERVAL +- -s, --status-interval=INTERVAL - 发送的心跳包间隔时间。 + 发送的心跳包间隔时间。 - 单位为秒,默认值10。 + 单位为秒,默认值10。 - - -S, -slot=SLOT +- -S, --slot=SLOT - 指定逻辑复制槽的名称。 + 指定逻辑复制槽的名称。 - - -I, -startpos=PTR +- -I, --startpos=PTR - 当使用已有逻辑复制槽时,指定初始复制的LSN位置。 + 当使用已有逻辑复制槽时,指定初始复制的LSN位置。 -- 其它参数: +### 其它参数 - - -f, -file=FILE +- -f, --file=FILE - 设置输出到指定文件。 + 设置输出到指定文件。 - 直接使用“-”表示输出到stdout。 + 直接使用“-”表示输出到stdout。 - - -n, -no-loop +- -n, --no-loop - 指定此参数,连接失败后不重试。 + 指定此参数,连接失败后不重试。 - - -v, -verbose +- -v, --verbose - 输出详细信息。 + 输出详细信息。 - - -V, -version +- -V, --version - 输出版本信息,随后立即退出。 + 输出版本信息,随后立即退出。 - - -?, -help +- -?, --help - 输出帮助信息,随后立即退出。 + 输出帮助信息,随后立即退出。 + +- -r, --raw + + 在并行解码场景下,设置此参数表示不会将二进制格式或是批量发送的结果转化为文本格式,该参数仅供测试人员测量并行解码性能时使用。设置该参数后,二进制格式或批量发送的解码结果将为不可读的格式。 ## 示例 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/25-pg_resetxlog.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/25-pg_resetxlog.md index 5d929190..44d8748c 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/25-pg_resetxlog.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/25-pg_resetxlog.md @@ -59,7 +59,7 @@ OPTION取值如下所示: 设置下一个multitransaction的偏移量。 -- -V, -version +- -V, --version 显示版本信息。 @@ -67,6 +67,6 @@ OPTION取值如下所示: 设置下一个事务ID。 -- -?, -help +- -?, --help 打印帮助信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/26-pg_archivecleanup.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/26-pg_archivecleanup.md index b69d7a03..44551619 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/26-pg_archivecleanup.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/26-pg_archivecleanup.md @@ -27,7 +27,7 @@ pg_archivecleanup [OPTION]... ARCHIVELOCATION OLDESTKEPTWALFILE 打印将要删除的文件名。 -- -V,-version +- -V,--version 打印pg_archivecleanup的版本并退出。 @@ -35,7 +35,7 @@ pg_archivecleanup [OPTION]... ARCHIVELOCATION OLDESTKEPTWALFILE 当该程序用作单独的工具时,提供一个扩展选项,只选择对应扩展名格式的文件。 -- -?,-help +- -?,--help 显示关于pg_archivecleanup命令行参数的帮助信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/27-pssh.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/27-pssh.md index 1d8f8fd7..b325bc94 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/27-pssh.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/27-pssh.md @@ -19,7 +19,7 @@ python3 pssh [OPTIONS] ## 参数说明 -- -help +- --help 显示帮助信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/28-pscp.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/28-pscp.md index 882f3b1b..af928a3b 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/28-pscp.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/28-pscp.md @@ -19,7 +19,7 @@ python3 pscp [OPTIONS] ## 参数说明 -- -help +- --help 显示帮助信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/3-gs_basebackup.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/3-gs_basebackup.md index a3c30c7a..5dd566d6 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/3-gs_basebackup.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/3-gs_basebackup.md @@ -54,45 +54,45 @@ gs_basebackup参数可以分为如下几类: - 常用参数: - - -c,-checkpoint=fast|spread + - -c,--checkpoint=fast|spread 设置检查点模式为fast或者spread(默认)。 - - -l,-label=LABEL + - -l,--label=LABEL 为备份设置标签。 - - -P,-progress + - -P,--progress 启用进展报告。 - - -v, -verbose + - -v, --verbose 启用冗长模式。 - - -V, -version + - -V, --version 打印版本后退出。 - - -?,-help + - -?,--help 显示gs_basebackup命令行参数。 - - -T,-tablespace-mapping=olddir=newdir + - -T,--tablespace-mapping=olddir=newdir 在备份期间将目录olddir中的表空间重定位到newdir中。为使之有效,olddir必须正好匹配表空间所在的路径(但如果备份中没有包含olddir中的表空间也不是错误)。olddir和newdir必须是绝对路径。如果一个路径凑巧包含了一个=符号,可用反斜线对它转义。对于多个表空间可以多次使用这个选项。 - - -F,-format=plain|tar + - -F,--format=plain|tar - 设置输出格式为plain(默认)或者tar。没有设置该参数的情况下,默认-format=plain。plain格式把输出写成平面文件,使用和当前数据目录和表空间相同的布局。当集簇没有额外表空间时,整个数据库将被放在目标目录中。如果集簇包含额外的表空间,主数据目录将被放置在目标目录中,但是所有其他表空间将被放在它们位于服务器上的相同的绝对路径中。tar模式将输出写成目标目录中的 tar 文件。主数据目录将被写入到一个名为base.tar的文件中,并且其他表空间将被以其 OID 命名。生成的tar包,需要用gs_tar命令解压。 + 设置输出格式为plain(默认)或者tar。没有设置该参数的情况下,默认--format=plain。plain格式把输出写成平面文件,使用和当前数据目录和表空间相同的布局。当集簇没有额外表空间时,整个数据库将被放在目标目录中。如果集簇包含额外的表空间,主数据目录将被放置在目标目录中,但是所有其他表空间将被放在它们位于服务器上的相同的绝对路径中。tar模式将输出写成目标目录中的 tar 文件。主数据目录将被写入到一个名为base.tar的文件中,并且其他表空间将被以其 OID 命名。生成的tar包,需要用gs_tar命令解压。 - - -X, -xlog-method=fetch|stream + - -X, --xlog-method=fetch|stream - 设置xlog传输方式。没有设置该参数的情况下,默认-xlog-method=stream。在备份中包括所需的预写式日志文件(WAL文件)。这包括所有在备份期间产生的预写式日志。fetch方式在备份末尾收集预写式日志文件。因此,有必要把wal_keep_segments参数设置得足够高,这样在备份末尾之前日志不会被移除。如果在要传输日志时它已经被轮转,备份将失败并且是不可用的。stream方式在备份被创建时流传送预写式日志。这将开启一个到服务器的第二连接并且在运行备份时并行开始流传输预写式日志。因此,它将使用最多两个由max_wal_senders参数配置的连接。只要客户端能保持接收预写式日志,使用这种模式不需要在主控机上保存额外的预写式日志。 + 设置xlog传输方式。没有设置该参数的情况下,默认--xlog-method=stream。在备份中包括所需的预写式日志文件(WAL文件)。这包括所有在备份期间产生的预写式日志。fetch方式在备份末尾收集预写式日志文件。因此,有必要把wal_keep_segments参数设置得足够高,这样在备份末尾之前日志不会被移除。如果在要传输日志时它已经被轮转,备份将失败并且是不可用的。stream方式在备份被创建时流传送预写式日志。这将开启一个到服务器的第二连接并且在运行备份时并行开始流传输预写式日志。因此,它将使用最多两个由max_wal_senders参数配置的连接。只要客户端能保持接收预写式日志,使用这种模式不需要在主控机上保存额外的预写式日志。 - - -x,-xlog 使用这个选项等效于和方法fetch一起使用-X。 + - -x,--xlog 使用这个选项等效于和方法fetch一起使用-X。 - - -Z -compress=level + - -Z --compress=level 启用对 tar 文件输出的 gzip 压缩,并且制定压缩级别(0 到 9,0 是不压缩,9 是最佳压缩)。只有使用 tar 格式时压缩才可用,并且会在所有tar文件名后面自动加上后缀.gz。 @@ -100,35 +100,35 @@ gs_basebackup参数可以分为如下几类: 启用对 tar 文件输出的 gzip 压缩,使用默认的压缩级别。只有使用 tar 格式时压缩才可用,并且会在所有tar文件名后面自动加上后缀.gz。 - - -t,-rw-timeout + - -t,--rw-timeout 设置备份期间checkpoint的时间限制,默认限制时间为120s。当数据库全量checkpoint耗时较长时,可以适当增大rw-timeout限制时间。 - 连接参数 - - -h, -host=HOSTNAME + - -h, --host=HOSTNAME 指定正在运行服务器的主机名或者Unix域套接字的路径。 - - -p,-port=PORT + - -p,--port=PORT 指定数据库服务器的端口号。 可以通过port参数修改默认端口号。 - - -U,-username=USERNAME + - -U,--username=USERNAME 指定连接数据库的用户。 - - -s, -status-interval=INTERVAL + - -s, --status-interval=INTERVAL 发送到服务器的状态包的时间(以秒为单位)。 - - -w,-no-password + - -w,--no-password 不出现输入密码提示。 - - -W, -password + - -W, --password 当使用-U参数连接本地数据库或者连接远端数据库时,可通过指定该选项出现输入密码提示。 @@ -151,7 +151,7 @@ INFO: The starting position of the xlog copy of the full build is: 0/1B800000. 若要在原库的地方恢复数据库,参考步骤如下: -1. 停止数据库服务器,具体操作请参见《管理员指南》。 +1. 停止数据库服务器,具体操作请参见《管理指南》。 2. 将原数据库和所有表空间复制到另外一个位置, 以备后面需要。 3. 清理原库中的所有或部分文件。 4. 使用数据库系统用户权限从备份中还原需要的数据库文件。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/4-gs_ctl.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/4-gs_ctl.md index 97c7a1ed..7d6b868b 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/4-gs_ctl.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/4-gs_ctl.md @@ -19,20 +19,6 @@ gs_ctl工具由操作系统用户omm执行。 ## 参数说明 -gs_ctl参数可分为如下几类: - -- option参数,详细请参见[表1](#option)。 - -- 公共参数,详细请参见[表2](#gonggong)。 - -- start和restart模式的参数,详细请参见[表3](#startandrestart)。 - -- stop和restart模式的参数,详细请参见[表4](#stopandrestart)。 - -- switchover模式的参数,详细请参见[表5](#switchover)。 - -- build参数,详细请参见[表6](#build)。 - **表 1** option参数 | 参数 | 参数说明 | @@ -55,55 +41,36 @@ gs_ctl参数可分为如下几类: **表 2** 公共参数 -| 参数 | 参数说明 | 取值范围 | -| :------------------ | :----------------------------------------------------------- | :----------------------------------------------------------- | -| -D, -pgdata=DATADIR | 指定数据目录的位置。 | DATADIR的取值必须为有效的数据目录。 | -| -s, -silent | 对于promote、reload、restart、stop命令仅打印部分提示信息,对其他命令不生效。打印信息如:server promoting、server shuting down。不打印信息如:waiting for server to shut down、server stopped等提示信息。 | - | -| -t, -timeout=SECS | 等待数据库启动、关闭或者主备切换完成的最大秒数。如果等待超时,命令会结束退出,并通知不再等待。此后,可以通过gs_om -t status -detail或其他查看数据库状态的命令,来确认数据库是否启动、关闭或主备切换成功。 | 取值范围: 整型(秒)。
默认值:等待数据库启动、关闭或者主备切换完成:60秒。 | -| -V , -version | 打印gs_ctl的版本信息然后退出。 | - | -| -w | 需要等待操作完成。 | 默认值:数据库启动、停止或者重新启动时,需要等待操作完成。 | -| -W | 不用等待操作完成。 | - | -| -M | -M后面需要跟SERVERMODE参数,表示在启动时指定数据库的启动模式。 | SERVERMODE的取值范围:
- primary:本端以主机模式启动。
- standby:本端以备机模式启动。
- cascade_standby:本端以级联备机模式启动。
- pending:本端处于等待状态,等待提升为主机或者备机。 | -| -T | -T 后面跟term,升主命令时会用此term作为主机term,build时会连接大于等于此term的主机进行build。 | term的取值范围,无符号整型。 | -| -d | 打印更多调试信息。 | 无参数 | -| -q | 生成完成个后不自动启动,需要调用者启动。 | 无参数 | -| -P PASSWORD | 与-U参数配合使用,指定连接本地数据库的用户密码。
说明:
当省略-U参数,且认证方法为trust时,-P参数无效。 | - | -| -U USERNAME | 指定连接数据库的用户。此参数只能与notify、query、failover、switchover和querybuild参数配合使用。对于域用户,使用DOMAIN\username格式。 | 取值范围: MogDB中存在的用户。
默认值:省略此参数则使用与当前操作系统用户同名的用户。 | -| -?, -help | 显示关于gs_ctl命令行参数的帮助信息。 | - | - -**表 2** 公共参数 - -| 参数 | 参数说明 | 取值范围 | -| :------------------ | :----------------------------------------------------------- | :----------------------------------------------------------- | -| -D, -pgdata=DATADIR | 指定数据目录的位置。 | DATADIR的取值必须为有效的数据目录。 | -| -s, -silent | 对于promote,reload,restart,stop命令仅打印部分提示信息,对其他命令不生效。打印信息如:server promoting,server shuting down。不打印如”waiting for server to shut down, server stopped”等提示信息。 | - | -| -t, -timeout=SECS | 等待数据库启动、关闭或者主备切换完成的最大秒数。 | 取值范围: 整型(秒)。
默认值:等待数据库启动、关闭或者主备切换完成:60秒。 | -| -V , -version | 打印gs_ctl的版本信息然后退出。 | - | -| -w | 需要等待操作完成。 | 默认值:数据库启动、停止或者重新启动时,需要等待操作完成。 | -| -W | 不用等待操作完成。 | - | -| -M | -M后面需要跟SERVERMODE参数,表示在启动时指定数据库的启动模式。说明:当前主机处于一主零备,或单机环境时,不支持-M参数。 | SERVERMODE的取值范围:
- primary:本端以主机模式启动。
- standby:本端以备机模式启动。
- cascade_standby:本端以级联备机模式启动。
- pending:本端处于等待状态,等待提升为主机或者备机。 | -| -T | -T 后面跟term,升主命令时会用此term作为主机term,build时会连接大于等于此term的主机进行build | term的取值范围,无符号整型。 | -| -d | 打印更多调试信息 | 无参数 | -| -P PASSWORD | 与-U参数配合使用,指定连接本地数据库的用户密码。说明:当省略-U参数,且认证方法为trust时,-P参数无效。 | - | -| -U USERNAME | 指定连接数据库的用户。此参数只能与notify、query、failover、switchover和querybuild参数配合使用。对于域用户,使用DOMAIN\username格式。 | 取值范围: MogDB中存在的用户。
默认值:省略此参数则使用与当前操作系统用户同名的用户。 | -| -?, -help | 显示关于gs_ctl命令行参数的帮助信息。 | - | +| 参数 | 参数说明 | 取值范围 | +| :------------------- | :----------------------------------------------------------- | :----------------------------------------------------------- | +| -D, --pgdata=DATADIR | 指定数据目录的位置。 | DATADIR的取值必须为有效的数据目录。 | +| -s, --silent | 对于promote、reload、restart、stop命令仅打印部分提示信息,对其他命令不生效。打印信息如:server promoting、server shuting down。不打印信息如:waiting for server to shut down、server stopped等提示信息。 | - | +| -t, --timeout=SECS | 等待数据库启动、关闭或者主备切换完成的最大秒数。如果等待超时,命令会结束退出,并通知不再等待。此后,可以通过gs_om -t status --detail或其他查看数据库状态的命令,来确认数据库是否启动、关闭或主备切换成功。 | 取值范围:整型(秒)。
默认值:等待数据库启动、关闭或者主备切换完成:60秒。 | +| -V , --version | 打印gs_ctl的版本信息然后退出。 | - | +| -w | 需要等待操作完成。 | 默认值:数据库启动、停止或者重新启动时,需要等待操作完成。 | +| -W | 不用等待操作完成。 | - | +| -M | -M后面需要跟SERVERMODE参数,表示在启动时指定数据库的启动模式。 | SERVERMODE的取值范围:
- primary:本端以主机模式启动。
- standby:本端以备机模式启动。
- cascade_standby:本端以级联备机模式启动。
- pending:本端处于等待状态,等待提升为主机或者备机。 | +| -T | -T 后面跟term,升主命令时会用此term作为主机term,build时会连接大于等于此term的主机进行build。 | term的取值范围,无符号整型。 | +| -d | 打印更多调试信息。 | 无参数 | +| -q | 生成完成个后不自动启动,需要调用者启动。 | 无参数 | +| -P PASSWORD | 与-U参数配合使用,指定连接本地数据库的用户密码。
说明:
当省略-U参数,且认证方法为trust时,-P参数无效。 | - | +| -U USERNAME | 指定连接数据库的用户。此参数只能与notify、query、failover、switchover和querybuild参数配合使用。对于域用户,使用DOMAIN\username格式。 | 取值范围:MogDB中存在的用户。
默认值:省略此参数则使用与当前操作系统用户同名的用户。 | +| -?, -h, --help | 显示关于gs_ctl命令行参数的帮助信息。 | - | **表 3** start或restart共有参数 | 参数 | 参数说明 | 取值范围 | | :------------------ | :----------------------------------------------------------- | :----------------------------------------------------------- | -| 参数 | 参数说明 | 取值范围 | -| :------------------ | :----------------------------------------------------------- | :----------------------------------------------------------- | -| -c, -core-file | 允许gaussdb进程产生内核文件。 | - | -| -p PATH-TO-POSTGRES | 声明gaussdb可执行文件的位置。 | 缺省位于gs_ctl自身所在目录,一般不需要此选项。 | +| -c, --core-file | 允许gaussdb进程产生内核文件。 | - | +| -l, --log=FILENAME | 把服务器日志输出附加在FILENAME文件上。 | FILENAME的取值为启动数据库服务的用户有权限的文件。
例如,data目录下的某文件。 | | -o OPTIONS | 声明要直接传递给由MogDB执行的gaussdb的命令行选项。参数通常都用单或者双引号包围以保证它们作为一个整体传递。 | gaussdb支持的参数。 | -| -l, -log=FILENAME | 把服务器日志输出附加在FILENAME文件上。 | FILENAME的取值为启动数据库服务的用户有权限的文件。
例如,data目录下的某文件。 | +| -p PATH-TO-POSTGRES | 声明gaussdb可执行文件的位置。 | 缺省位于gs_ctl自身所在目录,一般不需要此选项。 | **表 4** stop和restart共有参数 -| 参数 | 参数说明 | 取值范围 | -| :------------- | :------------- | :----------------------------------------------------------- | -| -m, -mode=MODE | 声明关闭模式。 | mode的取值:
- fast:不等待客户端中断连接,所有活跃事务都被回滚并且客户端都被强制断开,然后服务器将被关闭。
- immediate:强行关闭,在下次重新启动的时候将导致故障恢复。
默认值:fast | +| 参数 | 参数说明 | 取值范围 | +| :-------------- | :------------- | :----------------------------------------------------------- | +| -m, --mode=MODE | 声明关闭模式。 | mode的取值:
- fast:不等待客户端中断连接,所有活跃事务都被回滚并且客户端都被强制断开,然后服务器将被关闭。
- immediate:强行关闭,在下次重新启动的时候将导致故障恢复。
默认值:fast | **表 5** switchover参数 @@ -113,14 +80,40 @@ gs_ctl参数可分为如下几类: **表 6** build参数 -| 参数 | 参数说明 | 取值范围 | -| :------------------------ | :----------------------------------------------------------- | :----------------------------------------------------------- | -| -b MODE | 指定重建备机的模式。 | mode的取值:
- full:通过全量镜像的方式重新同步 主机的数据目录。
- incremental:通过解析Xlog日志获 取主备机差异的数据进行增量修复备机。
说明:增量重建适用于主备双主等因日志造成的不一致的场景。
警告
- 增量重建适用于主备双主等因日志 造成的不一致场景。
- 增量重建不适用于一主一备并且没有开启最大高可用的场景,此种场景下需要使用全量重建或者开启最大高可用后再进行增量重建。
- 备机数据文件损坏、数据目录丢失 等故障通过增量重建的方式无法修复,此时可通过全量重建的方式重 新修复备机。
- auto(不指定):先增量,增量失败后进行会自动进行一次全量重建。
默认值:auto
说明:重建级联备机需要加上-M cascade_standy参数。 | -| -r, -recvtimeout=INTERVAL | 指定重建过程中备机日志接收等待主机响应的超时时间。 | 取值范围: 整型(秒)。
默认值:120秒
提示:超时时间需根据业务繁忙程度设置,业务繁忙等待主机的响应时间需加长,建议超时时间=checkpoint的执行时间+1min。 | -| -q | 重建结束后,是否自动重启。
指定参数场合,不自动重启。
未指定场合,自动重启。重启默认最大等待时间是60秒。如果在此时间内数据库未能启动成功,就会报不再等待,命令退出。此后可以通过gs_om -t status --detail或其他查看数据库状态的命令,来确认数据库是否启动成功。 | 无参数 | +| 参数 | 参数说明 | 取值范围 | +| :------------------------- | :----------------------------------------------------------- | :----------------------------------------------------------- | +| -b MODE | 指定重建备机的模式。 | mode的取值:
- full:通过全量镜像的方式重新同步主机的数据目录。
- incremental:通过解析Xlog日志获 取主备机差异的数据进行增量修复备机。
说明:
增量重建适用于主备双主等因日志 造成的不一致场景。
- 增量重建不适用于一主一备并且没有开启最大高可用的场景,此种场景下需要使用全量重建或者开启最大高可用后再进行增量重建。
- 备机数据文件损坏、数据目录丢失等故障通过增量重建的方式无法修复,此时可通过全量重建的方式重 新修复备机。
- auto(不指定):先增量,根据失败后是否可以再增量选择继续增量或者全量,三次增量失败后进行全 量。
- standby_full:通过指定的备机ip和port全量重建故障备机。使用该参数时需要同时使用-C蚕食指定镜像的ip和port。
默认值:auto
说明:重建级联备机需要加上-M cascade_standy参数。 | +| -r, --recvtimeout=INTERVAL | 指定重建过程中备机日志接收等待主机响应的超时时间。 | 取值范围:整型(秒)。
默认值:120秒
提示:超时时间需根据业务繁忙程度设置,业务繁忙等待主机的响应时间需加长,建议超时时间=checkpoint的执行时间+1min。 | +| -q | 重建结束后,是否自动重启。
指定参数场合,不自动重启。
未指定场合,自动重启。重启默认最大等待时间是60秒。如果在此时间内数据库未能启动成功,就会报不再等待,命令退出。此后可以通过gs_om -t status --detail或其他查看数据库状态的命令,来确认数据库是否启动成功。 | 无参数 | **表 7** query参数 | 参数 | 参数说明 | 取值范围 | | :--- | :---------------------- | :------- | | -L | 查询lsn并展示最大长度。 | 无参数 | + +**表 8** member参数 + +| 参数 | 参数说明 | 取值范围 | +| :--------------------- | :------------------------------------------- | :----------------------------------------------------------- | +| --operation | MogDB数据库实例,DCF模式下,增删节点的操作。 | - add: 向数据库实例的DCF节点配置中增加一个节点。
- remove:从数据库实例DCF节点配置中删除一个节点。 | +| -u, --nodeid | 新增节点的DCF NODE ID。 | 无符号整型 | +| -i, --ip | 新增节点与数据库实例DCF模块通信的IP。 | 字符串。 | +| -e, --port | 新增节点与数据库实例DCF模块通信的port。 | 整型。 | +| [-D, --pgdata=]DATADIR | 指定数据目录的位置。 | DATADIR的取值:用户自定义。 | + +**表 9** changerole参数 + +| 参数 | 参数说明 | 取值范围 | +| :--------------------- | :----------------------------------------------------------- | :------------------------------------------------------- | +| -R, --role | MogDB数据库实例,DCF模式下节点角色(需要在角色为primary的节点上使用)。 | - passive: passive角色。
- follower:follower角色。 | +| -u, --nodeid | 新增节点的DCF NODE ID。 | 无符号整型。 | +| [-D, --pgdata=]DATADIR | 指定数据目录的位置。 | DATADIR的取值:用户自定义。 | + +**表 10** setrunmode参数 + +| 参数 | 参数说明 | 取值范围 | +| :--------------------- | :----------------------------------- | :-------------------------------------------- | +| -v, --votenum | 投票个数。 | 无符号整型。 | +| -x, --xmode | 运行模式(在少数派的DN节点上使用)。 | - minority:少数派强起。
- normal:加回。 | +| [-D, --pgdata=]DATADIR | 指定数据目录的位置。 | DATADIR的取值:用户自定义。 | diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/5-gs_initdb.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/5-gs_initdb.md index bff57171..30934604 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/5-gs_initdb.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/5-gs_initdb.md @@ -91,29 +91,30 @@ gs_initdb支持的常用参数和不常用参数请分别参见[表 常用参数 | -A, --auth=METHOD | 指定本地用户连接数据库时的认证方法,即“pg_hba.conf”配置文件中host和local所在行的认证方法。
除非用户对本地用户都是信任的,否则不要使用默认值trust。
须知:
若取值为md5,则需手动修改参数文件 postgresql.conf.sample 中的密码存储类型 password_encryption_type 参数的值,修改为0,且放开注释使之生效。gs_initdb工具需同时配合 -W 的使用。 | METHOD的取值:
- trust
- reject
- md5(不安全的算法,为了兼容老版本而存在)
- sha256
- sm3
默认值:trust | | --auth-host=METHOD | 指定本地用户通过TCP/IP连接数据库时的认证方法,即:“pg_hba.conf”配置文件中host所在行的认证方法。
指定此参数则会覆盖-A参数的值。 | METHOD的取值:
- trust
- reject
- md5(不安全的算法,为了兼容老版本而存在)
- sha256
- sm3
默认值:trust | | --auth-local=METHOD | 指定本地用户通过Unix域套接字连接数据库时的认证方法,即“pg_hba.conf”配置文件中local所在行的认证方法。指定此参数则会覆盖-A参数的值。 | METHOD的取值:
- trust
- reject
- md5(不安全的算法,为了兼容老版本而存在)
- sha256
- sm3
默认值:trust | -| [-D, --pgdata=]DATADIR | 指定数据目录的位置。 | DATADIR的取值:用户自定义。 | -| --nodename=NODENAME | 初始化的节点名称。 | 节点的命名需要遵守如下规范:
- 节点名称必须为小写字母(a-z)、下划线(_)、特殊符号#、数字(0-9)或美元符号($)。
- 节点名称必须以小写字母(a-z)、或下划线(_)开头。
- 节点名称不能为空,且最大的长度为64个字符。 | -| -E, --encoding=ENCODING | 为新数据库设置编码格式。 | - 如果使用此参数,需要加上--locale选项指定支持此编码格式的区域。如果不加--locale选项,则采用系统默认的区域,如果系统默认区域的编码格式和用此参数指定的编码格式不匹配则会导致数据库初始化失败。
- 如果不指定此参数,则使用系统默认区域的编码格式。系统默认区域和编码格式可以使用locale命令查看,如下:
`omm@linux:~> locale|grep LC_CTYPE LC_CTYPE="en_US.UTF-8"`
其中`UTF-8`表示系统默认区域的编码格式。 | +| -c, --enable-dcf | 设置安装的节点为DCF模式 | - | +| [-D, --pgdata=]DATADIR | 指定数据目录的位置。 | DATADIR的取值:用户自定义。不能包括“\|”, “;”,“&”,“$”,“<”,“>”,“`”,“\\”,“!”这几个字符。 | +| --nodename=NODENAME | 初始化的节点名称。 | 节点的命名需要遵守如下规范:
- 节点名称必须为小写字母(a-z)、下划线(\_)、特殊符号#、数字(0-9)。
- 节点名称必须以小写字母(a-z)、或下划线(\_)开头。
- 节点名称不能为空,且最大的长度为64个字符。 | +| -E, --encoding=ENCODING | 为新数据库设置编码格式。 | - 如果使用此参数,需要加上--locale选项指定支持此编码格式的区域。如果不加--locale选项,则采用系统默认的区域,如果系统默认区域的编码格式和用此参数指定的编码格式不匹配则会导致数据库初始化失败。
- 如果不指定此参数,则使用系统默认区域的编码格式。系统默认区域和编码格式可以使用locale命令查看,如下:
`omm@linux:~> locale|grep LC_CTYPE LC_CTYPE="en_US.UTF-8"`
其中`UTF-8`表示系统默认区域的编码格式。
- 不能包括“\|”, “;”,“&”,“$”,“<”,“>”,“`”,“\\”,“!”这几个字符。 | | --locale=LOCALE | 为新数据库设置缺省的区域。可以用locale -a查看可用的区域,如`zh_CN.gbk`等。如果不希望指定特定的区域,则可以用C。
须知:
如果用户设置了数据库的编码格式,则用户选择区域的编码格式必须与用户设置的编码格式一致,否则数据库初始化会失败。 | 例如用户要将数据库编码格式初始化为GBK,可以采用如下步骤:
1. 用`locale -a |grep gbk`命令查看系统支持gbk编码的区域,如下:
`omm@linux:~> locale -a|grep gbk zh_CN.gbk zh_SG.gbk`
2. 初始化数据库时加入`--locale=zh_CN.gbk`选项。 | -| --dbcompatibility=DBCOMPATIBILITY | 指定兼容的数据库的类型。 | 取值范围: A、B、C、PG。分别表示兼容O、MY、TD和POSTGRES。 | -| --lc-collate=LOCALE--lc-ctype=LOCALE--lc-messages=LOCALE--lc-monetary=LOCALE--lc-numeric=LOCALE--lc-time=LOCALE | 为新数据库设置指定范畴的区域。 | 各参数的取值必须是操作系统支持的值。
说明:
如果用户在数据库安装的时候没有指定--lc-collate参数,则--lc-collate参数的默认值为C。 | +| --dbcompatibility=DBCOMPATIBILITY | 指定兼容的数据库的类型。 | 取值范围: A、B、PG。分别表示兼容O、MY和POSTGRES。 | +| --lc-collate=LOCALE
--lc-ctype=LOCALE
--lc-messages=LOCALE
--lc-monetary=LOCALE
--lc-numeric=LOCALE
--lc-time=LOCALE | 为新数据库设置指定范畴的区域。 | 各参数的取值必须是操作系统支持的值。不能包括“\|”, “;”,“&”,“$”,“<”,“>”,“`”,“\\”,“!”这几个字符。
说明:
如果用户在数据库安装的时候没有指定--lc-collate参数,则--lc-collate参数的默认值为C。 | | --no-locale | 和--locale=C等价。 | - | -| --pwfile=FILE | gs_initdb时从文件FILE中读取数据库中系统管理员的密码。该文件的第一行将被当作密码使用。 | FILE可以是“相对路径+文件”的形式,也可以是“绝对路径+文件”的形式。相对路径是相对当前路径的。 | +| --pwfile=FILE | gs_initdb时从文件FILE中读取数据库中系统管理员的密码。该文件的第一行将被当作密码使用。 | FILE可以是“相对路径+文件”的形式,也可以是“绝对路径+文件”的形式。相对路径是相对当前路径的。不能包括“\|”, “;”,“&”,“$”,“<”,“>”,“`”,“\\”,“!”这几个字符。 | | -T, --text-search-config=CFG | 设置缺省的文本搜索方式。此配置项的值不会做正确性校验,配置成功后,有日志记录提醒当前配置项的取值。 | text-search-config的取值:
- english全文搜索
- simple普通文本搜索
默认值:simple | -| -U, --username=NAME | 选择数据库系统管理员的用户名。 | 取值范围: 正常的数据库用户。
默认值:运行gs_initdb的操作系统用户。 | +| -U, --username=NAME | 选择数据库系统管理员的用户名。 | 取值范围: 正常的数据库用户。不能包括“\|”, “;”,“&”,“$”,“<”,“>”,“`”,“\\”,“!”这几个字符。
默认值:运行gs_initdb的操作系统用户。 | | -W, --pwprompt | gs_initdb时强制交互式输入数据库管理员的密码。 | - | | -w, --pwpasswd=PASSWD | gs_initdb时通过命令行指定的管理员用户的密码,而不是交互式输入。 | 设置的密码要符合复杂度要求:
- 最少包含8个字符;
- 不能和用户名和当前密码(ALTER)相同,或和当前密码反序;
- 至少包含大写字母(A-Z),小写字母(a-z),数字,非字母数字字符 四类字符中的三类字符。 | -| -C, --enpwdfiledir=DIR | gs_initdb时指定的经AES128加密算法加密过的密码文件所在目录。gs_initdb会将该目录下密码文件进行解密,同时把解密后的密码做密码复杂度校验,校验通过的话会将此密码作为用户的密码。
说明:
- 加密密码文件需使用gs_guc工具生成:gs_guc encrypt -K Gauss@123 -D Dir。
- 如果用户指定多个-w和-C参数,gs_initdb会将用户输入的最后一个-w或-C参数作为用户的需求,即输入密码的明文或经过AES128加密后的密码。 | - | -| -X, --xlogdir=XLOGDIR | 声明事务日志存储的目录。所设置的目录,必须满足运行MogDB的用户有读写权限。 | 只支持绝对路径。 | +| -C, --enpwdfiledir=DIR | gs_initdb时指定的经AES128加密算法加密过的密码文件所在目录。gs_initdb会将该目录下密码文件进行解密,同时把解密后的密码做密码复杂度校验,校验通过的话会将此密码作为用户的密码。
说明:
- 加密密码文件需使用gs_guc工具生成:gs_guc encrypt -K Gauss@123 -D Dir。
- 如果用户指定多个-w和-C参数,gs_initdb会将用户输入的最后一个-w或-C参数作为用户的需求,即输入密码的明文或经过AES128加密后的密码。 | 不能包括“\|”, “;”,“&”,“$”,“<”,“>”,“`”,“\\”,“!”这几个字符。 | +| -X, --xlogdir=XLOGDIR | 声明事务日志存储的目录。所设置的目录,必须满足运行MogDB的用户有读写权限。 | 只支持绝对路径。不能包括“\|”, “;”,“&”,“$”,“<”,“>”,“`”,“\\”,“!”这几个字符。 | | -S, --security | 安全方式初始化数据库。 | 以-S方式初始化的数据库后,创建的数据库用户权限受到限制,默认不再具有public schema的使用权限。 | **表 2** 不常用参数说明 -| 参数 | 参数说明 | 取值范围 | -| :----------- | :----------------------------------------------------------- | :------------------------------- | -| -d, -debug | 从初始化后端打印调试输出信息。初始化后端是gs_initdb用于创建系统表的程序。 | - | -| -L DIRECTORY | gs_initdb初始化数据库所需要的输入文件的路径。通常是不必要的。如果需要明确声明的话,程序会提示输入。因该参数意为创建指定配置信息的数据库,建议将share/postgresql下的所有涉及启动相关的子目录及文件全部复制过来,避免其他因素的影响。 | 初始化数据库所需的输入文件路径。 | -| -n, -noclean | 不指定该参数时,当gs_initdb发现一些错误妨碍它完成创建数据库的工作时,它将在检测到不能结束工作之前将其创建的所有文件删除。这个选项禁止任何清理动作,因而对调试很有用。 | - | -| -s, -show | 显示内部设置。 | - | -| -V, -version | 打印gs_initdb版本信息,然后退出。 | - | -| -?, -help | 显示关于gs_initdb命令行参数的帮助信息,然后退出。 | - | +| 参数 | 参数说明 | 取值范围 | +| :------------ | :----------------------------------------------------------- | :------------------------------- | +| -d, --debug | 从初始化后端打印调试输出信息。初始化后端是gs_initdb用于创建系统表的程序。 | - | +| -L DIRECTORY | gs_initdb初始化数据库所需要的输入文件的路径。通常是不必要的。如果需要明确声明的话,程序会提示输入。因该参数意为创建指定配置信息的数据库,建议将share/postgresql下的所有涉及启动相关的子目录及文件全部复制过来,避免其他因素的影响。 | 初始化数据库所需的输入文件路径。 | +| -n, --noclean | 不指定该参数时,当gs_initdb发现一些错误妨碍它完成创建数据库的工作时,它将在检测到不能结束工作之前将其创建的所有文件删除。这个选项禁止任何清理动作,因而对调试很有用。 | - | +| -s, --show | 显示内部设置。 | - | +| -V, --version | 打印gs_initdb版本信息,然后退出。 | - | +| -?, --help | 显示关于gs_initdb命令行参数的帮助信息,然后退出。 | - | diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/6-gs_install.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/6-gs_install.md index 604cd9f7..0b597780 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/6-gs_install.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/6-gs_install.md @@ -27,7 +27,7 @@ MogDB安装部署,要求用户指定配置文件,配置文件中会指定程 gs_install -X XMLFILE [--gsinit-parameter="PARAMETER" [...]] [--dn-guc="PARAMETER" [...]] [--alarm-component=ALARMCOMPONENT] [--time-out=SECS] [-l LOGFILE] ``` - > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 安装时若不指定字符集,默认字符集为SQL_ASCII,为简化和统一区域loacle默认设置为C,若想指定其他字符集和区域,请在安装时使用参数-gsinit-parameter=“-locale=LOCALE”来指定,LOCALE为新数据库设置缺省的区域。 + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 安装时若不指定字符集,默认字符集为SQL_ASCII,为简化和统一区域loacle默认设置为C,若想指定其他字符集和区域,请在安装时使用参数--gsinit-parameter=“--locale=LOCALE”来指定,LOCALE为新数据库设置缺省的区域。 - 显示帮助信息 @@ -55,19 +55,19 @@ MogDB安装部署,要求用户指定配置文件,配置文件中会指定程 当不明确指定-l,但在XML文件中配置了gaussdbLogPath时,默认值为“gaussdbLogPath的值、用户名和om/gs_install-YYYY-MM-DD_hhmmss.log”的组合。 -- -gsinit-parameter=PARAM +- --gsinit-parameter=PARAM 数据实例参数指定。 取值范围请参见gs_initdb的参数说明,其中对-A、-D、-U、-C、-X参数的设置不生效。 -- -dn-guc=PARAM +- --dn-guc=PARAM 配置参数。 取值范围请参见gs_guc的参数说明。 -- -time-out=SECS +- --time-out=SECS 启动超时等待时间。单位:s。 @@ -75,15 +75,15 @@ MogDB安装部署,要求用户指定配置文件,配置文件中会指定程 取值范围: 正整数,若无特殊需求,不需要配置该参数,系统会自动调整超时时间。 -- -alarm-component=alarm_component +- --alarm-component=alarm_component 指定告警上报组件的绝对路径。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/7-gs_postuninstall.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/7-gs_postuninstall.md index 8e6a0c24..7a013bba 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/7-gs_postuninstall.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/7-gs_postuninstall.md @@ -57,29 +57,29 @@ MogDB提供了gs_postuninstall工具来帮助清理准备MogDB环境阶段所做 如果MogDB内某主机做单机环境清理后,MogDB不能再做全量环境清理。 -- -delete-user +- --delete-user 删除-U参数指定的操作系统用户。 - 如果在Redhat环境下,且用户名与用户组名相同,选择此项必须指定-delete-group参数。 + 如果在Redhat环境下,且用户名与用户组名相同,选择此项必须指定--delete-group参数。 -- -delete-group +- --delete-group - 删除操作系统用户所在的用户组(选择此选项必须指定-delete-user参数)。 + 删除操作系统用户所在的用户组(选择此选项必须指定--delete-user参数)。 - -l -指定日志文件名及路径。在内部会自动给日志名添加一个时间戳。 + 指定日志文件名及路径。在内部会自动给日志名添加一个时间戳。 -当既不明确指定-l,又不在XML文件中配置gaussdbLogPath时,默认值为:“/var/log/gaussdb/om/gs_local-YYYY-MMDD_hhmmss.log”。 + 当既不明确指定-l,又不在XML文件中配置gaussdbLogPath时,默认值为:“/var/log/gaussdb/om/gs_local-YYYY-MMDD_hhmmss.log”。 -> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 由于在执行gs_postuninstall后,系统会自动删除MogDB相关目录(包含$GAUSSLOG目录)。因此建议用户通过该参数指定日志文件到非MogDB相关路径。 + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 由于在执行gs_postuninstall后,系统会自动删除MogDB相关目录(包含$GAUSSLOG目录)。因此建议用户通过该参数指定日志文件到非MogDB相关路径。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/8-gs_preinstall.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/8-gs_preinstall.md index 3e36184e..54e64cf1 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/8-gs_preinstall.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/8-gs_preinstall.md @@ -80,11 +80,11 @@ MogDB提供了gs_preinstall工具来帮助完成MogDB的环境配置,以保证 3. 用户需要自己保证各台主机上所执行命令的一致性; 4. 手动将所有节点的主机名和ip映射关系写入各个主机的/etc/hosts,并在每个映射关系后边加入注释内容:#Gauss OM IP Hosts Mapping。 -- -skip-os-set +- --skip-os-set 是否设置操作系统参数。默认设置系统参数。如果指定该参数则不设置。 -- -env-var=“ENVVAR” +- --env-var=“ENVVAR” 配置普通用户环境变量。可以指定多个。 @@ -92,36 +92,36 @@ MogDB提供了gs_preinstall工具来帮助完成MogDB的环境配置,以保证 > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 本参数不能指定为MogDB默认创建的环境变量。否则,MogDB的环境变量将被覆盖。MogDB默认创建的环境变量见[表1](#mogdbmoren)。 -- -sep-env-file=MPPRCFILE +- --sep-env-file=MPPRCFILE 保存环境变量的文件。如果指定该参数,表示将使用环境变量分离的版本。 > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 不能指定环境变量文件为MogDB相关目录或者和这些目录同名,不能和MogDB用户的目录相同。 -- -skip-hostname-set +- --skip-hostname-set 是否将xml配置文件中主机名与IP的映射关系写入“/etc/hosts”文件中。默认写入,如果指定该参数则不写入。 - -l -指定日志文件名及路径。在内部会自动给日志名添加一个时间戳。 + 指定日志文件名及路径。在内部会自动给日志名添加一个时间戳。 -默认值:/var/log/gaussdb/用户名/om/gs_preinstall.log + 默认值:/var/log/gaussdb/用户名/om/gs_preinstall.log -当不明确指定-l,但在XML文件中配置了gaussdbLogPath时,默认值为gaussdbLogPath的值、用户名和om/gs_preinstall-YYYY-MM-DD_hhmmss.log的组合。 + 当不明确指定-l,但在XML文件中配置了gaussdbLogPath时,默认值为gaussdbLogPath的值、用户名和om/gs_preinstall-YYYY-MM-DD_hhmmss.log的组合。 -- -non-interactive +- --non-interactive 指定前置执行模式。 - 当不指定该参数时,则为安全交互模式,在此模式下用户需要人机交互输入密码。 - 当指定该参数时,为非交互模式,不需要进行人机交互。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/9-gs_sshexkey.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/9-gs_sshexkey.md index 3bf145d4..46395ff7 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/9-gs_sshexkey.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/9-gs_sshexkey.md @@ -11,7 +11,10 @@ date: 2021-06-07 MogDB在安装过程中,需要在MogDB中的节点间执行命令,传送文件等操作。因此,安装前需要确保互信是连通的。MogDB提供了gs_sshexkey工具来帮助用户建立互信。 -> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-notice.gif) **须知:** root用户互信可能会存在安全隐患,因此建议用户在使用完成后,立即删除各主机上root用户的互信。 +> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-notice.gif) **须知** : +> +> - root用户互信可能会存在安全隐患,因此建议用户在使用完成后,立即删除各主机上root用户的互信。 +> - 企业版安装场景下,出于安全考虑,预安装完成后会自动删除改工具。 使用gs_sshexkey工具建立互信成功之后,会在用户目录下面生成gaussdb_tmp目录,该目录用于存放ssh-agent进程文件gauss_socket_tmp和加密私钥的密码短语文件(随机生成32位密码短语,通过encrypt工具加密),同时用户下会拉起两个ssh-agent进程,此进程用于挂载私钥自动输入对应的密码短语。进程拉起完毕之后,需要source用户的环境变量,才能使互信功能生效。 ## 前提条件 @@ -25,6 +28,8 @@ MogDB在安装过程中,需要在MogDB中的节点间执行命令,传送文 - 如果为普通用户建立互信,需要提前在各主机创建相同用户并设置密码。 +- 执行命令前,需要检查是否所有集群节点都支持expect命令,如果不支持请自行下载expect工具,建议使用expect version 5.45。 + - 如果各主机安装并启动了SELinux服务,需要确保/root和/home目录安全上下文为默认值(root目录:system_u:object_r:home_root_t:s0,home目录:system_u:object_r:admin_home_t:s0)或者关闭掉SELinux服务。 检查系统SELinux状态的方法:执行命令getenforce,如果返回结果是Enforcing ,说明SELinux安装并启用。 @@ -75,11 +80,7 @@ MogDB在安装过程中,需要在MogDB中的节点间执行命令,传送文 主机列表,列出所有需要建立互信主机的IP。 - > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 确保hostfile文件中只配置正确的主机IP,不包含其它信息。 - -- -h - - 主机IP列表,多个节点之间用英文逗号隔开。 + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 确保hostfile文件中只配置主机IP(每行只写一个IP),不包含其它信息。 - -l @@ -87,19 +88,19 @@ MogDB在安装过程中,需要在MogDB中的节点间执行命令,传送文 取值范围: 任意存在的可访问的绝对路径。 -- -skip-hostname-set +- --skip-hostname-set 是否将“-f”参数文件中IP与其hostname的映射关系写入“/etc/hosts”文件中。默认写入,如果指定该参数则不写入。普通用户无权限编辑/etc/hosts文件,故有无指定该参数,普通用户均不生成映射关系。 -- -no-deduplicate +- --no-deduplicate 是否在配置互信修改/etc/hosts文件的时候,去除/etc/hosts文件中已经配置过的主机信息,默认是去重复。 -- -?, -help +- -?, --help 显示帮助信息。 -- -V, -version +- -V, --version 显示版本号信息。 @@ -132,34 +133,3 @@ MogDB在安装过程中,需要在MogDB中的节点间执行命令,传送文 Successfully verified SSH trust on all hosts. Successfully created SSH trust. ``` - -- 用户密码不同情况下,交互式模式使用以下命令建立互信。 - - ```bash - gs_sshexkey -f /opt/software/hostfile - Please enter password for current user[root]. - Password: - Notice :The password of some nodes is incorrect. - Please enter password for current user[root] on the node[10.180.10.112]. - Password: - Please enter password for current user[root] on the node[10.180.10.113]. - Password: - Checking network information. - All nodes in the network are Normal. - Successfully checked network information. - Creating SSH trust. - Creating the local key file. - Appending local ID to authorized_keys. - Successfully appended local ID to authorized_keys. - Updating the known_hosts file. - Successfully updated the known_hosts file. - Appending authorized_key on the remote node. - Successfully appended authorized_key on all remote node. - Checking common authentication file content. - Successfully checked common authentication content. - Distributing SSH trust file to all node. - Successfully distributed SSH trust file to all node. - Verifying SSH trust on all hosts. - Successfully verified SSH trust on all hosts. - Successfully created SSH trust. - ``` 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 new file mode 100644 index 00000000..3e514f05 --- /dev/null +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/unified-database-management-tool.md @@ -0,0 +1,1134 @@ +--- +title: 统一数据库管理工具 +summary: 统一数据库管理工具 +author: Guo Huan +date: 2022-06-08 +--- + +# 统一数据库管理工具 + +CM(Cluster Manager)是一款数据库管理模块。支持自定义资源监控,提供了数据库主备的状态监控、网络通信故障监控、文件系统故障监控、故障自动主备切换等能力。提供了丰富的数据库管理能力,如节点、实例级的启停,数据库实例状态查询、主备切换、日志管理等。 + +需要注意的是,一主一备模式下,CM只支持基本的安装,启停,检测能力,其他功能不支持。 + +## 特性介绍 + +### cm_agent + +cm_agent是部署在数据库每个主机上,用来启停和监控各个数据库实例进程的数据库管理组件。 + +主要功能有: + +- 数据库实例启动和停止时负责拉起和停止本主机上部署的实例进程。 +- 监控本主机上运行的实例状态并将状态上报发送给CM Server。 +- 执行CM Server仲裁下发的命令。 + +**命令说明**: + +- 公共选项: + + - -V, --version + + 打印cm_agent版本信息,然后退出。 + + - -?, -h,--help + + 显示关于cm_agent命令行参数的帮助信息,然后退出。 + +- 日志信息记录的位置选项: + + - 0 + + 记录在设定的日志文件中。 + + - 1 + + 记录在syslog文件中。 + + - 2 + + 记录在设定的日志文件中。 + + - 3 + + 空文件,即不记录日志信息。 + +- 启动模式选项: + + - normal + + 正常模式启动。 + + - abnormal + + 非正常模式启动。 + +### cm_server + +cm_server是用来进行数据库实例管理和实例仲裁的组件。主要功能有: + +- 接收各个节点上cm_agent发送的数据库各实例状态。 +- 提供数据库实例整体状态的查询功能。 +- 监控实例的状态变化并进行仲裁命令的下发。 + +**命令说明**: + +- 公共选项: + + - -V, --version + + 打印cm_server版本信息,然后退出。 + + - -?, -h,--help + + 显示关于cm_server命令行参数的帮助信息,然后退出。 + +- 日志信息记录的位置选项: + + - 0 + + 记录在设定的日志文件中。 + + - 1 + + 记录在syslog文件中。 + + - 2 + + 记录在设定的日志文件中。 + + - 3 + + 空文件,即不记录日志信息。 + +## cm_ctl工具介绍 + +cm_ctl是MogDB提供的用来控制数据库实例服务的工具。该工具主要供OM调用,及数据库实例服务自恢复时使用。cm_ctl的主要功能有: + +- 启动数据库实例服务、AZ的所有实例、单个主机上的所有实例或单独启动某个实例进程。 +- 停止数据库实例服务、AZ的所有实例、单个主机上的所有实例或单独停止某个节点实例进程。 +- 重启逻辑数据库实例服务。 +- 查询数据库实例状态或者单个主机的状态。 +- 切换主备实例或重置实例状态。 +- 重建备机。 +- 查看数据库实例配置文件。 +- 设置日志级别,一主多备数据库实例部署下cm_server的仲裁模式、AZ之间的切换模式。 +- 获取日志级别,一主多备数据库实例部署下cm_server的仲裁模式、AZ之间的切换模式。 +- 检测实例进程状态。 + +与cm_ctl工具相关的文件: + +- cluster_manual_start + +该文件是数据库实例启停标志文件。文件位于_$GAUSSHOME/bin_下。其中,GAUSSHOME为环境变量。启动数据库实例时,cm_ctl会删除该文件;停止数据库实例时,cm_ctl会生成该文件,并向文件写入停止模式。 + +- instance_manual_start_X(X是实例编号) + +该文件是单个实例启停标志文件。文件位于_$GAUSSHOME/bin_下。其中,GAUSSHOME为环境变量。启动实例时,cm_ctl会删除该文件;停止实例时,cm_ctl会生成该文件,并向文件写入停止模式。 + +cm_ctl的相关约束: + +- 在集群模式下,使用cm_ctl集群工具来切换数据库角色,而不是gs_ctl数据库工具。 + +### 命令说明 + +**表 1** option参数 + +| 参数 | 参数说明 | +| :------------- | :----------------------------------------------------------- | +| start | 一主多备数据库部署模式下启动数据库实例服务、单个主机上的所有实例或单独启动某个节点实例进程,或者直接启动整个AZ。 | +| switchover | 一主多备数据库部署模式下切换数据库主备实例,dcf模式下只支持-n NODEID -D DATADIR。 | +| finishredo | 所有备机停止回放,每个分片中选择一个强制升主。
注意:该参数属于高风险操作,请谨慎执行。 | +| build | 重建备实例。 | +| check | 检测实例进程运行状态,用户无需关注,不建议使用。 | +| stop | 一主多备数据库部署模式下停止数据库实例服务、单个主机上的所有实例或单独停止某个节点实例进程。 | +| query | 一主多备数据库部署模式下查询数据库实例状态或者单个主机的状态。 | +| view | 查看数据库实例配置文件。 | +| set | 设置日志级别,一主多备数据库部署模式下cm_server的仲裁模式、AZ之间的切换模式、cm_server升主模式。 | +| set --param | 设置cm参数,默认set所有节点上的参数,也可以通过-n参数指定set某个节点,具体参数可以参考CM配置参数介绍 | +| get | 获取日志级别,一主多备数据库部署模式下cm_server的仲裁模式、AZ之间的切换模式。 | +| setrunmode | DCF部署方式下,设置DCF投票数,主要用于DCF强启。 | +| changerole | DCF模式下,将角色为primary的修改为passive或者follower。 | +| changemember | DCF模式下,改变指定DCF节点属性,包括节点角色、节点所在的逻辑组、节点的选举优先级等。 | +| reload | 在线加载数据库实例静态配置文件,用户无需关注,不建议使用。 | +| reload --param | 加载可以动态生效的cm参数,部分参数不支持reload,只能重启cm才能生效。 | +| list | 列出cm_agent或cm_server所有的参数。 | +| encrypt | 对输入的密码进行加密操作,密码支持8~15位,且必须包含三种字符(数字,字母,符号)。 | +| ddb | DCC模式下,执行dcc命令行。 | +| switch | 执行ddb模式的切换。
说明:MogDB当前只支持切换到DCC模式。 | + +**表 2** 公共参数 + +| 参数 | 参数说明 | +| :------------------- | :--------------------------------------------- | +| -D DATADIR | 指定实例数据目录。 | +| -l FILENAME | 结果输出到指定文件。 | +| -n NODEID | 指定节点。 | +| -z AVAILABILITY_ZONE | 指定AZ名称。 | +| -t SECS | 指定超时时间。 | +| -V, --version | 打印cm_ctl版本信息,然后退出。 | +| -?, -h,--help | 显示关于cm_ctl命令行参数的帮助信息,然后退出。 | + +**表 3** switchover参数 + +| 参数 | 参数说明 | +| :--- | :----------------------------------------------------------- | +| -a | 重置节点状态为初始配置状态。
说明:switchover为维护操作:确保数据库实例状态正常,所有业务结束,并使用pgxc_get_senders_catchup_time()视图查询无主备追赶后,再进行switchover操作。 | +| -A | 将所有节点实例统一从主切换到备。 | +| -f | 指定进行-f类型switchover。
说明:
- switchover为维护操作:确保数据库实例状态正常,所有业务结束,并使用pgxc_get_senders_catchup_time()视图查询无主备追赶后,再进行switchover操作。
- 使用方式:cm_ctl switchover -n NODEID -D DATADIR -f。 | + +**表 4** build参数 + +| 参数 | 参数说明 | +| :------ | :----------------------------------------------------------- | +| -f | 强制重建备机。 | +| -b full | 指定进行全量build。不指定情况下,对于一主多备数据库实例部署模式进行auto build。auto build指:先调用增量build,失败之后调用全量build。 | +| -c | 重建 cm_server(将主节点的DCC数据目录拷贝到指定节点,只适用于一主一备模式)。 | + +**表 5** check参数 + +| 参数 | 参数说明 | +| :---------- | :-------------------------------------------------------- | +| -B BINNAME | 指定进程名,其进程名包括“cm_agent”,“mogdb”和“cm_server”。 | +| -T DATAPATH | 指定实例数据目录。 | + +**表 6** stop参数 + +| 参数 | 参数说明 | +| :--------------- | :----------------------------------------------------------- | +| -m SHUTDOWN-MODE | 指定停止模式,停止模式有以下几种:
- smart(s):等待用户业务结束后,停止所有数据库实例。
- fast(f):不等待用户业务结束,指定数据库实例退出。
- immediate(i):不等待用户业务结束,指定数据库实例强制退出。 | + +**表 7** query参数 + +| 参数 | 参数说明 | +| :----------- | :----------------------------------------------------------- | +| -s | 显示导致各个节点主备实例数量不均衡的实例。
说明:-s参数需要和-v以及-C参数一起使用才能按主备关系成对显示导致各个节点主备实例数量不均衡的实例,使用-s参数时,必须指定-C、-v参数。 | +| -C | 按主备关系成对显示数据库实例状态。
说明:-C参数需要和-v参数一起使用才能按主备关系成对显示数据库实例详细状态信息,使用-C时,必须指定-v参数。 | +| -v | 显示详细数据库实例状态。
说明:数据库实例有如下几种状态:
- Normal:表示数据库实例可用,且数据有冗余备份。所有进程都在运行,主备关系正常。
- Degraded:表示数据库实例可用,但数据没有冗余备份。
- Unavailable:表示数据库实例不可用。 | +| -d | 显示实例数据目录。
说明:-d参数需要和-v以及-C参数一起使用。 | +| -i | 显示物理节点ip。
说明:-i参数需要和-v以及-C参数一起使用。 | +| -F | 显示各个节点Fenced UDF状态。
说明:-F参数需要和-v以及-C参数一起使用才能显示各个节点Fenced UDF状态,使用-F参数时,必须指定-C、-v参数。 | +| -z ALL | 显示数据库实例所在AZ名称。
说明:-z参数需要和-v以及-C参数一起使用,并且-z后面需要跟参数ALL。 | +| -r | 显示备机redo状态。
说明:使用-r时,必须指定-v参数。 | +| -g | 显示备份和恢复群集信息。 | +| -x | 显示所有异常的数据库实例。说明:-x参数需要和-v以及-C参数一起使用。 | +| -S | 显示数据库实例启动时的状态检查结果。
说明:-S参数需要和-v以及-C参数一起使用才能按显示数据库实例的状态检查结果。有以下三种状态:
- Normal:表示数据库实例可用,且数据有冗余备份。所有进程都在运行,主备关系正常。
- Degraded:表示数据库实例可用,但数据没有冗余备份。
- Unavailable:表示数据库实例不可用。 | +| --minorityAz | 只查询指定AZ的cms。
说明:此参数会忽略非指定AZ的cms节点,可以在少数派场景提高查询速度。 | +| -p | 显示数据库实例所有节点端口。
说明:-p参数需要和-v以及-C参数一起使用。 | + +**表 8** set参数 + +| 参数 | 参数说明 | +| :---------------------------------------------- | :----------------------------------------------------------- | +| --log_level=LOG_LEVEL | 设置主cm_server日志级别。共分为DEBUG5、DEBUG1、WARNING、LOG、ERROR和FATAL六个级别,日志打印信息级别越来越高。设置日志级别越高,输出日志信息就越少。 | +| --cm_arbitration_mode=ARBITRATION_MODE | 一主多备功能,设置cm_server的仲裁模式。共有MAJORITY、MINORITY两种模式,MAJORITY为多数派模式,MINORITY为少数派模式。MogDB不支持少数派,此参数可以设置成MINORITY,但不会生效。 | +| --cm_switchover_az_mode=SWITCHOVER_AZ_MODE | 一主多备功能,设置AZ之间的自动切换开关。共有NON_AUTO、AUTO两种模式,NON_AUTO为非自动切换模式,AUTO为自动切换模式。AUTO模式由主cm_server自动控制AZ1和AZ2之间的节点实例切换。 | +| --cmsPromoteMode=CMS_PROMOTE_MODE -I INSTANCEID | 设置cm_server的升主方式,共有AUTO、PRIMARY_F两种模式,AUTO为默认自选主方式,PRIMARY_F会强制使-I指定的节点升主,无论当前是否有主,因此,有可能会导致cms存在多主情况。 | + +**表 9** set cm参数 + +| 参数 | 参数说明 | +| :------------------- | :----------------------------------------------------------- | +| --param | 表明需要设置cm参数,不带此参数则不能执行设置cm参数。 | +| --agent \| --server | 此参数为必带参数,表明当前需要设置cm_server还是cm_agent的参数。 | +| -k parameter="value" | 指定设置的参数和参数的值,只能设置已经存在的参数,不支持增加或删减参数。 | + +**表 10** get参数 + +| 参数 | 参数说明 | +| :----------------------------------------- | :----------------------------------------------------------- | +| --log_level=LOG_LEVEL | 获取主cm_server日志级别。共分为DEBUG5、DEBUG1、WARNING、LOG、ERROR和FATAL六个级别,日志打印信息级别越来越高。设置日志级别越高,输出日志信息就越少。 | +| --cm_arbitration_mode=ARBITRATION_MODE | 一主多备功能,获取cm_server的仲裁模式。共有MAJORITY、MINORITY两种模式,MAJORITY为多数派模式,MINORITY为少数派模式。少数派模式适用于一主多备数据库部署并且只有AZ3存活时,此时cm_server可以进行正常的仲裁业务,非此模式下将仲裁模式设置成少数派成功后,cm会自动将仲裁模式改为多数派,以保证集群正常运转;多数派模式适用于一主多备数据库部署并且各个组件(cm_server,节点)存活数量大于一半的场景。数据库实例正常情况下默认为多数派模式。
注意:MogDB不支持少数派 | +| --cm_switchover_az_mode=SWITCHOVER_AZ_MODE | 一主多备功能,获取AZ之间的自动切换开关。共有NON_AUTO、AUTO两种模式,NON_AUTO为非自动切换模式,AUTO为自动切换模式。AUTO模式由主cm_server自动控制AZ1和AZ2之间的节点实例切换。 | + +**表 11** view参数 + +| 参数 | 参数说明 | +| :--- | :----------------------------------------------------------- | +| -v | 显示数据库实例所有节点的静态配置详细信息。
说明:相对于cm_ctl view命令,-v 显示内容增加了cmserver、节点组件的编号显示,如下:cmseverInstanceID,datanodeInstanceID。 | +| -N | 只显示本节点的静态配置信息,即执行cm_ctl view命令的节点的信息,N表示Native。 | + +**表 12** setrunmode参数 + +| 参数 | 参数说明 | 取值范围 | +| :-------- | :------------------------------ | :----------------------------------------------------------- | +| --xmode | 指定DCF的运行模式。 | - normal:正常模式。
- minority:少数派模式,需要--votenum指定投票数。 | +| --votenum | 指定DCF少数派运行方式的投票数。 | 正整数,不高于DCF总副本数。 | + +**表 13** changerole参数 + +| 参数 | 参数说明 | 取值范围 | +| :----- | :------------------------------------------------------ | :---------------------------------------------------- | +| --role | DCF模式下,将角色为primary的修改为passive或者follower。 | - passive:passive角色。
- follower:follow角色。 | + +**表 14** changemember参数 + +| 参数 | 参数说明 | 取值范围 | +| :--------- | :------------------------------------------------------ | :---------------------------------------------------- | +| --role | DCF模式下,将角色为primary的修改为passive或者follower。 | - passive:passive角色。
- follower:follow角色。 | +| --group | DCF模式下,修改group的值。 | 0~2147483647 | +| --priority | DCF模式下,修改priority的值。 | 0~2147483647 | + +**表 15** start参数 + +| 参数 | 参数说明 | +| :------------------------------------- | :----------------------------------------------------------- | +| --cm_arbitration_mode=ARBITRATION_MODE | 一主多备功能,获取cm_server的仲裁模式。共有MAJORITY、MINORITY两种模式,MAJORITY为多数派模式,MINORITY为少数派模式。少数派模式适用于一主多备数据库部署并且只有AZ3存活时,此时cm_server可以进行正常的仲裁业务,非此模式下将仲裁模式设置成少数派成功后,cm会自动将仲裁模式改为多数派,以保证集群正常运转;多数派模式适用于一主多备数据库部署并且各个组件(cm_server,节点)存活数量大于一半的场景。数据库实例正常情况下默认为多数派模式。
注意:MogDB不支持少数派 | + +**表 16** reload 参数 + +| 参数 | 参数说明 | +| :------------------ | :--------------------------------------------------- | +| --param | 表明需要加载cm参数,不带此参数则不能执行加载cm参数。 | +| --agent \| --server | 表明当前需要动态加载cm_server还是cm_agent的参数。 | + +**表 17** list参数 + +| 参数 | 参数说明 | +| :------------------ | :----------------------------------------------------------- | +| --param | 此参数为必带参数,表明需要列出cm参数信息。 | +| --agent \| --server | 此参数为必带参数,表明当前需要查看cm_server还是cm_agent的参数。 | + +**表 18** encrypt参数 + +| 参数 | 参数说明 | +| :--- | :--------------------------------------------------- | +| -M | 指定加密类型,支持server、client。默认类型为server。 | +| -D | 指定生成的加密密码文件路径。 | + +**表 19** switch参数 + +| 参数 | 参数说明 | +| :--------------- | :----------------------------------------------------------- | +| --ddb_type=[DDB] | 选择需要切换到哪个DDB模式(MogDB只支持DCC模式)。 | +| --commit | 执行切换会使数据库实例无法选主,需要执行commit恢复数据库实例。 | +| --rollback | 回滚操作,执行切换失败需要执行回滚操作。 | + +**表 20** ddb参数 + +| 参数 | 参数说明 | +| :------------------ | :----------------------------------------------------------- | +| --put [key] [value] | 往DCC中插入键值对,如果键值对已存在则会修改键key所对应的值value。 | +| --get [key] | 查询DCC中key对应的value。 | +| --delete [key] | 删除DCC中指定的键值对。 | +| --prefix | get或者delete后添加prefix参数,可以实现模糊匹配查询和删除。 | +| --cluster_info | 获取数据库实例信息。 | +| --leader_info | 获取主节点信息。 | +| --help,-h | 显示DCC命令帮助信息。 | +| --version,-v | 显示DCC版本信息。 | + +### 命令参考 + +- 启动实例: + + ```shell + cm_ctl start [-z AVAILABILITY_ZONE [--cm_arbitration_mode=ARBITRATION_MODE]] | [-n NODEID [-D DATADIR]] [-t SECS] + ``` + +- 数据库主备倒换: + + ```shell + cm_ctl switchover [-z AVAILABILITY_ZONE] | [-n NODEID -D DATADIR [-f]] | [-a] | [-A] [-t SECS] + ``` + +- 所有备机停止回放,每个分片中选择一个强制升主: + + ```shell + cm_ctl finishredo + ``` + +- 重建备节点: + + ```shell + cm_ctl build -n NODEID -D DATADIR [-t SECS] [-f] [-b full] + ``` + +- 检测实例进程运行状态: + + ```shell + cm_ctl check -B BINNAME -T DATAPATH + ``` + +- 停止实例: + + ```shell + cm_ctl stop [[-z AVAILABILITY_ZONE] | [-n NODEID [-D DATADIR [-R]]]] [-t SECS] [-m SHUTDOWN-MODE] + ``` + +- 查询集群状态: + + ```shell + cm_ctl query [-z ALL] [-l FILENAME] [-v [-C [-s] [-S] [-d] [-i] [-F] [-x] [-p]] | [-r]] [-t SECS] [--minorityAz=AZ_NAME] + ``` + +- 查看集群配置文件: + + ```shell + cm_ctl view [-v | -N | -n NODEID] [-l FILENAME] + ``` + +- 设置参数: + + ```shell + cm_ctl set [--log_level=LOG_LEVEL] [--cm_arbitration_mode=ARBITRATION_MODE] [--cm_switchover_az_mode=SWITCHOVER_AZ_MODE] + ``` + +- 设置CM参数: + + ```shell + cm_ctl set --param --agent | --server [-n NODEID] -k "PARAMETER='value'" + ``` + +- 获取参数: + + ```shell + cm_ctl get [--log_level] [--cm_arbitration_mode] [--cm_switchover_az_mode] + ``` + +- 设置DCF投票数: + + ```shell + cm_ctl setrunmode -n NODEID -D DATADIR [[--xmode=normal] | [--xmode=minority --votenum=NUM]] + ``` + +- 改变dcf角色信息: + + ```shell + cm_ctl changerole [--role=PASSIVE | --role=FOLLOWER] -n NODEID -D DATADIR [-t SECS] + ``` + +- 改变dcf节点属性: + + ```shell + cm_ctl changemember [--role=PASSIVE | --role=FOLLOWER] [--group=xx] [--priority=xx] -n NODEID -D DATADIR [-t SECS] + ``` + +- 动态加载CM参数: + + ```shell + cm_ctl reload --param [--agent | --server] + ``` + +- 列出所有CM参数: + + ```shell + cm_ctl list --param [--agent | --server] + ``` + +- 加密: + + ```shell + cm_ctl encrypt [-M MODE] -D DATADIR + ``` + +- 执行DCC命令行: + + ```shell + cm_ctl ddb DCC_CMD + 设置:cm_ctl ddb --put [key] [value] + 删除:cm_ctl ddb --delete [key] + 查看DCC命令帮助信息:cm_ctl ddb --help + ``` + +- 执行switch ddb命令: + + ```shell + cm_ctl switch [--ddb_type=[DDB]] [--commit] [--rollback] + ``` + +## 安全设计 + +### 手动替换证书步骤 + +- 创建自认证证书 + +自认证证书生成请参考[证书生成](1-client-access-authentication#证书生成)。 + +对私钥密码的保护,使用cm encrypt工具,请参考[cm_ctl工具介绍](#cm_ctl工具介绍)。 + +```shell +cm_ctl encrypt [-M MODE] -D DATADIR +``` + +1. 生成服务器端密钥因子server.key.cipher、server.key.rand。 + + ```shell + cm_ctl encrypt -M server -D DATADIR + please enter the password:(使用密码需要与服务器私钥的保护密码相同) + ``` + +2. 生成客户端密钥因子client.key.cipher、client.key.rand。 + + ```shell + cm_ctl encrypt -M client -D DATADIR + please enter the password:(使用密码需要与客户端私钥的保护密码相同) + ``` + +### 证书使用指南 + +1. 使用证书需配置cm_server参数为on (默认关闭), + + ```shell + cm_ctl set --param --server -k enable_ssl="on" + ``` + +2. 证书文件需要存在于所有节点的$GAUSSHOME/share/sslcert/cm中,证书替换后重启集群生效。 + +所需证书文件:server.crt、server.key、client.crt、client.key、cacert.pem、server.key.cipher、server.key.rand、client.key.cipher、client.key.rand + +根证书、密钥、证书以及密钥密码加密文件的权限,需保证权限为400。如果权限不满足要求,则无法使用ssl。 + +- chmod 400 cacert.pem +- chmod 400 server.crt +- chmod 400 server.key +- chmod 400 server.key.cipher +- chmod 400 server.key.rand +- chmod 400 client.crt +- chmod 400 client.key +- chmod 400 client.key.cipher +- chmod 400 client.key.rand + +证书有效期的检测周期为1天,可通过ssl_cert_expire_check_interval设置。证书有效期剩余90天时会开始产生告警,可通过[ssl_cert_expire_alert_threshold](cm_server#ssl_cert_expire_alert_threshold)设置。 + +## CM配置参数介绍 + +cm_agent相关参数可通过cm_agent数据目录下的cm_agent.conf文件查看,cm_server相关参数可通过cm_server数据目录下的cm_server.conf文件查看。 + +### cm_agent参数 + +#### log_dir + +**参数说明**:log_dir决定存放cm_agent日志文件的目录。 可以是绝对路径,或者是相对路径(相对于$GAUSSLOG的路径)。通过cm_ctl设置绝对路径时需要将路径用”把路径包含起来,例如:cm_ctl set --param --agent -k log_dir=“'/log/dir'“。 + +**取值范围**:字符串,最大长度为1024。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:“log”,表示在$GAUSSLOG下对应的cm目录下生成cm_agent日志。 + +#### log_file_size + +**参数说明**:控制日志文件的大小。当'cm_agent-xx-current.log'日志文件达到指定大小时,则重新创建一个日志文件记录日志信息。 + +**取值范围**:整型,[0, 2047],实际生效范围[1, 2047],单位:MB。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:16MB。 + +#### log_min_messages + +**参数说明**:控制写到cm_agent日志文件中的消息级别。每个级别都包含排在它后面的所有级别中的信息。级别越低,服务器运行日志中记录的消息就越少。 + +**取值范围**:枚举类型,有效值有debug5、debug1、warning、error、log、fatal(不区分大小写)。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:warning + +#### incremental_build + +**参数说明**:控制重建备节点模式是否为增量。打开这个开关,则增量重建备节点;否则,全量重建备节点。 + +**取值范围**:布尔型。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +- on、yes、true、1:表示增量重建备节点。 +- off、no、false、0:表示全量重建备节点。 + +**默认值**:on + +#### security_mode + +**参数说明**:控制是否以安全模式启动节点。打开这个开关,则以安全模式启动节点;否则,以非安全模式启动节点。 + +**取值范围**:布尔型。修改后可以动态生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +- on、yes、true、1:表示以安全模式启动节点。 +- off、no、false、0:表示以非安全模式启动节点。 + +**默认值**:off + +#### upgrade_from + +**参数说明**:就地升级过程中使用,用于标示升级前数据库的内部版本号,此参数禁止手动修改。 + +**取值范围**:非负整型,[0, 4294967295]。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:0 + +#### alarm_component + +**参数说明**:在使用第一种告警方式时,设置用于处理告警内容的告警组件的位置。通过cm_ctl设置绝对路径时需要将路径用”把路径包含起来,例如:cm_ctl set --param --agent -k alarm_component=“'/alarm/dir'“。 + +**取值范围**:字符串,最大长度为1024。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:/opt/snas/bin/snas_cm_cmd + +#### alarm_report_interval + +**参数说明**:指定告警上报的时间间隔。 + +**取值范围**:非负整型,[0, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### agent_heartbeat_timeout + +**参数说明**:cm_server心跳超时时间。 + +**取值范围**:整型,[2, 2147483647],单位:秒。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:5 + +#### agent_connect_timeout + +**参数说明**:cm_agent连接cm_server超时时间。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### agent_connect_retries + +**参数说明**:cm_agent连接cm_server尝试次数。 + +**取值范围**:整型,[0, 2147483647]。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:15 + +#### agent_kill_instance_timeout + +**参数说明**:当cm_agent在无法连接cm_server主节点后,发起一次杀死本节点上所有实例的操作之前,所需等待的时间间隔。 + +**取值范围**:整型,[0, 2147483647]。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:0,不发起杀死本节点上所有实例的操作。 + +#### agent_report_interval + +**参数说明**:cm_agent上报实例状态的时间间隔。 + +**取值范围**:整型,[0, 2147483647]。单位:秒。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### alarm_report_max_count + +**参数说明**:指定告警上报的最大次数。 + +**取值范围**:非负整型,[1, 2592000]。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### agent_check_interval + +**参数说明**:cm_agent查询实例状态的时间间隔。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:2 + +#### enable_log_compress + +**参数说明**:控制压缩日志功能。 + +**取值范围**:布尔型。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +- on、yes、true、1:表示允许压缩日志。 +- off、no、false、0:表示不允许压缩日志。 + +**默认值**:on + +#### process_cpu_affinity + +**参数说明**:控制是否以绑核优化模式启动主节点进程。配置该参数为0,则不进行绑核优化;否则,进行绑核优化,且物理CPU片数为2n个。数据库、cm_agent重启生效。仅支持ARM。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**取值范围**:整型,[0, 2]。 + +**默认值**:0 + +#### enable_xc_maintenance_mode + +**参数说明**:在数据库为只读模式下,控制是否可以修改pgxc_node系统表。 + +**取值范围**:布尔型。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +- on、yes、true、1:表示开启可以修改pgxc_node系统表功能。 +- off、no、false、0:表示关闭可以修改pgxc_node系统表功能。 + +**默认值**:on + +#### log_threshold_check_interval + +**参数说明**:cm日志压缩和清除的时间间隔,每1800秒压缩和清理一次。 + +**生效范围**:\$GAUSSLOG/cm/cm_ctl;\$GAUSSLOG/cm/cm_server;\$GAUSSLOG/cm/om_monitor目录下的文件以及$GAUSSLOG/cm/cm_agent目录下以cm_agent-、system_call-、system_alarm-为前缀的日志文件。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1800 + +#### log_max_size + +**参数说明**:控制cm日志最大存储值,当CM日志总大小超过(log_max_size*95/100)MB时,根据压缩日志生成时间,依次删除历史压缩日志,直到日志总大小小于(log_max_size*95/100)MB。 + +**生效范围**:\$GAUSSLOG/cm/cm_ctl;\$GAUSSLOG/cm/cm_server;\$GAUSSLOG/cm/om_monitor目录下的文件以及$GAUSSLOG/cm/cm_agent目录下以cm_agent-、system_call-、system_alarm-为前缀的日志文件。 + +**取值范围**:整型,[0, 2147483647],单位:MB。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:10240 + +#### log_max_count + +**参数说明**:cm可存储的最多日志数量,当cm日志总个数超过该值,根据压缩日志文件名时间,删除超过保留天数log_saved_days的压缩日志。 + +**生效范围**:\$GAUSSLOG/cm/cm_ctl;\$GAUSSLOG/cm/cm_server;\$GAUSSLOG/cm/om_monitor目录下的文件以及$GAUSSLOG/cm/cm_agent目录下以cm_agent-、system_call-、system_alarm-为前缀的日志文件。 + +**取值范围**:整型,[0, 10000],单位:个。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:10000 + +#### log_saved_days + +**参数说明**:cm压缩日志保存的天数,cm压缩日志超过该值并且cm日志总个数超过log_max_count,删除压缩日志。 + +**生效范围**:\$GAUSSLOG/cm/cm_ctl;\$GAUSSLOG/cm/cm_server;\$GAUSSLOG/cm/om_monitor目录下的文件以及$GAUSSLOG/cm/cm_agent目录下以cm_agent-、system_call-、system_alarm-为前缀的日志文件。 + +**取值范围**:整型,[0, 1000],单位天。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:90 + +#### agent_phony_dead_check_interval + +**参数说明**:cm_agent检测进程是否僵死的时间间隔。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:10 + +#### unix_socket_directory + +**参数说明**:unix套接字的目录位置。通过cm_ctl设置绝对路径时需要将路径用”把路径包含起来,例如:cm_ctl set --param --agent -k unix_socket_directory=“'/unix/dir'“。 + +**取值范围**:字符串,最大长度为1024。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值:”** + +#### dilatation_shard_count_for_disk_capacity_alarm + +**参数说明**:扩容场景下,设置新增的扩容分片数,用于上报磁盘容量告警时的阈值计算。 + +**取值范围**:整型,[0, 2147483647],单位:个。该参数设置为0,表示关闭磁盘扩容告警上报;该参数设置为大于0,表示开启磁盘扩容告警上报,且告警上报的阈值根据此参数设置的分片数量进行计算。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### enable_dcf + +**参数说明**:DCF模式开关。 + +**取值范围**:布尔型。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +- on、yes、true、1:表示启用dcf。 +- off、no、false、0:表示不启用dcf。 + +**默认值**:off + +#### disaster_recovery_type + +**参数说明**:主备数据库灾备关系的类型。 + +**取值范围**:整型,[0, 2]。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +- 0表示未搭建灾备关系。 +- 1表示搭建了obs灾备关系。 +- 2表示搭建了流式灾备关系 + +**默认值**:0 + +#### agent_backup_open + +**参数说明**:灾备模式设置,开启后CM按照灾备模式运行。 + +**取值范围**:整型,[0, 2]。修改后需要重启cm_agent才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +- 0表示未搭建灾备关系。 +- 1表示搭建了obs灾备关系(之后不再支持)。 +- 2表示搭建了流式灾备关系。 + +**默认值**:0 + +### cm_server参数 + +#### log_dir + +**参数说明**:log_dir决定存放cm_server日志文件的目录。 它可以是绝对路径,或者是相对路径(相对于$GAUSSLOG的路径)。通过cm_ctl设置绝对路径时需要将路径用”把路径包含起来,例如:cm_ctl set --param --server -k log_dir=“'/log/dir'“。 + +**取值范围**:字符串,最大长度为1024。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:“log”,表示在$GAUSSLOG下对应的cm目录下生成cm_server日志。 + +#### log_file_size + +**参数说明**:控制日志文件的大小。当'cm_server-xx-current.log'日志文件达到指定大小时,则重新创建一个日志文件记录日志信息。 + +**取值范围**:整型,[0, 2047],实际生效范围[1, 2047],单位:MB。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:16MB + +#### log_min_messages + +**参数说明**:控制写到cm_server日志文件中的消息级别。每个级别都包含排在它后面的所有级别中的信息。级别越低,服务器运行日志中记录的消息就越少。 + +**取值范围**:枚举类型,有效值有debug5、debug1、log、warning、error、fatal(不区分大小写)。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:warning + +#### thread_count + +**参数说明**:cm_server线程池的线程数。 + +**取值范围**:整型,[2, 1000]。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1000 + +#### instance_heartbeat_timeout + +**参数说明**:实例心跳超时时间。 + +**取值范围**:整型,[1, 2147483647],单位:秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:6 + +#### instance_failover_delay_timeout + +**参数说明**:cm_server检测到主机宕机,failover备机的延迟时间。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:0 + +#### cmserver_ha_connect_timeout + +**参数说明**:cm_server主备连接超时时间。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:2 + +#### cmserver_ha_heartbeat_timeout + +**参数说明**:cm_server主备心跳超时时间。 + +**取值范围**:整型,[1, 2147483647],单位:秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:6 + +#### cmserver_ha_status_interval + +**参数说明**:cm_server主备同步状态信息间隔时间。 + +**取值范围**:整型,[1, 2147483647],单位:秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### cmserver_self_vote_timeout + +**参数说明**:cm_server之间相互投票的超时时间。旧版本遗留参数,实际不生效。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值:6** + +#### phony_dead_effective_time + +**参数说明**:用于数据库节点僵死检测,当检测到的僵死次数大于该参数值,认为进程僵死,将进程重启。 + +**取值范围**:整型,[1, 2147483647],单位:次数。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:5 + +#### cm_server_arbitrate_delay_base_time_out + +**参数说明**:cm_server仲裁延迟基础时长。cm_server主断连后,仲裁启动计时开始,经过仲裁延迟时长后,将选出新的cm_server主。其中仲裁延迟时长由仲裁延迟基础时长、节点index(server ID序号)和增量时长共同决定。公式为:仲裁延迟时长=仲裁延迟基础时长+节点index*仲裁延迟增量时长参数。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:10 + +#### cm_server_arbitrate_delay_incrememtal_time_out + +**参数说明**:cm_server仲裁延迟增量时长。cm_server主断连后,仲裁启动计时开始,经过仲裁延迟时长后,将选出新的cm_server主。其中仲裁延迟时长由仲裁延迟基础时长、节点index(server ID序号)和增量时长共同决定。公式为:仲裁延迟时长=仲裁延迟基础时长+节点index*仲裁延迟增量时长参数。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:3 + +#### alarm_component + +**参数说明**:在使用第一种告警方式时,设置用于处理告警内容的告警组件的位置。参数修改请参考[表 set cm参数](#table9)进行设置。通过cm_ctl设置绝对路径时需要将路径用”把路径包含起来,例如:cm_ctl set --param --server -k alarm_component=“'/alarm/dir'“。 + +**取值范围**:字符串,最大长度为1024。修改后需要重启cm_server才能生效。 + +**默认值**:/opt/snas/bin/snas_cm_cmd + +#### alarm_report_interval + +**参数说明**:指定告警上报的时间间隔。 + +**取值范围**:非负整型,[0, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:3 + +#### alarm_report_max_count + +**参数说明**:指定告警上报的最大次数。 + +**取值范围**:非负整型,[1, 2592000]。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### instance_keep_heartbeat_timeout + +**参数说明**:cm_agent会定期检测实例状态并上报给cm_server,若实例状态长时间无法成功检测,累积次数超出该数值,则cm_server将下发命令给agent重启该实例。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:40 + +#### az_switchover_threshold + +**参数说明**:若一个AZ内节点分片的故障率(故障的节点分片数 / 总节点分片数 * 100%)超过该数值,则会触发AZ自动切换。 + +**取值范围**:整型,[1, 100]。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:100 + +#### az_check_and_arbitrate_interval + +**参数说明**:当某个AZ状态不正常时,会触发AZ自动切换,该参数是检测AZ状态的时间间隔。 + +**取值范围**:整型,[1, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:2 + +#### az_connect_check_interval + +**参数说明**:定时检测AZ间的网络连接,该参数表示连续两次检测之间的间隔时间。 + +**取值范围**:整型,[1, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:60 + +#### az_connect_check_delay_time + +**参数说明**:每次检测AZ间的网络连接时有多次重试,该参数表示两次重试之间的延迟时间**。** + +**取值范围**:整型,[1, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:150 + +#### cmserver_demote_delay_on_etcd_fault + +**参数说明**:因为etcd不健康而导致cm_server从主降为备的时间间隔**。** + +**取值范围**:整型,[1, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:8 + +#### instance_phony_dead_restart_interval + +**参数说明**:当数据库实例僵死时,会被cm_agent重启,相同的实例连续因僵死被杀时,其间隔时间不能小于该参数数值,否则cm_agent不会下发命令**。** + +**取值范围**:整型,[1800, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:21600 + +#### enable_transaction_read_only + +**参数说明**:控制数据库是否为只读模式开关。 + +**取值范围**:布尔型,有效值有on,off,true,false,yes,no,1,0。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:on + +#### datastorage_threshold_check_interval + +**参数说明**:检测磁盘占用的时间间隔。间隔时间由用户指定,表示检测一次磁盘的间隔时间。 + +**取值范围**:整型,[1, 2592000],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:10 + +#### datastorage_threshold_value_check + +**参数说明**:设置数据库只读模式的磁盘占用阈值,当数据目录所在磁盘占用超过这个阈值,自动将数据库设置为只读模式。 + +**取值范围**:整型,[1, 99]。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:85 + +#### max_datastorage_threshold_check + +**参数说明**:设置磁盘使用率的最大检测间隔时间。当用户手动修改只读模式参数后,会自动在指定间隔时间后开启磁盘检测操作。 + +**取值范围**:整型,[1, 2592000],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:43200 + +#### enable_az_auto_switchover + +**参数说明**:AZ自动切换开关,若打开,则表示允许cm_server自动切换AZ。否则当发生节点故障等情况时,即使当前AZ已经不再可用,也不会自动切换到其他AZ上,除非手动执行切换命令。 + +**取值范围**:非负整型,0或1,0:开关关闭,1:开关打开。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### cm_krb_server_keyfile + +**参数说明**:kerberos服务端key文件所在位置,需要配置为绝对路径。该文件通常为${GAUSSHOME}/kerberos路径下,以keytab格式结尾,文件名与集群运行所在用户名相同。与上述cm_auth_method参数是配对的,当cm_auth_method参数修改为gss时,该参数也必须配置为正确路径,否则将影响集群状态。通过cm_ctl设置绝对路径时需要将路径用”把路径包含起来,例如:cm_ctl set --param --server -k cm_krb_server_keyfile=“'/krb/dir'“。 + +**取值范围**:字符串类型,修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:${GAUSSHOME}/kerberos/{UserName}.keytab,默认值无法生效,仅作为提示。 + +#### switch_rto + +**参数说明**:cm_server强起逻辑等待时延。在force_promote被置为1时,当集群的某一分片处于无主状态开始计时,等待该延迟时间后开始执行强起逻辑。 + +**取值范围**:整型,[60, 2147483647],单位:秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:600 + +#### force_promote + +**参数说明**:cm_server是否打开强起逻辑(指集群状态为Unknown的时候以丢失部分数据为代价保证集群基本功能可用)的开关。0代表功能关闭,1代表功能开启。 + +**取值范围**:整型,[0, 1]。在cm_server上修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:0 + +#### backup_open + +**参数说明**:灾备集群设置,开启后CM按照灾备集群模式运行。 + +**取值范围**:整型,[0, 1]。修改后需要重启cm_server才能生效。非灾备集群不能开启该参数。参数修改请参考[表 set cm参数](#table9)进行设置。 + +- 0表示关闭。 +- 1表示开启 + +**默认值**:0 + +#### enable_dcf + +**参数说明**:DCF模式开关。 + +**取值范围**:布尔型。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +- on、yes、true、1:表示启用dcf。 +- off、no、false、0:表示不启用dcf。 + +**默认值**:off + +#### ddb_type + +**参数说明**:ETCD,DCC模式切换开关。 + +**取值范围**:整型。0:ETCD;1:DCC。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** +> +> MogDB仅支持DCC模式。 + +#### enable_ssl + +**参数说明**:ssl证书开关。 + +**取值范围**:布尔型。打开后使用ssl证书加密通信。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**: + +- on、yes、true、1:表示启用ssl。 +- off、no、false、0:表示不启用ssl。 +- **默认值**:off + +> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-notice.gif) **须知:** 出于安全性考虑,建议不要关闭该配置。关闭后cm将**不使用**加密通信,所有信息明文传播,可能带来窃听、篡改、冒充等安全风险。 + +#### ssl_cert_expire_alert_threshold + +**参数说明**:ssl证书过期告警时间。 + +**取值范围**:整型,[7, 180],单位:天。证书过期时间少于该时间时,上报证书即将过期告警。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:90 + +#### ssl_cert_expire_check_interval + +**参数说明**:ssl证书过期检测周期。 + +**取值范围**:整型,[0, 2147483647],单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:86400 + +#### ddb_log_level + +**参数说明**:设置DDB日志级别。 + +关闭日志:“NONE”,NONE表示关闭日志打印,不能与以下日志级别混合使用。 + +开启日志:“RUN_ERR|RUN_WAR|RUN_INF|DEBUG_ERR|DEBUG_WAR|DEBUG_INF|TRACE|PROFILE|OPER”日志级别可以从上述字符串中选取字符串并使用竖线组合使用,不能配置空串。 + +**取值范围**:字符串,RUN_ERR|RUN_WAR|RUN_INF|DEBUG_ERR|DEBUG_WAR|DEBUG_INF|TRACE|PROFILE|OPER。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:RUN_ERR|RUN_WAR|DEBUG_ERR|OPER|RUN_INF|PROFILE + +#### ddb_log_backup_file_count + +**参数说明**:最大保存日志文件个数。 + +**取值范围**:整型,[1, 100]。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:10 + +#### ddb_max_log_file_size + +**参数说明**:单条日志最大字节数。 + +**取值范围**:字符串,长度最大为1024,[1M, 1000M]。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:10M + +#### ddb_log_suppress_enable + +**参数说明**:是否开启日志抑制功能。 + +**取值范围**:整型,0:关闭; 1:开启。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:1 + +#### ddb_election_timeout + +**参数说明**:DCC 选举超时时间。 + +**取值范围**:整型,[1, 600], 单位:秒。修改后可以reload生效,参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:3 + +#### coordinator_heartbeat_timeout + +**参数说明**:节点故障自动剔除心跳超时时间。设置后立即生效,不需要重启cm_server。该参数设置为0,则节点故障后不会自动剔除。 + +**取值范围**:整型,单位为秒。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:25 + +#### cluster_starting_aribt_delay + +**参数说明**:cm_server在集群启动阶段,等待节点静态主升主的时间。 + +**取值范围**:整型,单位为秒。修改后需要重启cm_server才能生效。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:180 + +#### enable_e2e_rto + +**参数说明**:端到端RTO开关,开启后僵死检测周期及网络检测超时时间将缩短,CM可以达到端到端RTO指标(单实例故障RTO<=10s,叠加故障RTO<=30s)。 + +**取值范围**:整型,[0, 1]。1表示开启,0表示关闭。参数修改请参考[表 set cm参数](#table9)进行设置。 + +**默认值**:0 \ No newline at end of file diff --git a/product/zh/docs-mogdb/v3.0/toc.md b/product/zh/docs-mogdb/v3.0/toc.md index 6da0064c..fce3b328 100644 --- a/product/zh/docs-mogdb/v3.0/toc.md +++ b/product/zh/docs-mogdb/v3.0/toc.md @@ -1434,7 +1434,9 @@ + [pssh](/reference-guide/tool-reference/tools-used-in-the-internal-system/27-pssh.md) + [pscp](/reference-guide/tool-reference/tools-used-in-the-internal-system/28-pscp.md) + [transfer.py](/reference-guide/tool-reference/tools-used-in-the-internal-system/29-transfer.py.md) + + [统一数据库管理工具](/reference-guide/tool-reference/unified-database-management-tool.md) + [FAQ](/reference-guide/tool-reference/FAQ.md) + + [MogDB可运行脚本功能说明](/reference-guide/tool-reference/functions-of-mogdb-executable-scripts.md) + [gs_collector工具支持收集的系统表和视图列表](/reference-guide/tool-reference/system-catalogs-and-views-supported-by-gs_collector.md) + 插件 + [dblink](/reference-guide/oracle-plugins/dblink-user-guide.md) diff --git a/product/zh/docs-mogdb/v3.0/toc_parameters-and-tools.md b/product/zh/docs-mogdb/v3.0/toc_parameters-and-tools.md index ce20f025..4db6adb8 100644 --- a/product/zh/docs-mogdb/v3.0/toc_parameters-and-tools.md +++ b/product/zh/docs-mogdb/v3.0/toc_parameters-and-tools.md @@ -376,5 +376,7 @@ + [pssh](./reference-guide/tool-reference/tools-used-in-the-internal-system/27-pssh.md) + [pscp](./reference-guide/tool-reference/tools-used-in-the-internal-system/28-pscp.md) + [transfer.py](./reference-guide/tool-reference/tools-used-in-the-internal-system/29-transfer.py.md) - + [FAQ](./reference-guide/tool-reference/FAQ.md) + + [统一数据库管理工具](/reference-guide/tool-reference/unified-database-management-tool.md) + + [FAQ](/reference-guide/tool-reference/FAQ.md) + + [MogDB可运行脚本功能说明](/reference-guide/tool-reference/functions-of-mogdb-executable-scripts.md) + [gs_collector工具支持收集的系统表和视图列表](./reference-guide/tool-reference/system-catalogs-and-views-supported-by-gs_collector.md) -- Gitee From 1998b9cc770a965bfbe60f40e200205bf8ee4b5a Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Thu, 9 Jun 2022 14:30:10 +0800 Subject: [PATCH 5/9] fix(mogdb):fix issue #I5BBAP --- .../supported-data-types/1-numeric-data-types.md | 2 +- .../supported-data-types/1-numeric-data-types.md | 2 +- .../supported-data-types/1-numeric-data-types.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/product/en/docs-mogdb/v2.1/reference-guide/supported-data-types/1-numeric-data-types.md b/product/en/docs-mogdb/v2.1/reference-guide/supported-data-types/1-numeric-data-types.md index 702fcf53..f088c948 100644 --- a/product/en/docs-mogdb/v2.1/reference-guide/supported-data-types/1-numeric-data-types.md +++ b/product/en/docs-mogdb/v2.1/reference-guide/supported-data-types/1-numeric-data-types.md @@ -18,7 +18,7 @@ Table 1 lists all available types. For digit operators and related built-in func | INTEGER | Typical choice for integers, also called INT4 | 4 bytes | -2,147,483,648 to +2,147,483,647 | | BINARY_INTEGER | Alias of INTEGER. | 4 bytes | -2,147,483,648 to +2,147,483,647 | | BIGINT | Big integer, also called INT8 | 8 bytes | -9,223,372,036,854,775,808 to +9,223,372,036,854,775,807 | -| int16 | A 16-byte certificate cannot be used to create tables. | 16 bytes | -170,141,183,460,469,231,731,687,303,715,884,105,728 to +170,141,183,460,469,231,731,687,303,715,884,105,727 | +| int16 | A large range of 16-bytes integer, cannot be used to create tables | 16 bytes | -170,141,183,460,469,231,731,687,303,715,884,105,728 to +170,141,183,460,469,231,731,687,303,715,884,105,727 | Example: diff --git a/product/en/docs-mogdb/v3.0/reference-guide/supported-data-types/1-numeric-data-types.md b/product/en/docs-mogdb/v3.0/reference-guide/supported-data-types/1-numeric-data-types.md index 702fcf53..11606522 100644 --- a/product/en/docs-mogdb/v3.0/reference-guide/supported-data-types/1-numeric-data-types.md +++ b/product/en/docs-mogdb/v3.0/reference-guide/supported-data-types/1-numeric-data-types.md @@ -18,7 +18,7 @@ Table 1 lists all available types. For digit operators and related built-in func | INTEGER | Typical choice for integers, also called INT4 | 4 bytes | -2,147,483,648 to +2,147,483,647 | | BINARY_INTEGER | Alias of INTEGER. | 4 bytes | -2,147,483,648 to +2,147,483,647 | | BIGINT | Big integer, also called INT8 | 8 bytes | -9,223,372,036,854,775,808 to +9,223,372,036,854,775,807 | -| int16 | A 16-byte certificate cannot be used to create tables. | 16 bytes | -170,141,183,460,469,231,731,687,303,715,884,105,728 to +170,141,183,460,469,231,731,687,303,715,884,105,727 | +| int16 | A large range of 16-bytes integer, cannot be used to create tables. | 16 bytes | -170,141,183,460,469,231,731,687,303,715,884,105,728 to +170,141,183,460,469,231,731,687,303,715,884,105,727 | Example: diff --git a/product/zh/docs-mogdb/v2.1/reference-guide/supported-data-types/1-numeric-data-types.md b/product/zh/docs-mogdb/v2.1/reference-guide/supported-data-types/1-numeric-data-types.md index 92ed639e..e588a44a 100644 --- a/product/zh/docs-mogdb/v2.1/reference-guide/supported-data-types/1-numeric-data-types.md +++ b/product/zh/docs-mogdb/v2.1/reference-guide/supported-data-types/1-numeric-data-types.md @@ -18,7 +18,7 @@ date: 2021-04-06 | INTEGER | 常用的整数,别名为INT4。 | 4字节 | -2,147,483,648 ~ +2,147,483,647 | | BINARY_INTEGER | 常用的整数INTEGER的别名。 | 4字节 | -2,147,483,648 ~ +2,147,483,647 | | BIGINT | 大范围的整数,别名为INT8。 | 8字节 | -9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807 | -| int16 | 十六字节的大范围证书,目前不支持用户用于建表等使用。 | 16字节 | -170,141,183,460,469,231,731,687,303,715,884,105,728 ~ +170,141,183,460,469,231,731,687,303,715,884,105,727 | +| int16 | 十六字节的大范围整数,目前不支持用户用于建表等使用。 | 16字节 | -170,141,183,460,469,231,731,687,303,715,884,105,728 ~ +170,141,183,460,469,231,731,687,303,715,884,105,727 | 示例: -- Gitee From 5f6951c02546dde3797954c0fb9d6ee97994ed8a Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Thu, 9 Jun 2022 14:55:09 +0800 Subject: [PATCH 6/9] =?UTF-8?q?update(mogdb):gs=5Finstall=E6=8F=92?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gs_install_plugin.md | 263 ++++++++++-------- .../gs_install_plugin_local.md | 245 +++++++++------- 2 files changed, 299 insertions(+), 209 deletions(-) diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_install_plugin.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_install_plugin.md index 18c56c51..19634995 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_install_plugin.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_install_plugin.md @@ -11,157 +11,200 @@ date: 2021-11-29 MogDB提供了gs_install_plugin工具用于安装插件,目前支持安装的插件包括pg_repack、pg_trgm、dblink、wal2json、orafce、pg_bulkload、pg_prewarm。本工具适用于一主多备部署的MogDB。 -  - -## 前提条件 - -已完成MogDB一主多备部署。 - -  - ## 语法 ``` -gs_install_plugin [-h] [-X XML] [--all] [--dblink] [--pg_trgm] [--wal2json] [--pg_repack] [--orafce] [--pg_bulkload] [--pg_prewarm] [--plugins PLUGINS [PLUGINS ...]] +gs_install_plugin [-h] [-X XML] [-p] [--all] [--force] [--plugins] [--PLUGIN_NAME] [--debug] ``` -  - ## 参数说明 -- -h +- -h, --help 显示帮助信息 - -X - 必填参数,后跟clusterconfig.xml配置文件的路径 + 指定xml文件路径 + +- -p + + 指定plugins安装包位置,默认在$GPHOME/script/static寻找plugins安装包 - --all 安装全部插件 -- --plugins - - 可安装多个插件,如:--plugins dblink pg_repack wal2json +- --force -- --dblink + 指定覆盖旧的插件 - 只安装dblink +- --plugins -- --pg_trgm + 可安装多个插件,--plugins后跟插件名 - 只安装pg_trgm +- --PLUGIN_NAME -- --wal2json + 指定安装某一个插件,如:--dblink - 只安装wal2json +- --debug -- --pg_repack + 输出debug信息 - 只安装pg_repack +> **注意**:在不指定安装某一个插件的情况下,默认安装全部插件 -- --orafce +## 支持安装的插件列表 - 只安装orafce +| 插件名 | 用途 | +| ----------- | ------------------------------------------------------------ | +| dblink | 提供跨数据库访问能力 | +| pg_trgm | 提供函数和操作符测定字母数字文本基于三元模型匹配的相似性, 还有支持快速搜索相似字符串的索引操作符类 | +| wal2json | 将逻辑日志文件输出为 JSON 格式 | +| pg_repack | 在线重建表和索引的扩展。它会在数据库中建立一个和需要清理的目标表一样的临时表,将目标表中的数据 COPY 到临时表,并在临时表上建立与目标表一样的索引,然后通过重命名的方式用临时表替换目标表。 | +| orafce | 用于 Oracle 迁移到 MogDB 的兼容性 | +| pg_bulkload | 用于 MogDB 的高速数据加载工具,相比copy命令。最大的优势就是速度,优在跳过 shared buffer,wal buffer 直接写文件。 | +| pg_prewarm | 可以用于在系统重启时,手动加载经常访问的表到操作系统的cache或MogDB的shared buffer,从而减少检查系统重启对应用的影响 | +| whale | Oracle 兼容性插件,可以支持 Oracle 的特定函数、语法及存储过程等。(目前只有函数,其它还处于开发中) | +| dolphin | MySQL 兼容性插件,可以支持 MySQL 的特定语法与行为,如 MySQL 中,sql mode 未开启 strict mode 的对非空列的处理等特性。 | -- --pg_bulkload +## 安装示例 - 只安装pg_bulkload +1. 插件包放置位置 -  + 数据库未安装情况下,进入数据库安装目录下的script文件夹: -## 安装示例 + ```shell + cd /opt/software/mogdb/script/ + ``` -1. 进入数据库安装目录下的script文件夹: + 数据库已经安装的情况下 - ```bash - cd /opt/software/mogdb/script/ + ```shell + su - omm + cd $GPHOME/script/ ``` 2. 创建static文件夹: - ```bash - mkdir -p static - ``` + ```bash + mkdir -p static + ``` - > 注意:文件夹名称请勿更改。 + > 注意:文件夹名称请勿更改。 3. 访问[MogDB官网下载页面](https://www.mogdb.io/downloads/mogdb),根据您的操作系统及CPU架构下载对应版本的插件,并将插件放入static文件夹下。 -4. 权限设置 - - ``` - chmod -R 755 /opt/software/mogdb/script - chown -R omm:dbgrp /opt/software/mogdb/script - ``` - -5. 配置clusterconfig.xml配置文件,这里以一主一备配置文件作为示例,`backIp1s`为节点ip,`dataNode1`为数据目录,该程序默认获取到的数据目录为第一个节点的数据目录位置。 - - ```xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ``` - -6. 切换到omm用户 - - ``` - su - omm - ``` - -7. 安装全部插件 - - ```bash - /opt/software/mogdb/script/gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --all - - # 安装成功时回显如下: - SUCCESS: dblink. - SUCCESS: pg_trgm. - SUCCESS: pg_repack. - SUCCESS: wal2json. - SUCCESS: orafce. - SUCCESS: pg_bulkload. - SUCCESS: pg_prewarm. - ``` +4. 安装插件 + + 下面示例中假设使用的XML文件配置路径为:/opt/software/mogdb/clusterconfig.xml + + - **安装全部插件** + + 当不通过 `-p` 指定插件安装包路径时,默认在 `$GPHOME/script/static` 目录下获取 + + ```shell + # 不指定-p + gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --all + # gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml 等价于 gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --all + ``` + + 输出如下: + + ```shell + [omm@hostname ~]$ gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --all + SUCCESS: pg_trgm + SUCCESS: dblink + SUCCESS: orafce + SUCCESS: wal2json + SUCCESS: pg_repack + SUCCESS: pg_bulkload + SUCCESS: pg_prewarm + SUCCESS: dolphin + SUCCESS: whale + SUCCESS: postgis + ``` + + - **指定插件安装包路径安装** + + ```shell + # 指定-p 和 --force + gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml -p /opt/mogdb/tools/script/static/Plugins-3.0.0-CentOS-x86_64.tar.gz --all --force + ``` + + 输出如下: + + ```shell + [omm@hostname ~]$ gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml -p /opt/mogdb/tools/script/static/Plugins-3.0.0-CentOS-x86_64.tar.gz --all --force + SUCCESS: pg_trgm + SUCCESS: dblink + SUCCESS: orafce + SUCCESS: wal2json + SUCCESS: pg_repack + SUCCESS: pg_bulkload + SUCCESS: pg_prewarm + SUCCESS: dolphin + SUCCESS: whale + SUCCESS: postgis + ``` + + - **安装部分插件** + + ```shell + gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --plugins dblink pg_trgm + ``` + + 输出如下: + + 这里因为之前安装了全部插件,所以要是重新进行插件安装的话,检测到之前的插件文件存在,会提示 `Warning`,默认不会覆盖掉已安装的插件,若需覆盖已安装的插件,需指定 `--force` 参数 + + ```shell + [omm@hostname ~]$ gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --plugins dblink pg_trgm + Warning: (plugin: pg_trgm) file /opt/mogdb/app/lib/postgresql/pg_trgm.so already exists + Warning: (plugin: pg_trgm) file /opt/mogdb/app/share/postgresql/extension/pg_trgm.control already exists + Warning: (plugin: pg_trgm) file /opt/mogdb/app/share/postgresql/extension/pg_trgm--1.0.sql already exists + Warning: (plugin: pg_trgm) file /opt/mogdb/app/share/postgresql/extension/pg_trgm--unpackaged--1.0.sql already exists + SUCCESS: pg_trgm + Warning: (plugin: dblink) file /opt/mogdb/app/lib/postgresql/dblink.so already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink.control already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink--1.0.sql already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink--unpackaged--1.0.sql already exists + SUCCESS: dblink + ``` + + - **安装单个插件** + + ```shell + gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --dblink --force + ``` + + 输出如下: + + ```shell + [omm@hostname ~]$ gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --dblink --force + SUCCESS: dblink + ``` + + - **调试模式** + + ```shell + gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --dblink --debug + ``` + + 输出如下: + + ```shell + [omm@hostname ~]$ gs_install_plugin -X /opt/software/mogdb/clusterconfig.xml --dblink --debug + use xml file: /opt/software/mogdb/clusterconfig.xml + use plugin package file: /opt/mogdb/tools/script/static/Plugins-*.tar.gz + local mode is False + deconpress plugin package to /opt/mogdb/tools/script/static/plugins/ + make common dirs + Warning: (plugin: dblink) file /opt/mogdb/app/lib/postgresql/dblink.so already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink.control already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink--1.0.sql already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink--unpackaged--1.0.sql already exists + SUCCESS: dblink + ``` ## 相关页面 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_install_plugin_local.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_install_plugin_local.md index 291a1ec4..2c6f882a 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_install_plugin_local.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_install_plugin_local.md @@ -11,74 +11,75 @@ date: 2022-01-18 MogDB提供了gs_install_plugin_local工具用于安装插件,目前支持安装的插件包括pg_repack、pg_trgm、dblink、wal2json、orafce、pg_bulkload、pg_prewarm。本工具适用于单机部署的MogDB。 -  - -## 前提条件 - -已完成MogDB单机部署。 - -  - ## 语法 ``` -gs_install_plugin_local [-h] [-X XML] [--all] [--dblink] [--pg_trgm] [--wal2json] [--pg_repack] [--orafce] [--pg_bulkload] [--pg_prewarm] [--plugins PLUGINS [PLUGINS ...]] +gs_install_plugin_local [-h] [-p] [--all] [--force] [--plugins] [--PLUGIN_NAME] [--debug] ``` -  - ## 参数说明 -- -h +- -h, --help 显示帮助信息 -- -X +- -p - 必填参数,后跟clusterconfig.xml配置文件的路径 + 指定plugins安装包位置,默认在$GPHOME/script/static寻找plugins安装包 - --all 安装全部插件 -- --plugins - - 可安装多个插件,如:--plugins dblink pg_repack wal2json - -- --dblink - - 只安装dblink +- --force -- --pg_trgm + 指定覆盖旧的插件 - 只安装pg_trgm - -- --wal2json +- --plugins - 只安装wal2json + 可安装多个插件,--plugins后跟插件名 -- --pg_repack +- --PLUGIN_NAME - 只安装pg_repack + 指定安装某一个插件,如:--dblink -- --orafce +- --debug - 只安装orafce + 输出debug信息 -- --pg_bulkload +> **注意**:在不指定安装某一个插件的情况下,默认安装全部插件 - 只安装pg_bulkload +## 支持安装的插件列表 -  +| 插件名 | 用途 | +| ----------- | ------------------------------------------------------------ | +| dblink | 提供跨数据库访问能力 | +| pg_trgm | 提供函数和操作符测定字母数字文本基于三元模型匹配的相似性, 还有支持快速搜索相似字符串的索引操作符类 | +| wal2json | 将逻辑日志文件输出为 JSON 格式 | +| pg_repack | 在线重建表和索引的扩展。它会在数据库中建立一个和需要清理的目标表一样的临时表,将目标表中的数据 COPY 到临时表,并在临时表上建立与目标表一样的索引,然后通过重命名的方式用临时表替换目标表。 | +| orafce | 用于 Oracle 迁移到 MogDB 的兼容性 | +| pg_bulkload | 用于 MogDB 的高速数据加载工具,相比copy命令。最大的优势就是速度,优在跳过 shared buffer,wal buffer 直接写文件。 | +| pg_prewarm | 可以用于在系统重启时,手动加载经常访问的表到操作系统的cache或MogDB的shared buffer,从而减少检查系统重启对应用的影响 | +| whale | Oracle 兼容性插件,可以支持 Oracle 的特定函数、语法及存储过程等。(目前只有函数,其它还处于开发中) | +| dolphin | MySQL 兼容性插件,可以支持 MySQL 的特定语法与行为,如 MySQL 中,sql mode 未开启 strict mode 的对非空列的处理等特性。 | ## 安装示例 -1. 进入数据库安装目录下的script文件夹: +1. 插件包放置位置 - ```bash + 数据库未安装情况下,进入数据库安装目录下的script文件夹: + + ```shell cd /opt/software/mogdb/script/ ``` - + + 数据库已经安装的情况下 + + ```shell + su - omm + cd $GPHOME/script/ + ``` + 2. 创建static文件夹: ```bash @@ -89,69 +90,115 @@ gs_install_plugin_local [-h] [-X XML] [--all] [--dblink] [--pg_trgm] [--wal2json 3. 访问[MogDB官网下载页面](https://www.mogdb.io/downloads/mogdb),根据您的操作系统及CPU架构下载对应版本的插件,并将插件放入static文件夹下。 -4. 权限设置 - - ``` - chmod -R 755 /opt/software/mogdb/script - chown -R omm:dbgrp /opt/software/mogdb/script - ``` - -5. 配置clusterconfig.xml配置文件,这里以单节点配置文件作为示例,`backIp1s`为节点ip,`dataNode1`为数据目录,该程序默认获取到的数据目录为第一个节点的数据目录位置。 - - ```xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -6. 切换到omm用户 - - ``` - su - omm - ``` - -7. 安装全部插件 - - ```bash - /opt/software/mogdb/script/gs_install_plugin_local -X /opt/software/mogdb/clusterconfig.xml --all - - # 安装成功时回显如下: - SUCCESS: dblink. - SUCCESS: pg_trgm. - SUCCESS: pg_repack. - SUCCESS: wal2json. - SUCCESS: orafce. - SUCCESS: pg_bulkload. - SUCCESS: pg_prewarm. - ``` +4. 安装插件 + + - **安装全部插件** + + 当不通过 `-p` 指定插件安装包路径时,默认在 `$GPHOME/script/static` 目录下获取 + + ```shell + # 不指定-p + gs_install_plugin_local --all + # gs_install_plugin_local 等价于 gs_install_plugin_local --all + ``` + + 输出如下: + + ```shell + [omm@hostname ~]$ gs_install_plugin_local --all + SUCCESS: pg_trgm + SUCCESS: dblink + SUCCESS: orafce + SUCCESS: wal2json + SUCCESS: pg_repack + SUCCESS: pg_bulkload + SUCCESS: pg_prewarm + SUCCESS: dolphin + SUCCESS: whale + SUCCESS: postgis + ``` + + - **指定插件安装包路径安装** + + ```shell + # 指定-p 和 --force + gs_install_plugin_local -p /opt/mogdb/tools/script/static/Plugins-3.0.0-CentOS-x86_64.tar.gz --all --force + ``` + + 输出如下: + + ```shell + [omm@hostname ~]$ gs_install_plugin_local -p /opt/mogdb/tools/script/static/Plugins-3.0.0-CentOS-x86_64.tar.gz --all --force + SUCCESS: pg_trgm + SUCCESS: dblink + SUCCESS: orafce + SUCCESS: wal2json + SUCCESS: pg_repack + SUCCESS: pg_bulkload + SUCCESS: pg_prewarm + SUCCESS: dolphin + SUCCESS: whale + SUCCESS: postgis + ``` + + - **安装部分插件** + + ```shell + gs_install_plugin_local --plugins dblink pg_trgm + ``` + + 输出如下: + + 这里因为之前安装了全部插件,所以要是重新进行插件安装的话,检测到之前的插件文件存在,会提示 `Warning`,默认不会覆盖掉已安装的插件,若需覆盖已安装的插件,需指定 `--force` 参数 + + ```shell + [omm@hostname ~]$ gs_install_plugin_local --plugins dblink pg_trgm + Warning: (plugin: pg_trgm) file /opt/mogdb/app/lib/postgresql/pg_trgm.so already exists + Warning: (plugin: pg_trgm) file /opt/mogdb/app/share/postgresql/extension/pg_trgm.control already exists + Warning: (plugin: pg_trgm) file /opt/mogdb/app/share/postgresql/extension/pg_trgm--1.0.sql already exists + Warning: (plugin: pg_trgm) file /opt/mogdb/app/share/postgresql/extension/pg_trgm--unpackaged--1.0.sql already exists + SUCCESS: pg_trgm + Warning: (plugin: dblink) file /opt/mogdb/app/lib/postgresql/dblink.so already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink.control already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink--1.0.sql already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink--unpackaged--1.0.sql already exists + SUCCESS: dblink + ``` + + - **安装单个插件** + + ```shell + gs_install_plugin_local --dblink --force + ``` + + 输出如下: + + ```shell + [omm@hostname ~]$ gs_install_plugin_local --dblink --force + SUCCESS: dblink + ``` + + - **调试模式** + + ```shell + gs_install_plugin_local --dblink --debug + ``` + + 输出如下: + + ```shell + [omm@hostname ~]$ gs_install_plugin_local --dblink --debug + use xml file: + use plugin package file: /opt/mogdb/tools/script/static/Plugins-*.tar.gz + local mode is True + deconpress plugin package to /opt/mogdb/tools/script/static/plugins/ + make common dirs + Warning: (plugin: dblink) file /opt/mogdb/app/lib/postgresql/dblink.so already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink.control already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink--1.0.sql already exists + Warning: (plugin: dblink) file /opt/mogdb/app/share/postgresql/extension/dblink--unpackaged--1.0.sql already exists + SUCCESS: dblink + ``` ## 相关页面 -- Gitee From b5994de45a6838f4d14d760f1a29c6095f6d7c19 Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Thu, 9 Jun 2022 15:07:31 +0800 Subject: [PATCH 7/9] fix(mogdb):fix issue #I5B6VB --- .../v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md | 2 +- .../v3.0/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md | 2 +- .../v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md | 2 +- .../v3.0/reference-guide/sql-syntax/CREATE-FOREIGN-TABLE.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md b/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md index ec63e359..a976e336 100644 --- a/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md +++ b/product/en/docs-mogdb/v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md @@ -140,7 +140,7 @@ column_constraint ::= [ CONSTRAINT constraint_name ] This is a Boolean option. If it is true, the value of the declared field cannot be an empty string. This option is the same as the **FORCE_NOT_NULL** option of the **COPY** statement. -> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **NOTE:** For details about how to use **file_fdw**, see [file_fdw](file_fdw). +> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **NOTE:** For details, please see [file_fdw](file_fdw), [oracle_fdw](1-oracle_fdw), [mysql_fdw](2-mysql_fdw), [postgres_fdw](3-postgres_fdw). ## Helpful Links diff --git a/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md b/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md index ec63e359..a976e336 100644 --- a/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md +++ b/product/en/docs-mogdb/v3.0/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md @@ -140,7 +140,7 @@ column_constraint ::= [ CONSTRAINT constraint_name ] This is a Boolean option. If it is true, the value of the declared field cannot be an empty string. This option is the same as the **FORCE_NOT_NULL** option of the **COPY** statement. -> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **NOTE:** For details about how to use **file_fdw**, see [file_fdw](file_fdw). +> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **NOTE:** For details, please see [file_fdw](file_fdw), [oracle_fdw](1-oracle_fdw), [mysql_fdw](2-mysql_fdw), [postgres_fdw](3-postgres_fdw). ## Helpful Links diff --git a/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md b/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md index 52147fdf..4b6f2d21 100644 --- a/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md +++ b/product/zh/docs-mogdb/v2.1/reference-guide/sql-syntax/47-CREATE-FOREIGN-TABLE.md @@ -140,7 +140,7 @@ column_constraint ::= [ CONSTRAINT constraint_name ] 这是一个布尔选项。如果为真,则声明字段的值不应该匹配空字符串(也就是, 文件级别null选项)。与COPY的 FORCE_NOT_NULL选项里的字段相同。 - > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** file_fdw更多使用请参见[file_fdw](file_fdw)。 + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 更多使用说明请参见[file_fdw](file_fdw)、[oracle_fdw](1-oracle_fdw)、[mysql_fdw](2-mysql_fdw)、[postgres_fdw](3-postgres_fdw)。 ## 相关链接 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-FOREIGN-TABLE.md b/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-FOREIGN-TABLE.md index 1bb69c4e..cac6c5b9 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-FOREIGN-TABLE.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/sql-syntax/CREATE-FOREIGN-TABLE.md @@ -139,7 +139,7 @@ column_constraint ::= [ CONSTRAINT constraint_name ] 这是一个布尔选项。如果为真,则声明字段的值不应该匹配空字符串(也就是, 文件级别null选项)。与COPY的 FORCE_NOT_NULL选项里的字段相同。 - > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** file_fdw更多使用请参见[file_fdw](file_fdw)。 + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 更多使用说明请参见[file_fdw](file_fdw)、[oracle_fdw](1-oracle_fdw)、[mysql_fdw](2-mysql_fdw)、[postgres_fdw](3-postgres_fdw)。 ## 相关链接 -- Gitee From 9aaa164be05cd79b5940b26c8e9fc450c2f814a2 Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Thu, 9 Jun 2022 15:21:38 +0800 Subject: [PATCH 8/9] fix(mogdb):fix issue #I5B75J --- ...time-processing-functions-and-operators.md | 40 +++++++++---------- ...time-processing-functions-and-operators.md | 40 +++++++++---------- ...time-processing-functions-and-operators.md | 36 ++++++++--------- ...time-processing-functions-and-operators.md | 36 ++++++++--------- 4 files changed, 76 insertions(+), 76 deletions(-) diff --git a/product/en/docs-mogdb/v2.1/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md b/product/en/docs-mogdb/v2.1/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md index d59b90cd..05e0348c 100644 --- a/product/en/docs-mogdb/v2.1/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md +++ b/product/en/docs-mogdb/v2.1/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md @@ -21,24 +21,24 @@ date: 2021-04-20 | Operator | Example | | -------- | ------------------------------------------------------------ | -| + | `mogdb=# SELECT date '2001-09-28' + integer '7' AS RESULT; result 2001-10-05 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' + interval '1 hour' AS RESULT; result 2001-09-28 01:00:00 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' + time '03:00' AS RESULT; result 2001-09-28 03:00:00 (1 row)` | -| | `mogdb=# SELECT interval '1 day' + interval '1 hour' AS RESULT; result 1 day 01:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-28 01:00' + interval '23 hours' AS RESULT; result 2001-09-29 00:00:00 (1 row)` | -| | `mogdb=# SELECT time '01:00' + interval '3 hours' AS RESULT; result 04:00:00 (1 row)` | -| - | `mogdb=# SELECT date '2001-10-01' - date '2001-09-28' AS RESULT; result 3 days (1 row)` | -| | `mogdb=# SELECT date '2001-10-01' - integer '7' AS RESULT; result 2001-09-24 00:00:00 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' - interval '1 hour' AS RESULT; result 2001-09-27 23:00:00 (1 row)` | -| | `mogdb=# SELECT time '05:00' - time '03:00' AS RESULT; result 02:00:00 (1 row)` | -| | `mogdb=# SELECT time '05:00' - interval '2 hours' AS RESULT; result 03:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-28 23:00' - interval '23 hours' AS RESULT; result 2001-09-28 00:00:00 (1 row)` | -| | `mogdb=# SELECT interval '1 day' - interval '1 hour' AS RESULT; result 23:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' AS RESULT; result 1 day 15:00:00 (1 row)` | -| * | `mogdb=# SELECT 900 * interval '1 second' AS RESULT; result 00:15:00 (1 row)` | -| | `mogdb=# SELECT 21 * interval '1 day' AS RESULT; result 21 days (1 row)` | -| | `mogdb=# SELECT double precision '3.5' * interval '1 hour' AS RESULT; result 03:30:00 (1 row)` | -| / | `mogdb=# SELECT interval '1 hour' / double precision '1.5' AS RESULT; result 00:40:00 (1 row)` | +| + | mogdb=# SELECT date '2001-09-28' + integer '7' AS RESULT;
result
-----------------
2001-10-05
(1 row) | +| | mogdb=# SELECT date '2001-09-28' + interval '1 hour' AS RESULT;
result
-----------------------------
2001-09-28 01:00:00
(1 row) | +| | mogdb=# SELECT date '2001-09-28' + time '03:00' AS RESULT;
result
-------------------------------
2001-09-28 03:00:00
(1 row) | +| | mogdb=# SELECT interval '1 day' + interval '1 hour' AS RESULT;
result
----------------------
1 day 01:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-28 01:00' + interval '23 hours' AS RESULT;
result
------------------------------
2001-09-29 00:00:00
(1 row) | +| | mogdb=# SELECT time '01:00' + interval '3 hours' AS RESULT;
result
-------------
04:00:00
(1 row) | +| - | mogdb=# SELECT date '2001-10-01' - date '2001-09-28' AS RESULT;
result
----------
3days
(1 row) | +| | mogdb=# SELECT date '2001-10-01' - integer '7' AS RESULT;
result
-------------------------------
2001-09-24 00:00:00
(1 row) | +| | mogdb=# SELECT date '2001-09-28' - interval '1 hour' AS RESULT;
result
--------------------------------
2001-09-27 23:00:00
(1 row) | +| | mogdb=# SELECT time '05:00' - time '03:00' AS RESULT;
result
-------------
02:00:00
(1 row) | +| | mogdb=# SELECT time '05:00' - interval '2 hours' AS RESULT;
result
-------------
03:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-28 23:00' - interval '23 hours' AS RESULT;
result
-------------------------------
2001-09-28 00:00:00
(1 row) | +| | mogdb=# SELECT interval '1 day' - interval '1 hour' AS RESULT;
result
-------------
23:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' AS RESULT;
result
---------------------
1 day 15:00:00
(1 row) | +| * | mogdb=# SELECT 900 * interval '1 second' AS RESULT;
result
--------------
00:15:00
(1 row) | +| | mogdb=# SELECT 21 * interval '1 day' AS RESULT;
result
-------------
21 days
(1 row) | +| | mogdb=# SELECT double precision '3.5' * interval '1 hour' AS RESULT;
result
--------------
03:30:00
(1 row) | +| / | mogdb=# SELECT interval '1 hour' / double precision '1.5' AS RESULT;
result
-------------
00:40:00
(1 row) | ## Time/Date Functions @@ -794,7 +794,7 @@ date: 2021-04-20 > ``` > > **CURRENT_TIME** and **CURRENT_TIMESTAMP** transfer values with time zones. The values of **LOCALTIME** and **LOCALTIMESTAMP** do not contain time zone information. **CURRENT_TIME**, **CURRENT_TIMESTAMP**, **LOCALTIME**, and **LOCALTIMESTAMP** can be optionally attached with a precision parameter, which rounds the second field of the result to the specified decimal place. If there is no precision parameter, the result is given the full precision that can be obtained. - > Because these functions all return results by the start time of the current transaction, their values do not change throughout the transaction. We think this is a feature with the purpose to allow a transaction to have a consistent concept at the "current" time, so that multiple modifications in the same transaction can maintain the same timestamp. + > Because these functions all return results by the start time of the current transaction, their values do not change throughout the transaction. We think this is a feature with the purpose to allow a transaction to have a consistent concept at the "current" time, so that multiple modifications in the same transaction can maintain the same timestamp. > > 2. The following APIs return the start time of the current statement: > @@ -803,7 +803,7 @@ date: 2021-04-20 > ``` > > **transaction_timestamp()** is equivalent to **CURRENT_TIMESTAMP**, and its name clearly reflects its return value. **statement_timestamp()** returns the start time of the current statement (more accurately, the time when the last instruction is received from the client). The return values of **statement_timestamp()** and **transaction_timestamp()** are the same during the execution of the first instruction of a transaction, but may be different in subsequent instructions. - > **now()** is equivalent to **transaction_timestamp()**. + > **now()** is equivalent to **transaction_timestamp()**. > > 3. The following APIs return the actual current time when the function is invoked: > diff --git a/product/en/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md b/product/en/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md index d59b90cd..05e0348c 100644 --- a/product/en/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md +++ b/product/en/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md @@ -21,24 +21,24 @@ date: 2021-04-20 | Operator | Example | | -------- | ------------------------------------------------------------ | -| + | `mogdb=# SELECT date '2001-09-28' + integer '7' AS RESULT; result 2001-10-05 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' + interval '1 hour' AS RESULT; result 2001-09-28 01:00:00 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' + time '03:00' AS RESULT; result 2001-09-28 03:00:00 (1 row)` | -| | `mogdb=# SELECT interval '1 day' + interval '1 hour' AS RESULT; result 1 day 01:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-28 01:00' + interval '23 hours' AS RESULT; result 2001-09-29 00:00:00 (1 row)` | -| | `mogdb=# SELECT time '01:00' + interval '3 hours' AS RESULT; result 04:00:00 (1 row)` | -| - | `mogdb=# SELECT date '2001-10-01' - date '2001-09-28' AS RESULT; result 3 days (1 row)` | -| | `mogdb=# SELECT date '2001-10-01' - integer '7' AS RESULT; result 2001-09-24 00:00:00 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' - interval '1 hour' AS RESULT; result 2001-09-27 23:00:00 (1 row)` | -| | `mogdb=# SELECT time '05:00' - time '03:00' AS RESULT; result 02:00:00 (1 row)` | -| | `mogdb=# SELECT time '05:00' - interval '2 hours' AS RESULT; result 03:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-28 23:00' - interval '23 hours' AS RESULT; result 2001-09-28 00:00:00 (1 row)` | -| | `mogdb=# SELECT interval '1 day' - interval '1 hour' AS RESULT; result 23:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' AS RESULT; result 1 day 15:00:00 (1 row)` | -| * | `mogdb=# SELECT 900 * interval '1 second' AS RESULT; result 00:15:00 (1 row)` | -| | `mogdb=# SELECT 21 * interval '1 day' AS RESULT; result 21 days (1 row)` | -| | `mogdb=# SELECT double precision '3.5' * interval '1 hour' AS RESULT; result 03:30:00 (1 row)` | -| / | `mogdb=# SELECT interval '1 hour' / double precision '1.5' AS RESULT; result 00:40:00 (1 row)` | +| + | mogdb=# SELECT date '2001-09-28' + integer '7' AS RESULT;
result
-----------------
2001-10-05
(1 row) | +| | mogdb=# SELECT date '2001-09-28' + interval '1 hour' AS RESULT;
result
-----------------------------
2001-09-28 01:00:00
(1 row) | +| | mogdb=# SELECT date '2001-09-28' + time '03:00' AS RESULT;
result
-------------------------------
2001-09-28 03:00:00
(1 row) | +| | mogdb=# SELECT interval '1 day' + interval '1 hour' AS RESULT;
result
----------------------
1 day 01:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-28 01:00' + interval '23 hours' AS RESULT;
result
------------------------------
2001-09-29 00:00:00
(1 row) | +| | mogdb=# SELECT time '01:00' + interval '3 hours' AS RESULT;
result
-------------
04:00:00
(1 row) | +| - | mogdb=# SELECT date '2001-10-01' - date '2001-09-28' AS RESULT;
result
----------
3days
(1 row) | +| | mogdb=# SELECT date '2001-10-01' - integer '7' AS RESULT;
result
-------------------------------
2001-09-24 00:00:00
(1 row) | +| | mogdb=# SELECT date '2001-09-28' - interval '1 hour' AS RESULT;
result
--------------------------------
2001-09-27 23:00:00
(1 row) | +| | mogdb=# SELECT time '05:00' - time '03:00' AS RESULT;
result
-------------
02:00:00
(1 row) | +| | mogdb=# SELECT time '05:00' - interval '2 hours' AS RESULT;
result
-------------
03:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-28 23:00' - interval '23 hours' AS RESULT;
result
-------------------------------
2001-09-28 00:00:00
(1 row) | +| | mogdb=# SELECT interval '1 day' - interval '1 hour' AS RESULT;
result
-------------
23:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' AS RESULT;
result
---------------------
1 day 15:00:00
(1 row) | +| * | mogdb=# SELECT 900 * interval '1 second' AS RESULT;
result
--------------
00:15:00
(1 row) | +| | mogdb=# SELECT 21 * interval '1 day' AS RESULT;
result
-------------
21 days
(1 row) | +| | mogdb=# SELECT double precision '3.5' * interval '1 hour' AS RESULT;
result
--------------
03:30:00
(1 row) | +| / | mogdb=# SELECT interval '1 hour' / double precision '1.5' AS RESULT;
result
-------------
00:40:00
(1 row) | ## Time/Date Functions @@ -794,7 +794,7 @@ date: 2021-04-20 > ``` > > **CURRENT_TIME** and **CURRENT_TIMESTAMP** transfer values with time zones. The values of **LOCALTIME** and **LOCALTIMESTAMP** do not contain time zone information. **CURRENT_TIME**, **CURRENT_TIMESTAMP**, **LOCALTIME**, and **LOCALTIMESTAMP** can be optionally attached with a precision parameter, which rounds the second field of the result to the specified decimal place. If there is no precision parameter, the result is given the full precision that can be obtained. - > Because these functions all return results by the start time of the current transaction, their values do not change throughout the transaction. We think this is a feature with the purpose to allow a transaction to have a consistent concept at the "current" time, so that multiple modifications in the same transaction can maintain the same timestamp. + > Because these functions all return results by the start time of the current transaction, their values do not change throughout the transaction. We think this is a feature with the purpose to allow a transaction to have a consistent concept at the "current" time, so that multiple modifications in the same transaction can maintain the same timestamp. > > 2. The following APIs return the start time of the current statement: > @@ -803,7 +803,7 @@ date: 2021-04-20 > ``` > > **transaction_timestamp()** is equivalent to **CURRENT_TIMESTAMP**, and its name clearly reflects its return value. **statement_timestamp()** returns the start time of the current statement (more accurately, the time when the last instruction is received from the client). The return values of **statement_timestamp()** and **transaction_timestamp()** are the same during the execution of the first instruction of a transaction, but may be different in subsequent instructions. - > **now()** is equivalent to **transaction_timestamp()**. + > **now()** is equivalent to **transaction_timestamp()**. > > 3. The following APIs return the actual current time when the function is invoked: > diff --git a/product/zh/docs-mogdb/v2.1/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md b/product/zh/docs-mogdb/v2.1/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md index 41cf8cca..7db33232 100644 --- a/product/zh/docs-mogdb/v2.1/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md +++ b/product/zh/docs-mogdb/v2.1/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md @@ -21,24 +21,24 @@ date: 2021-04-20 | 操作符 | 示例 | | ------ | ------------------------------------------------------------ | -| + | `mogdb=# SELECT date '2001-09-28' + integer '7' AS RESULT; result -------- 2001-10-05 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' + interval '1 hour' AS RESULT; result -------- 2001-09-28 01:00:00 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' + time '03:00' AS RESULT; result -------- 2001-09-28 03:00:00 (1 row)` | -| | `mogdb=# SELECT interval '1 day' + interval '1 hour' AS RESULT; result ------ 1 day 01:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-28 01:00' + interval '23 hours' AS RESULT; result -------- 2001-09-29 00:00:00 (1 row)` | -| | `mogdb=# SELECT time '01:00' + interval '3 hours' AS RESULT; result ---- 04:00:00 (1 row)` | -| - | `mogdb=# SELECT date '2001-10-01' - date '2001-09-28' AS RESULT; result ---- 3 (1 row)` | -| | `mogdb=# SELECT date '2001-10-01' - integer '7' AS RESULT; result -------- 2001-09-24 00:00:00 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' - interval '1 hour' AS RESULT; result -------- 2001-09-27 23:00:00 (1 row)` | -| | `mogdb=# SELECT time '05:00' - time '03:00' AS RESULT; result ---- 02:00:00 (1 row)` | -| | `mogdb=# SELECT time '05:00' - interval '2 hours' AS RESULT; result ---- 03:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-28 23:00' - interval '23 hours' AS RESULT; result -------- 2001-09-28 00:00:00 (1 row)` | -| | `mogdb=# SELECT interval '1 day' - interval '1 hour' AS RESULT; result ---- 23:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' AS RESULT; result ------ 1 day 15:00:00 (1 row)` | -| * | `mogdb=# SELECT 900 * interval '1 second' AS RESULT; result ---- 00:15:00 (1 row)` | -| | `mogdb=# SELECT 21 * interval '1 day' AS RESULT; result ---- 21 days (1 row)` | -| | `mogdb=# SELECT double precision '3.5' * interval '1 hour' AS RESULT; result ---- 03:30:00 (1 row)` | -| / | `mogdb=# SELECT interval '1 hour' / double precision '1.5' AS RESULT; result ---- 00:40:00 (1 row)` | +| + | mogdb=# SELECT date '2001-09-28' + integer '7' AS RESULT;
result
-----------------
2001-10-05
(1 row) | +| | mogdb=# SELECT date '2001-09-28' + interval '1 hour' AS RESULT;
result
-----------------------------
2001-09-28 01:00:00
(1 row) | +| | mogdb=# SELECT date '2001-09-28' + time '03:00' AS RESULT;
result
-------------------------------
2001-09-28 03:00:00
(1 row) | +| | mogdb=# SELECT interval '1 day' + interval '1 hour' AS RESULT;
result
----------------------
1 day 01:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-28 01:00' + interval '23 hours' AS RESULT;
result
------------------------------
2001-09-29 00:00:00
(1 row) | +| | mogdb=# SELECT time '01:00' + interval '3 hours' AS RESULT;
result
-------------
04:00:00
(1 row) | +| - | mogdb=# SELECT date '2001-10-01' - date '2001-09-28' AS RESULT;
result
----------
3days
(1 row) | +| | mogdb=# SELECT date '2001-10-01' - integer '7' AS RESULT;
result
-------------------------------
2001-09-24 00:00:00
(1 row) | +| | mogdb=# SELECT date '2001-09-28' - interval '1 hour' AS RESULT;
result
--------------------------------
2001-09-27 23:00:00
(1 row) | +| | mogdb=# SELECT time '05:00' - time '03:00' AS RESULT;
result
-------------
02:00:00
(1 row) | +| | mogdb=# SELECT time '05:00' - interval '2 hours' AS RESULT;
result
-------------
03:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-28 23:00' - interval '23 hours' AS RESULT;
result
-------------------------------
2001-09-28 00:00:00
(1 row) | +| | mogdb=# SELECT interval '1 day' - interval '1 hour' AS RESULT;
result
-------------
23:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' AS RESULT;
result
---------------------
1 day 15:00:00
(1 row) | +| * | mogdb=# SELECT 900 * interval '1 second' AS RESULT;
result
--------------
00:15:00
(1 row) | +| | mogdb=# SELECT 21 * interval '1 day' AS RESULT;
result
-------------
21 days
(1 row) | +| | mogdb=# SELECT double precision '3.5' * interval '1 hour' AS RESULT;
result
--------------
03:30:00
(1 row) | +| / | mogdb=# SELECT interval '1 hour' / double precision '1.5' AS RESULT;
result
-------------
00:40:00
(1 row) | ## 时间/日期函数 diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md b/product/zh/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md index 262fbbf1..788bab0c 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md @@ -21,24 +21,24 @@ date: 2021-04-20 | 操作符 | 示例 | | ------ | ------------------------------------------------------------ | -| + | `mogdb=# SELECT date '2001-09-28' + integer '7' AS RESULT; result -------- 2001-10-05 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' + interval '1 hour' AS RESULT; result -------- 2001-09-28 01:00:00 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' + time '03:00' AS RESULT; result -------- 2001-09-28 03:00:00 (1 row)` | -| | `mogdb=# SELECT interval '1 day' + interval '1 hour' AS RESULT; result ------ 1 day 01:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-28 01:00' + interval '23 hours' AS RESULT; result -------- 2001-09-29 00:00:00 (1 row)` | -| | `mogdb=# SELECT time '01:00' + interval '3 hours' AS RESULT; result ---- 04:00:00 (1 row)` | -| - | `mogdb=# SELECT date '2001-10-01' - date '2001-09-28' AS RESULT; result ---- 3days (1 row)` | -| | `mogdb=# SELECT date '2001-10-01' - integer '7' AS RESULT; result -------- 2001-09-24 00:00:00 (1 row)` | -| | `mogdb=# SELECT date '2001-09-28' - interval '1 hour' AS RESULT; result -------- 2001-09-27 23:00:00 (1 row)` | -| | `mogdb=# SELECT time '05:00' - time '03:00' AS RESULT; result ---- 02:00:00 (1 row)` | -| | `mogdb=# SELECT time '05:00' - interval '2 hours' AS RESULT; result ---- 03:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-28 23:00' - interval '23 hours' AS RESULT; result -------- 2001-09-28 00:00:00 (1 row)` | -| | `mogdb=# SELECT interval '1 day' - interval '1 hour' AS RESULT; result ---- 23:00:00 (1 row)` | -| | `mogdb=# SELECT timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' AS RESULT; result ------ 1 day 15:00:00 (1 row)` | -| * | `mogdb=# SELECT 900 * interval '1 second' AS RESULT; result ---- 00:15:00 (1 row)` | -| | `mogdb=# SELECT 21 * interval '1 day' AS RESULT; result ---- 21 days (1 row)` | -| | `mogdb=# SELECT double precision '3.5' * interval '1 hour' AS RESULT; result ---- 03:30:00 (1 row)` | -| / | `mogdb=# SELECT interval '1 hour' / double precision '1.5' AS RESULT; result ---- 00:40:00 (1 row)` | +| + | mogdb=# SELECT date '2001-09-28' + integer '7' AS RESULT;
result
-----------------
2001-10-05
(1 row) | +| | mogdb=# SELECT date '2001-09-28' + interval '1 hour' AS RESULT;
result
-----------------------------
2001-09-28 01:00:00
(1 row) | +| | mogdb=# SELECT date '2001-09-28' + time '03:00' AS RESULT;
result
-------------------------------
2001-09-28 03:00:00
(1 row) | +| | mogdb=# SELECT interval '1 day' + interval '1 hour' AS RESULT;
result
----------------------
1 day 01:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-28 01:00' + interval '23 hours' AS RESULT;
result
------------------------------
2001-09-29 00:00:00
(1 row) | +| | mogdb=# SELECT time '01:00' + interval '3 hours' AS RESULT;
result
-------------
04:00:00
(1 row) | +| - | mogdb=# SELECT date '2001-10-01' - date '2001-09-28' AS RESULT;
result
----------
3days
(1 row) | +| | mogdb=# SELECT date '2001-10-01' - integer '7' AS RESULT;
result
-------------------------------
2001-09-24 00:00:00
(1 row) | +| | mogdb=# SELECT date '2001-09-28' - interval '1 hour' AS RESULT;
result
--------------------------------
2001-09-27 23:00:00
(1 row) | +| | mogdb=# SELECT time '05:00' - time '03:00' AS RESULT;
result
-------------
02:00:00
(1 row) | +| | mogdb=# SELECT time '05:00' - interval '2 hours' AS RESULT;
result
-------------
03:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-28 23:00' - interval '23 hours' AS RESULT;
result
-------------------------------
2001-09-28 00:00:00
(1 row) | +| | mogdb=# SELECT interval '1 day' - interval '1 hour' AS RESULT;
result
-------------
23:00:00
(1 row) | +| | mogdb=# SELECT timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' AS RESULT;
result
---------------------
1 day 15:00:00
(1 row) | +| * | mogdb=# SELECT 900 * interval '1 second' AS RESULT;
result
--------------
00:15:00
(1 row) | +| | mogdb=# SELECT 21 * interval '1 day' AS RESULT;
result
-------------
21 days
(1 row) | +| | mogdb=# SELECT double precision '3.5' * interval '1 hour' AS RESULT;
result
--------------
03:30:00
(1 row) | +| / | mogdb=# SELECT interval '1 hour' / double precision '1.5' AS RESULT;
result
-------------
00:40:00
(1 row) | ## 时间/日期函数 -- Gitee From 534852308acb80fe546d9e775f85bfeea756aef6 Mon Sep 17 00:00:00 2001 From: spaceoddity91719 Date: Thu, 9 Jun 2022 15:52:03 +0800 Subject: [PATCH 9/9] =?UTF-8?q?add(mogdb):=E6=8B=86=E5=88=86=E5=AE=A2?= =?UTF-8?q?=E6=88=B7=E7=AB=AF=E5=B7=A5=E5=85=B7=EF=BC=8C=E6=96=B0=E5=A2=9E?= =?UTF-8?q?gs=5Floader?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{client-tool.md => client-tool/1-gsql.md} | 28 +- .../tool-reference/client-tool/2-gs_loader.md | 310 ++++++++++++++++++ .../tool-reference/client-tool/client-tool.md | 10 + product/zh/docs-mogdb/v3.0/toc.md | 4 +- .../v3.0/toc_parameters-and-tools.md | 4 +- 5 files changed, 338 insertions(+), 18 deletions(-) rename product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/{client-tool.md => client-tool/1-gsql.md} (99%) create mode 100644 product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/2-gs_loader.md create mode 100644 product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/client-tool.md diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/1-gsql.md similarity index 99% rename from product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool.md rename to product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/1-gsql.md index 573594d9..722b53f1 100644 --- a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool.md +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/1-gsql.md @@ -1,19 +1,15 @@ --- -title: 客户端工具 -summary: 客户端工具 -author: Zhang Cuiping -date: 2021-06-07 +title: gsql +summary: gsql +author: Guo Huan +date: 2022-06-09 --- -# 客户端工具 - -数据库在部署成功后,需要通过一些工具来便捷地连接数据库,对数据库进行各种操作和调试。MogDB提供了一些数据库连接工具。通过这些工具可以方便地连接数据库并对数据库进行数据操作。 - -## gsql +# gsql gsql是MogDB提供在命令行下运行的数据库连接工具,可以通过此工具连接服务器并对其进行操作和维护,除了具备操作数据库的基本功能,gsql还提供了若干高级特性,便于用户使用。 -### gsql概述 +## gsql概述 **基本功能** @@ -148,7 +144,7 @@ gsql的高级特性如[表1](#gsql)所示。 | SHELL | 使用!命令跟shell执行的命令是一样的效果。 | | TMPDIR | 存储临时文件的目录。缺省是/tmp。 | -### 使用指导 +## 使用指导 **前提条件** @@ -387,7 +383,7 @@ area_name|Asia omm@[local] mogdb=# ``` -### 获取帮助 +## 获取帮助 **操作步骤** @@ -458,7 +454,7 @@ omm@[local] mogdb=# | 查看MogDB支持的SQL语句的帮助 | 查看MogDB支持的SQL语句的帮助
例如,查看MogDB支持的所有SQL语句:
`mogdb=# \h`
`Available help:`
`ABORT`
`ALTER APP WORKLOAD GROUP`
`… …`
例如,查看CREATE DATABASE命令的参数可使用下面的命令:
`mogdb=# \help CREATE DATABASE`
`Command: CREATE DATABASE`
`Description: create a new database`
`Syntax:`
`CREATE DATABASE database_name`
`[ [ WITH ] {[ OWNER [=] user_name ]|`
`[ TEMPLATE [=] template ]|`
`[ ENCODING [=] encoding ]|`
`[ LC_COLLATE [=] lc_collate ]|`
`[ LC_CTYPE [=] lc_ctype ]|`
`[ DBCOMPATIBILITY [=] compatibility_type ]|`
`[ TABLESPACE [=] tablespace_name ]|`
`[ CONNECTION LIMIT [=] connlimit ]}[…] ];` | | 查看gsql命令的帮助 | 例如,查看gsql支持的命令:
`mogdb=# \?`
`General`
`\copyright show FusionInsight LibrA usage and distribution terms`
`\g [FILE] or ; execute query (and send results to file or |pipe)`
`\h(\help) [NAME] help on syntax of SQL commands, * for all commands`
`\parallel [on [num]|off] toggle status of execute (currently off)`
`\q quit gsql`
`… …` | -### 命令参考 +## 命令参考 详细的gsql参数请参见[表7 常用参数](#changyong)、[表8 输入和输出参数](#shuruheshuchu)、[表9 输出格式参数](#shuchu)和[表10 连接参数](#lianjie)。 @@ -520,7 +516,7 @@ omm@[local] mogdb=# | -U, --username=USERNAME | 指定连接数据库的用户。
说明:
- 通过该参数指定用户连接数据库时,需要同时提供用户密码用以身份验证。您可以通过交换方式输入密码,或者通过-W参数指定密码。
- 用户名中包含有字符 `$`,需要在字符`$`前增加转义字符才可成功连接数据库。 | 字符串。默认使用与当前操作系统用户同名的用户。 | | -W, --password=PASSWORD | 当使用-U参数连接远端数据库时,可通过该选项指定密码。
说明:
数据库主节点所在服务器后连接本地数据库主节点实例时,默认使用trust连接,会忽略此参数。
用户密码中包含特殊字符\\和\`时,需要增加转义字符才可成功连接数据库。
如果用户未输入该参数,但是数据库连接需要用户密码,这时将出现交互式输入,请用户输入当前连接的密码。该密码最长长度为999字节,受限于GUC参数password_max_length的最大值。 | 符合密码复杂度要求。 | -### 元命令参考 +## 元命令参考 介绍使用MogDB数据库命令行交互工具登录数据库后,gsql所提供的元命令。所谓元命令就是在gsql里输入的任何以不带引号的反斜杠开头的命令。 @@ -729,7 +725,7 @@ omm@[local] mogdb=# 根据需要,可以通过书写?, (`R+|`), (`R|`)和`R?`来分别模拟PATTERN字符. `R*`和`R?`。`$`不需要作为一个正则表达式字符,因为PATTERN必须匹配整个名称,而不是像正则表达式的常规用法那样解释(换句话说,$会被自动地追加到PATTERN上)。如果不希望该PATTERN的匹配位置被固定,可以在开头或者结尾写上\*。注意在双引号内,所有的正则表达式特殊字符会失去其特殊含义并且按照其字面意思进行匹配。另外,在操作符名称PATTERN中(即\\do的PATTERN参数),正则表达式特殊字符也按照字面意思进行匹配。 -### 常见问题处理 +## 常见问题处理 **连接性能问题** @@ -942,4 +938,4 @@ omm@[local] mogdb=# 解决此问题,重试便可。同时请尽可能避免在升级等运维操作过程中,在MogDB内部运行业务程序,避免升级时因替换文件产生此问题。 - > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 此故障的core dump文件的可能堆栈是dl_main及其子调用,它是操作系统用来初始化进程做共享动态库加载的。如果进程已经初始化,但是共享动态库还未加载完成,严格意义上来说,进程并未完全启动。 + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明:** 此故障的core dump文件的可能堆栈是dl_main及其子调用,它是操作系统用来初始化进程做共享动态库加载的。如果进程已经初始化,但是共享动态库还未加载完成,严格意义上来说,进程并未完全启动。 \ No newline at end of file diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/2-gs_loader.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/2-gs_loader.md new file mode 100644 index 00000000..cb3264e9 --- /dev/null +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/2-gs_loader.md @@ -0,0 +1,310 @@ +--- +title: gs_loader +summary: gs_loader +author: Guo Huan +date: 2022-06-09 +--- + +# gs_loader + +## 概述 + +gs_loader工具用于进行数据导入。gs_loader将控制文件支持的语法转换为\COPY语法,然后利用已有的\COPY功能,做主要数据导入工作,同时gs_loader将\COPY结果记录到日志中。 + +## 日志等级配置 + +设置日志级别,可以供开发者查看。设置后会在控制台打印工具运行的相应信息。 + +```shell +export gs_loader_log_level=debug +export gs_loader_log_level=info +export gs_loader_log_level=warning +export gs_loader_log_level=error +``` + +## 使用权限 + +使用者可以是数据库普通用户或管理员用户。当使用者为普通用的时候,需要管理员用户对普通用户赋权。管理员账户可以直接使用。 + +创建用户。 + +```sql +CREATE USER load_user WITH PASSWORD 'example@123'; +``` + +创建相关的表并授权。 + +```sql +GRANT ALL ON FUNCTION copy_error_log_create() TO load_user; +GRANT ALL ON SCHEMA public TO load_user; +SELECT copy_error_log_create(); +SELECT copy_summary_create(); +GRANT ALL PRIVILEGES ON public.pgxc_copy_error_log To load_user; +GRANT ALL PRIVILEGES ON public.gs_copy_summary To load_user; +``` + +## 使用环境 + +由用户自己将工具路径添加到PATH中。 + +## 新增系统表 + +新增gs_copy_summary表,记录COPY执行结果汇总,包括成功行数,出错行数,忽略行数,空行数。 + +新增函数:copy_summary_create用于创建gs_copy_summary表。 + +gs_copy_summary表格式如下: + +``` +relname | public.sqlldr_tbl +begintime | 2021-09-03 16:00:11.7129-04 +endtime | 2021-09-03 16:00:15.259908-04 +id | 21870 +pid | 47582725060352 +readrows | 100000 +skiprows | 0 +loadrows | 111 +errorrows | 0 +whenrows | 99889 +allnullrows | 0 +detail | 111 Rows successfully loaded. + | 0 Rows not loaded due to data errors. + | 99889 Rows not loaded because all WHEN clauses were failed. + | 0 Rows not loaded because all fields were null. + | +``` + +## 使用指导 + +1. (可选)仅对于普通用户。 + + 创建用户。 + + ```sql + CREATE USER load_user WITH PASSWORD 'example@123'; + ``` + + 创建相关的表并授权。 + + ```sql + GRANT ALL ON FUNCTION copy_error_log_create() TO load_user; + GRANT ALL ON SCHEMA public TO load_user; + SELECT copy_error_log_create(); + SELECT copy_summary_create(); + GRANT ALL PRIVILEGES ON public.pgxc_copy_error_log To load_user; + GRANT ALL PRIVILEGES ON public.gs_copy_summary To load_user; + ``` + +2. 创建表和控制文件,准备数据文件。 + + 创建表loader_tbl。 + + ```sql + CREATE TABLE loader_tbl + ( + ID NUMBER, + NAME VARCHAR2(20), + CON VARCHAR2(20), + DT DATE + ); + ``` + + 创建控制文件loader.ctl。 + + ```sql + LOAD DATA + truncate into table loader_tbl + WHEN (2:2) = ',' + fields terminated by ',' + trailing nullcols + ( + id integer external, + name char(32), + con ":id || '-' || :name", + dt date + ) + ``` + + 创建数据文件data.csv。 + + ``` + 1,OK,,2007-07-8 + 2,OK,,2008-07-8 + 3,OK,,2009-07-8 + 4,OK,,2007-07-8 + 43,DISCARD,,2007-07-8 + ,,, + 32,DISCARD,,2007-07-8 + a,ERROR int,,2007-07-8 + 8,ERROR date,,2007-37-8 + ,,,, + , + 8,ERROR fields,,2007-37-8 + ,,, + 5,OK,,2021-07-30 + ``` + +3. 进行导入。 + + 执行导入前,先确认gs_loader工具有可执行权限。确保当前路径有文件写入权限(gs_loader在处理过程中会生成一些临时文件,导入完成后自动删除)。 + + ```shell + gs_loader control=loader.ctl data=data.csv db=postgres bad=loader.bad errors=5 port=8000 passwd=example@123 user=load_user + ``` + + 执行结果: + + ```shell + gs_loader: version 0.1 + + 5 Rows successfully loaded. + + log file is: + loader.log + ``` + +## 参数说明 + +**表 1** gs_loader参数说明 + +| 参数 | 参数说明 | 参数类型 : 取值范围 | +| -------- | ------------------------------------------------------------ | ----------------------- | +| help | 查看帮助信息。 | - | +| user | 数据库链接用户(与-U等价)。 | 字符串 | +| -U | 数据库链接用户(与user等价)。 | 字符串 | +| passwd | 用户密码(与-W等价)。 | 字符串 | +| -W | 用户密码(与passwd等价)。 | 字符串 | +| db | 数据库名称(必选,与-d等价)。 | 字符串 | +| -d | 数据库名称(必选与db等价)。 | 字符串 | +| host | 指定正在运行服务器的主机名或者Unix域套接字的路径(与-h等价)。 | 参考gsql --host参数 | +| -h | 指定正在运行服务器的主机名或者Unix域套接字的路径(与host等价)。 | 参考gsql --host参数 | +| port | 数据库服务器端口(与-p等价)。 | 参考gsql --port参考 | +| -p | 数据库服务器端口(与port等价)。 | 参考gsql --port参考 | +| create | 是否创建pgxc_copy_error_log和gs_copy_summary表。 | [true, false],默认true | +| clean | 是否清理上面两张表中的内容。 | [true, false],默认true | +| data | 数据文件,可以指定多个,或者通配符多字符通配(*)以及单字符通配(?)(必选)。 | 字符串 | +| control | 控制文件名称(必选)。 | 字符串 | +| log | 日志文件名称。 | 字符串 | +| bad | 出错行记录文件名称,也可以指定目录,根据数据文件名生成。 | 字符串 | +| discard | WHEN匹配失败行记录文件名称,也可以指定目录,根据数据文件名生成。 | 字符串 | +| errors | 允许数据文件中出现多少出错行。 | 整数,默认0 | +| skip | 允许跳过数据文件的前多少行。 | 整数,默认0 | +| bindsize | 仅做语法兼容不实现功能。 | - | +| rows | 仅做语法兼容不实现功能。 | - | + +> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-caution.gif) **注意:** 参数均为小写,不支持大写,同时兼容gsql登录方式:-p端口号,-h主机,-d数据库,-U用户名,-W密码方式。 + +## 控制文件 + +- 语法说明: + + ``` + LOAD [ DATA ] + [CHARACTERSET char_set_name] + [INFILE [directory_path] [filename ] ] + [BADFILE [directory_path] [filename ] ] + [{ INSERT | APPEND | REPLACE | TRUNCATE }] + INTO TABLE table_name + [{ INSERT | APPEND | REPLACE | TRUNCATE }] + TERMINATED [BY] { 'string' } + OPTIONALLY ENCLOSED BY { 'string' } + TRAILING NULLCOLS + [ WHEN { (start:end) | column_name } {= | !=} ‘string’ ] + [( + col_name [ [ POSITION ({ start:end }) ] ["sql_string"] ] | [ FILLER [column_type [external] ] ] | [ CONSTANT "string" ] | [ SEQUENCE ( { COUNT | MAX | integer } [, incr] ) ]|[NULLIF (COL=BLANKS)] + [, ...] + )] + ``` + +- 参数说明: + + - **CHARACTERSET** + + 字符集。 + + 取值范围:字符串。 + + - **INFILE** + + 当前关键字无效,并在控制文件中需要单独占一行,运行时候会忽略该关键字。需要用户在gs_loader命令行参数中指定对应的数据文件。 + + - **BADFILE** + + 当前关键字无效,运行时候会忽略该关键字,如果gs_laoder 命令行参数没有指定badfile,则会根据对应控制文件名称生成对应的badfile文件。 + + - **INSERT | APPEND | REPLACE | TRUNCATE** + + 导入模式。 + + **INSERT**:如果表中有数据,则报错。 + + **APPEND:**直接插入数据。 + + **REPLACE:**如果表中有数据,则全部删除,然后再插入。 + + **TRUNCATE:**如果表中有数据,则全部删除,然后再插入。 + + - **table_name** + + 表的名称(可以有模式修饰)。 + + 取值范围:已存在的表名。 + + - **TERMINATED [BY] { 'string' }** + + 在文件中分隔各个字段的字符串,分隔符最大长度不超过10个字节。 + + 取值范围:不允许包含\.abcdefghijklmnopqrstuvwxyz0123456789中的任何一个字符。 + + 缺省值:在文本模式下,缺省是水平制表符,在CSV模式下是一个逗号。 + + - **OPTIONALLY ENCLOSED BY { 'string' }** + + CSV格式文件下的引号字符。 + + 缺省值:双引号。 + + - **TRAILING NULLCOLS** + + 当数据加载时,若数据源文件中一行的多个字段缺失的处理方式。 + + - **WHEN { (start:end) | column_name } {= | !=}** + + 对行中的start到end之间的字符串,或者根据列名进行行过滤。 + + 取值范围:字符串。 + + - **POSITION ({ start:end })** + + 对列进行处理,根据start到end范围获取对应字符串。 + + - **"sql_string"** + + 对列进行处理,列表达式,根据表达式计算列的取值。 + + 取值范围:字符串。 + + - **FILLER** + + 对列进行处理,如果出现FILLER,则这个字段跳过。 + + - **CONSTANT** + + 对列进行处理,将插入的对应字段设置为常量。 + + 取值范围:字符串。 + + - **SEQUENCE ( { COUNT | MAX | integer } [, incr] )** + + 对列进行处理,生成对应的序列值。 + + - COUNT:表示根据表中数据的行数开始计算。 + - MAX:表示根据表中这一列的最大值开始计算。 + - integer:表示从用户指定的值开始计算。 + - incr:表示每次递增多少。 + + - NULLIF + + 设置字段为空,当前只支持 COL POSITION() CHAR NULLIF (COL=BLANKS)语法。 + + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-caution.gif) **注意:** OPTIONS、INFILE、BADFILE不支持,仅在特定场景下不报语法错误。 \ No newline at end of file diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/client-tool.md b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/client-tool.md new file mode 100644 index 00000000..6d83cf24 --- /dev/null +++ b/product/zh/docs-mogdb/v3.0/reference-guide/tool-reference/client-tool/client-tool.md @@ -0,0 +1,10 @@ +--- +title: 客户端工具 +summary: 客户端工具 +author: Zhang Cuiping +date: 2021-06-07 +--- + +# 客户端工具 + +数据库在部署成功后,需要通过一些工具来便捷地连接数据库,对数据库进行各种操作和调试。MogDB提供了一些数据库连接工具。通过这些工具可以方便地连接数据库并对数据库进行数据操作。 \ No newline at end of file diff --git a/product/zh/docs-mogdb/v3.0/toc.md b/product/zh/docs-mogdb/v3.0/toc.md index fce3b328..a791edfc 100644 --- a/product/zh/docs-mogdb/v3.0/toc.md +++ b/product/zh/docs-mogdb/v3.0/toc.md @@ -1387,7 +1387,9 @@ + [DBE_PLDEVELOPER.gs_errors](/reference-guide/schema/DBE_PLDEVELOPER/DBE_PLDEVELOPER.gs_errors.md) + 工具参考 + [工具一览表](/reference-guide/tool-reference/tool-overview.md) - + [客户端工具](/reference-guide/tool-reference/client-tool.md) + + [客户端工具](./reference-guide/tool-reference/client-tool/client-tool.md) + + [gsql](./reference-guide/tool-reference/client-tool/1-gsql.md) + + [gs_loader](./reference-guide/tool-reference/client-tool/2-gs_loader.md) + 服务端工具 + [gs_cgroup](/reference-guide/tool-reference/server-tools/0-gs_cgroup.md) + [gs_check](/reference-guide/tool-reference/server-tools/1-gs_check.md) diff --git a/product/zh/docs-mogdb/v3.0/toc_parameters-and-tools.md b/product/zh/docs-mogdb/v3.0/toc_parameters-and-tools.md index 4db6adb8..0fd6dfd5 100644 --- a/product/zh/docs-mogdb/v3.0/toc_parameters-and-tools.md +++ b/product/zh/docs-mogdb/v3.0/toc_parameters-and-tools.md @@ -328,7 +328,9 @@ + [DBE_PLDEVELOPER.gs_errors](./reference-guide/schema/DBE_PLDEVELOPER/DBE_PLDEVELOPER.gs_errors.md) + 工具参考 + [工具一览表](./reference-guide/tool-reference/tool-overview.md) - + [客户端工具](./reference-guide/tool-reference/client-tool.md) + + [客户端工具](./reference-guide/tool-reference/client-tool/client-tool.md) + + [gsql](./reference-guide/tool-reference/client-tool/1-gsql.md) + + [gs_loader](./reference-guide/tool-reference/client-tool/2-gs_loader.md) + 服务端工具 + [gs_cgroup](./reference-guide/tool-reference/server-tools/0-gs_cgroup.md) + [gs_check](./reference-guide/tool-reference/server-tools/1-gs_check.md) -- Gitee