命令参考

命令参考

gs_initdb支持的常用参数和不常用参数请分别参见表1表2

表 1 常用参数说明

参数

参数说明

取值范围

-A, —auth=METHOD

指定本地用户连接数据库时的认证方法,即“pghba.conf”配置文件中host和local所在行的认证方法。

除非用户对本地用户都是信任的,否则不要使用默认值trust。

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
  • peer(仅用于local模式)

默认值:trust

-c, —enable-dcf

设置安装的节点为DCF模式。

说明:

轻量版场景下,openGauss提供此参数,但DCF功能不可用。对于DCF功能,openGauss提供选主能力,用户若使用需自行配置。

-

[-D, —pgdata=]DATADIR

指定数据目录的位置。

DATADIR的取值:用户自定义。不能包括”|”, “;”, “&”, “$”, “<”, “>”, “", "\\", "!"这几个字符。</p></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="zh-cn_topic_0059778168_zh-cn_topic_0058968084_p163219612615"></a><a name="zh-cn_topic_0059778168_zh-cn_topic_0058968084_p163219612615"></a>--nodename=NODENAME</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="zh-cn_topic_0059778168_afa4fd3ea63b44774b96814d9e7d5c33a"></a><a name="zh-cn_topic_0059778168_afa4fd3ea63b44774b96814d9e7d5c33a"></a>初始化的节点名称。</p></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="zh-cn_topic_0059778168_zh-cn_topic_0058968084_p15632068264"></a><a name="zh-cn_topic_0059778168_zh-cn_topic_0058968084_p15632068264"></a>不能包括"|", ";", "&amp;", "$", "&lt;", "&gt;", "“, “\“, “!”这几个字符。

-E, —encoding=ENCODING

为新数据库设置编码格式。

  • 如果使用此参数,需要加上—locale选项指定支持此编码格式的区域。如果不加—locale选项,则采用系统默认的区域,如果系统默认区域的编码格式和用此参数指定的编码格式不匹配则会导致数据库初始化失败。
  • 如果不指定此参数,则使用系统默认区域的编码格式。系统默认区域和编码格式可以使用locale命令查看,如下:
    1. omm@linux:~> locale|grep LC_CTYPE
    2. LC_CTYPE=”en_US.UTF-8

    其中UTF-8表示系统默认区域的编码格式。

    不能包括”|”, “;”, “&”, “$”, “<”, “>”, “", "\\", "!"这几个字符。</p></li></ul></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="zh-cn_topic_0059778168_a4116cde05e05427daf2a46774bb81de8"></a><a name="zh-cn_topic_0059778168_a4116cde05e05427daf2a46774bb81de8"></a>--locale=LOCALE</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="zh-cn_topic_0059778168_ae62cadd0b34546d8bcc2c36dfb24ec10"></a><a name="zh-cn_topic_0059778168_ae62cadd0b34546d8bcc2c36dfb24ec10"></a>为新数据库设置缺省的区域。</p><div><a name="zh-cn_topic_0059778168_n68804385e7ce4f0ba5d88a03ae2e4c73"></a><a name="zh-cn_topic_0059778168_n68804385e7ce4f0ba5d88a03ae2e4c73"></a>须知:<div><p><a name="zh-cn_topic_0059778168_acccca55cfee647d581bdb9936e40bf31"></a><a name="zh-cn_topic_0059778168_acccca55cfee647d581bdb9936e40bf31"></a>如果用户设置了数据库的编码格式,则用户选择区域的编码格式必须与用户设置的编码格式一致,否则数据库初始化会失败。</p></div></div></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="zh-cn_topic_0059778168_a803a9ebdf89c45f0a6b46a76846a93e0"></a><a name="zh-cn_topic_0059778168_a803a9ebdf89c45f0a6b46a76846a93e0"></a>例如用户要将数据库编码格式初始化为GBK,可以采用如下步骤:</p><a name="zh-cn_topic_0059778168_o14641ef5676b4f6e8cf5555515076472"></a><a name="zh-cn_topic_0059778168_o14641ef5676b4f6e8cf5555515076472"></a><ol><li>用locale -a |grep gbk命令查看系统支持gbk编码的区域,如下:<pre><code><a name="zh-cn_topic_0059778168_sde05eecf42394d6fafbef19c47e15d0d"></a><a name="zh-cn_topic_0059778168_sde05eecf42394d6fafbef19c47e15d0d"></a><a name="text1781618203519"></a><a name="text1781618203519"></a>omm@linux:<font style="font-size:8pt" face="Courier New">~</font>&gt; locale -a|grep gbk zh_CN.gbk zh_SG.gbk </code></pre></li><li>初始化数据库时加入--locale=zh_CN.gbk选项。</li><li>不能包括"|", ";", "&amp;", "$", "&lt;", "&gt;", "“, “\“, “!”这几个字符。

—dbcompatibility=DBCOMPATIBILITY

为新数据库设置默认db兼容性。

不能包括”|”, “;”, “&”, “$”, “<”, “>”, “", "\\", "!"这几个字符。</p></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="zh-cn_topic_0059778168_zh-cn_topic_0058968084_p296280814042"></a><a name="zh-cn_topic_0059778168_zh-cn_topic_0058968084_p296280814042"></a>--lc-collate=LOCALE</p><p><a name="zh-cn_topic_0059778168_aa94596f2af8d4c94990bf5216816300c"></a><a name="zh-cn_topic_0059778168_aa94596f2af8d4c94990bf5216816300c"></a>--lc-ctype=LOCALE</p><p><a name="zh-cn_topic_0059778168_ad3d9c7e24fb049ffbfdb796a0cc703ae"></a><a name="zh-cn_topic_0059778168_ad3d9c7e24fb049ffbfdb796a0cc703ae"></a>--lc-messages=LOCALE</p><p><a name="zh-cn_topic_0059778168_ab87e33d09c4448138e1d1827ff0b8b1a"></a><a name="zh-cn_topic_0059778168_ab87e33d09c4448138e1d1827ff0b8b1a"></a>--lc-monetary=LOCALE</p><p><a name="zh-cn_topic_0059778168_a5d227938183a45f6b37b9d9455b9c5c6"></a><a name="zh-cn_topic_0059778168_a5d227938183a45f6b37b9d9455b9c5c6"></a>--lc-numeric=LOCALE</p><p><a name="zh-cn_topic_0059778168_a71d42f00eeb84856adc6aa9acae96847"></a><a name="zh-cn_topic_0059778168_a71d42f00eeb84856adc6aa9acae96847"></a>--lc-time=LOCALE</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="zh-cn_topic_0059778168_a9da720ea69b64f35adbb2f0240905dba"></a><a name="zh-cn_topic_0059778168_a9da720ea69b64f35adbb2f0240905dba"></a>为新数据库设置指定范畴的区域。</p></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="zh-cn_topic_0059778168_ae044b8732e2e4ea78011b720dc1c3dda"></a><a name="zh-cn_topic_0059778168_ae044b8732e2e4ea78011b720dc1c3dda"></a>各参数的取值必须是操作系统支持的值。不能包括"|", ";", "&amp;", "$", "&lt;", "&gt;", "“, “\“, “!”这几个字符。

说明:

如果用户在数据库安装的时候没有指定—lc-collate参数,则—lc-collate参数的默认值为C。

—no-locale

和—locale=C等价。

-

—pwfile=FILE

gs_initdb时从文件FILE中读取数据库中系统管理员的密码。该文件的第一行将被当作密码使用。

FILE可以是“相对路径+文件”的形式,也可以是“绝对路径+文件”的形式。相对路径是相对当前路径的。不能包括”|”, “;”, “&”, “$”, “<”, “>”, “", "\\", "!"这几个字符。</p></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="zh-cn_topic_0059778168_a3764e4e4a8a9461f8573f7cf4537514d"></a><a name="zh-cn_topic_0059778168_a3764e4e4a8a9461f8573f7cf4537514d"></a>-T, --text-search-config=CFG</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="zh-cn_topic_0059778168_ade5a330c60df4410a111730ce871e9e5"></a><a name="zh-cn_topic_0059778168_ade5a330c60df4410a111730ce871e9e5"></a>设置缺省的文本搜索方式。</p></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="zh-cn_topic_0059778168_a23eba128a8c849039535c5d156384b1d"></a><a name="zh-cn_topic_0059778168_a23eba128a8c849039535c5d156384b1d"></a>text-search-config的取值:</p><a name="zh-cn_topic_0059778168_u32787aec68b74a82a8046c16faeab614"></a><a name="zh-cn_topic_0059778168_u32787aec68b74a82a8046c16faeab614"></a><ul><li>pg_catalog.english全文搜索</li><li>pg_catalog.simple普通文本搜索</li></ul><p><a name="zh-cn_topic_0059778168_a4e71d94acb6d439a8776a3c7f493b753"></a><a name="zh-cn_topic_0059778168_a4e71d94acb6d439a8776a3c7f493b753"></a>默认值:pg_catalog.simple</p></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="zh-cn_topic_0059778168_a863106d2c4154ecfb12f4bf35d8b6d31"></a><a name="zh-cn_topic_0059778168_a863106d2c4154ecfb12f4bf35d8b6d31"></a>-U, --username=NAME</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="zh-cn_topic_0059778168_a0fa722e5a044454fb85f37064f7daed8"></a><a name="zh-cn_topic_0059778168_a0fa722e5a044454fb85f37064f7daed8"></a>选择数据库系统管理员的用户名。</p></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="zh-cn_topic_0059778168_ab72d990d68c049388be0cb39b489de4c"></a><a name="zh-cn_topic_0059778168_ab72d990d68c049388be0cb39b489de4c"></a>取值范围:正常的数据库用户。不能包括"|", ";", "&amp;", "&lt;", "&gt;", "“, “\“, “!”这几个字符。

默认值:运行gs_initdb的操作系统用户。

-W, —pwprompt

gs_initdb时强制交互式输入数据库管理员的密码。

-

-w, —pwpasswd=PASSWD

gs_initdb时通过命令行指定管理员用户的密码,而不是交互式输入。

设置的密码要符合复杂度要求:

  • 最少包含8个字符;
  • 不能和用户名及当前密码(ALTER)相同,或和当前密码反序;
  • 至少包含如下字符中的三类:
    • 大写字母(A-Z)。
    • 小写字母(a-z)。
    • 数字(0-9)。
    • 特殊字符(限定为~!@#$%^&*()-=+|[{}];:,<.>/?)。

-C, —enpwdfiledir=DIR

gs_initdb时指定的经AES128加密算法加密过的密码文件所在目录。gs_initdb会将该目录下密码文件进行解密,同时把解密后的密码做密码复杂度校验,校验通过的话会将此密码作为用户的密码。

说明:
  • 加密密码文件需使用gs_guc工具生成:gs_guc encrypt -K password -D Dir
  • 如果用户指定多个-w和-C参数,gs_initdb会将用户输入的最后一个-w或-C参数作为用户的需求,即输入密码的明文或经过AES128加密后的密码。

不能包括”|”, “;”, “&”, “$”, “<”, “>”, “", "\\", "!"这几个字符。</p></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="zh-cn_topic_0059778168_a3a039c42f6cc4b9f950bcb1f0f37fcd6"></a><a name="zh-cn_topic_0059778168_a3a039c42f6cc4b9f950bcb1f0f37fcd6"></a>-X, --xlogdir=XLOGDIR</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="zh-cn_topic_0059778168_a006d0d95e29748c592fdd4cd2d275db7"></a><a name="zh-cn_topic_0059778168_a006d0d95e29748c592fdd4cd2d275db7"></a>声明事务日志存储的目录。</p><p><a name="zh-cn_topic_0059778168_aa7f9aced4b4f49529a06901c7baa05ba"></a><a name="zh-cn_topic_0059778168_aa7f9aced4b4f49529a06901c7baa05ba"></a>所设置的目录,必须满足运行<a name="text159364408376"></a><a name="text159364408376"></a>openGauss的用户有读写权限。</p></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="zh-cn_topic_0059778168_ad84c6e72a8014e17b4fc637e4744fcb0"></a><a name="zh-cn_topic_0059778168_ad84c6e72a8014e17b4fc637e4744fcb0"></a>支持绝对路径和相对路径,相对路径是相对于数据目录的。不能包括"|", ";", "&amp;", "$", "&lt;", "&gt;", "“, “\“, “!”这几个字符。

-S, —security

安全方式初始化数据库。

以-S方式初始化的数据库后,创建的数据库用户权限受到限制,默认不再具有public schema的使用权限。

表 2 不常用参数说明

参数

参数说明

取值范围

-d, —debug

从初始化后端打印调试输出信息。初始化后端是gs_initdb用于创建系统表的程序。

-

-L DIRECTORY

gs_initdb初始化数据库所需要的输入文件的路径。通常是不必要的。如果需要明确声明的话,程序会提示输入。

初始化数据库所需的输入文件路径。不能包括”|”, “;”, “&”, “$”, “<”, “>”, “", "\\", "!"这几个字符。</p></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="zh-cn_topic_0059778168_af0f24cb7bf5b4f1fa1ba5f81fdf53fa2"></a><a name="zh-cn_topic_0059778168_af0f24cb7bf5b4f1fa1ba5f81fdf53fa2"></a>-n, --noclean</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="zh-cn_topic_0059778168_a6e425272494742d5a19f77d99bf796b2"></a><a name="zh-cn_topic_0059778168_a6e425272494742d5a19f77d99bf796b2"></a>不指定该参数时,当gs_initdb发现一些错误妨碍它完成创建数据库的工作时,它将在检测到不能结束工作之前将其创建的所有文件删除。这个选项禁止任何清理动作,因而对调试很有用。</p></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="zh-cn_topic_0059778168_a6812e35ed982480493c851dadf1d4e2e"></a><a name="zh-cn_topic_0059778168_a6812e35ed982480493c851dadf1d4e2e"></a>-</p></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="zh-cn_topic_0059778168_ab4b1d602d8e64fa7935cc69bdefd63dc"></a><a name="zh-cn_topic_0059778168_ab4b1d602d8e64fa7935cc69bdefd63dc"></a>-s, --show</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="zh-cn_topic_0059778168_a5011243f8d344adc983426a76fe5c054"></a><a name="zh-cn_topic_0059778168_a5011243f8d344adc983426a76fe5c054"></a>显示内部设置。</p></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="zh-cn_topic_0059778168_adb419280469547c786f06333a1d3f20a"></a><a name="zh-cn_topic_0059778168_adb419280469547c786f06333a1d3f20a"></a>-</p></td></tr><tr><td headers="mcps1.2.4.1.1 " valign="top"><p><a name="p1875369123518"></a><a name="p1875369123518"></a>-H, --host-ip</p></td><td headers="mcps1.2.4.1.2 " valign="top"><p><a name="p97533916351"></a><a name="p97533916351"></a>openGauss节点node_host初始化。</p></td><td headers="mcps1.2.4.1.3 " valign="top"><p><a name="p19754099351"></a><a name="p19754099351"></a>不能包括"|", ";", "&amp;", "$", "&lt;", "&gt;", "“, “\“, “!”这几个字符。

-V, —version

打印gs_initdb版本信息,然后退出。

-

-?, —help

显示关于gs_initdb命令行参数的帮助信息,然后退出。

-

-g

针对共享存储的跨AZ容灾数据库实例的初始化,指定共享xlog日志文件的路径。

指定的共享日志文件路径。不能包括”|”, “;”, “&”, “$”, “<”, “>”, “`”, “\“, “!”这几个字符。