diff --git a/content/docs-lite/en/docs/AboutopenGauss/pseudocolumn-rownum.md b/content/docs-lite/en/docs/AboutopenGauss/pseudocolumn-rownum.md index 87c02c9354ec1ab8d723451e5aa84edd75e42bda..cf5f5abc580a88376599f7d2729fc4d34cd87773 100644 --- a/content/docs-lite/en/docs/AboutopenGauss/pseudocolumn-rownum.md +++ b/content/docs-lite/en/docs/AboutopenGauss/pseudocolumn-rownum.md @@ -24,6 +24,8 @@ During internal execution, the optimizer rewrites ROWNUM into LIMIT to accelerat ## Constraints - Do not use the pseudocolumn ROWNUM as an alias to avoid ambiguity in SQL statements. +- Do not use ROWNUM as the column name when creating a table. Bad example: **create table table\_name\(rownum int\);** +- Do not use ROWNUM as the column name when creating a type. Bad example: **create type type\_name\(a int, rownum int\);** - Do not use ROWNUM when creating an index. Bad example: **create index index\_name on table\(rownum\);** - Do not use ROWNUM as the default value when creating a table. Bad example: **create table table\_name\(id int default rownum\);** - Do not use ROWNUM as an alias in the WHERE clause. Bad example: **select rownum rn from table where rn < 5;** diff --git a/content/docs-lite/en/docs/AboutopenGauss/support-for-functions-and-stored-procedures.md b/content/docs-lite/en/docs/AboutopenGauss/support-for-functions-and-stored-procedures.md index 395135882b05d047c956cf94c14387f53370a74d..9e8fdf3b029efa169a439f80ed104b1f2c535d63 100644 --- a/content/docs-lite/en/docs/AboutopenGauss/support-for-functions-and-stored-procedures.md +++ b/content/docs-lite/en/docs/AboutopenGauss/support-for-functions-and-stored-procedures.md @@ -22,9 +22,11 @@ openGauss supports functions and stored procedures compliant with the SQL stand Support for using default argument values for cursors in PL/SQL. +Support for getting the type of a row of records in a table, view, or cursor by ROWTYPE in PL/SQL. + ## Constraints -None. +Can't get the type of a nested cursor by ROWTYPE. ## Dependencies diff --git a/content/docs-lite/en/docs/DataBaseReference/platform-and-client-compatibility.md b/content/docs-lite/en/docs/DataBaseReference/platform-and-client-compatibility.md index 9bb7612abee5475a706d9d356bb63efccbd343f7..e439d610b1bd11ee738e921804e8150ed014a222 100644 --- a/content/docs-lite/en/docs/DataBaseReference/platform-and-client-compatibility.md +++ b/content/docs-lite/en/docs/DataBaseReference/platform-and-client-compatibility.md @@ -262,6 +262,46 @@ numeric

Determines the behavior when char(n) types are converted to other variable-length string types. By default, spaces at the end are omitted when the char(n) type is converted to other variable-length string types. After this parameter is enabled, spaces at the end are not omitted during conversion. In addition, if the length of the char(n) type exceeds the length of other variable-length string types, an error is reported. This parameter is valid only when sql_compatibility is set to A.

+

disable_record_type_in_dml

+

Prohibit inserting virtual columns. After enabling this option will prohibit to use record type variables as insertion values in insert statements.

+

+create table t1(col1 varchar(10),col varchar(10));
+create table t2(col1 varchar(10),col varchar(10));
+set behavior_compat_options='disable_record_type_in_dml';
+insert into t1 values('one','two');
+declare
+  cursor cur1 is select * from t1;
+  source cur1%rowtype:=('ten','wtu');
+begin
+  for source in cur1
+  loop
+    raise notice '%',source;
+    insert into t2 values(source);
+  end loop; 
+end;
+/
+ERROR:  The record type variable cannot be used as an insertion value.
+CONTEXT:  SQL statement "insert into t2 values(source)"
+PL/pgSQL function inline_code_block line 7 at SQL statement
+
+set behavior_compat_options='';
+insert into t1 values('one','two');
+declare
+  cursor cur1 is select * from t1;
+  source cur1%rowtype:=('ten','wtu');
+begin
+  for source in cur1
+  loop
+    raise notice '%',source;
+    insert into t2 values(source);
+  end loop; 
+end;
+/
+NOTICE:  (one,two)
+NOTICE:  (one,two)
+
+
+
 
 
 
diff --git a/content/docs-lite/en/docs/GettingStarted/container-based-installation-on-a-single-node.md b/content/docs-lite/en/docs/GettingStarted/container-based-installation-on-a-single-node.md
index e96e4f56ef0b847864e4d79978a6c9dab66f8559..627a1d6e7dc021e6227211bca2d7f162cbae99f7 100644
--- a/content/docs-lite/en/docs/GettingStarted/container-based-installation-on-a-single-node.md
+++ b/content/docs-lite/en/docs/GettingStarted/container-based-installation-on-a-single-node.md
@@ -16,16 +16,16 @@ Use the  **buildDockerImage.sh**  script to build a Docker image. This script is
 
 >![](public_sys-resources/icon-note.gif) **NOTE:** 
 >
-> -   Before the installation, you need to provide the openGauss binary installation package. After decompressing the package, place the package \(**openGauss-***X.X.X***-CentOS-64bit.tar.bz2**\) in the  **dockerfiles/**<*version*\> folder. The binary package can be downloaded from  [https://opengauss.org/en/download/](https://opengauss.org/en/download/). Ensure that the correct yum source is available.
+> -   Before the installation, you need to provide the openGauss binary installation package. After decompressing the package, place the package \(**openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2**\) in the  **dockerfiles/**<*version*\> folder. The binary package can be downloaded from  [https://opengauss.org/en/download/](https://opengauss.org/en/download/). Ensure that the correct yum source is available.
 >
 > -   If the  **-i**  option is not specified when you run the  **buildDockerImage.sh**  script, the SHA-256 check is performed by default. You need to manually write the check result to the  **sha256\_file\_amd64**  file.
 >    ```
     ## Modify the SHA-256 verification file.
-    cd /soft/openGauss-server/docker/dockerfiles/3.0.0
-    sha256sum openGauss-3.0.0-CentOS-64bit.tar.bz2 > sha256_file_amd64 
+    cd /soft/openGauss-server/docker/dockerfiles/6.0.0
+    sha256sum openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2 > sha256_file_amd64 
 >   ```
 
-> -   Before the installation, obtain the  **openEuler\_aarch64.repo**  file from Huawei open-source image website and save it to the  **openGauss-server-master/docker/dockerfiles/3.0.0**  folder. Run the following command to obtain the  **openEuler\_aarch64.repo**  file.
+> -   Before the installation, obtain the  **openEuler\_aarch64.repo**  file from Huawei open-source image website and save it to the  **openGauss-server-master/docker/dockerfiles/6.0.0**  folder. Run the following command to obtain the  **openEuler\_aarch64.repo**  file.
 
 >    ```
    wget -O openEuler_aarch64.repo https://mirrors.huaweicloud.com/repository/conf/openeuler_aarch64.repo
@@ -39,7 +39,7 @@ Usage: buildDockerImage.sh -v [version] [-i] [Docker build option]
 Builds a Docker Image for openGauss
 Parameters:
    -v: version to build
-       Choose one of: 3.0.0
+       Choose one of: 6.0.0
    -i: ignores the SHA-256 checksums
 
 LICENSE UPL 1.0
@@ -74,26 +74,26 @@ Specifies the database port. The default value is  **5432**.
 ## Starting an Instance
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 opengauss:6.0.0
 ```
 
 ## Connecting to the Database from the OS Layer
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p8888:5432 opengauss:2.0.0
-$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p8888
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p8888:5432 opengauss:6.0.0
+$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p8888  # OS need install gsql client
 ```
 
 ## Data Persistence
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:6.0.0
 ```
 
 >**Note**
 >
->1. For details about how to use a database of another version to build a container image, see the configuration file in `openGauss-server/docker/dockerfiles/3.0.0`. You only need to change the version number to the corresponding version number.
+>1. For details about how to use a database of another version to build a container image, see the configuration file in `openGauss-server/docker/dockerfiles/6.0.0`. You only need to change the version number to the corresponding version number.
 >
->2. If the `openeuler-20.03-lts:latest` image cannot be downloaded, download the container image package `openEuler-docker.aarch64.tar.xz` from the OpenEuler official website `http://121.36.97.194/openEuler-20.03-LTS/docker_img/aarch64/` and use `docker load -i openEuler-docker.aarch64.tar.xz` to import the package to the local image list.
+>2. If the `openeuler-20.03-lts:latest` image cannot be downloaded, download the container image package `openEuler-docker.aarch64.tar.xz` from the OpenEuler official website `https://repo.openeuler.org/openEuler-20.03-LTS/docker_img/aarch64/` and use `docker load -i openEuler-docker.aarch64.tar.xz` to import the package to the local image list.
 >
 >3. During the build, if the yum source download times out, check the proxy. You can also `--network host` to the end of the `docker build` command in the `buildDockerImage.sh` script to use the network of the host machine.
diff --git "a/content/docs-lite/zh/docs/AboutopenGauss/\344\274\201\344\270\232\347\272\247\345\242\236\345\274\272\347\211\271\346\200\247.md" "b/content/docs-lite/zh/docs/AboutopenGauss/\344\274\201\344\270\232\347\272\247\345\242\236\345\274\272\347\211\271\346\200\247.md"
index 6f12896f9f80d9f9c2dec4f99f6c5d61902ca678..e06e7b242598ad3df0266cd5f1177904fce023ab 100644
--- "a/content/docs-lite/zh/docs/AboutopenGauss/\344\274\201\344\270\232\347\272\247\345\242\236\345\274\272\347\211\271\346\200\247.md"
+++ "b/content/docs-lite/zh/docs/AboutopenGauss/\344\274\201\344\270\232\347\272\247\345\242\236\345\274\272\347\211\271\346\200\247.md"
@@ -113,8 +113,8 @@ openGauss支持:
 
 -   索引多版本
 
-    **图 3**  UBTree与BTree查找、更新比较示意图  
-    ![](figures/UBTree与BTree查找-更新比较示意图.png "UBTree与BTree查找-更新比较示意图")
+    **图 3**  UBtree与Btree查找、更新比较示意图  
+    ![](figures/UBTree与BTree查找-更新比较示意图.png "UBtree与Btree查找-更新比较示意图")
 
     通过在索引页面元组上维护版本信息,UBtree能够在索引层进行 MVCC 可见性检查。同时 UBtree 也能通过版本信息独立判断索引元组是否已经无效(Dead),进而使得 in-place update引擎能实现数据表以及索引表上页级的空间清理,并在此基础上构建不依赖 AutoVacuum 的独立垃圾回收机制。
 
diff --git "a/content/docs-lite/zh/docs/AboutopenGauss/\344\274\252\345\210\227ROWNUM.md" "b/content/docs-lite/zh/docs/AboutopenGauss/\344\274\252\345\210\227ROWNUM.md"
index d6dc316f6e61dba895b87e6a27da21daee18a39c..d48f2e31859c6a0c44db5be85a188d9306e19576 100644
--- "a/content/docs-lite/zh/docs/AboutopenGauss/\344\274\252\345\210\227ROWNUM.md"
+++ "b/content/docs-lite/zh/docs/AboutopenGauss/\344\274\252\345\210\227ROWNUM.md"
@@ -23,7 +23,9 @@ ROWNUM(伪列),给SQL查询中满足条件的记录按顺序标号得来
 
 ## 特性约束
 
--   ROWNUM是伪列,不可作为别名,以免SQL语句出现歧义;
+-   ROWNUM是伪列,不可作为别名,以免SQL语句出现歧义;
+-   创建表时列名不可为ROWNUM。例如:create table table\_name\(rownum int\);
+-   创建类型时列名不可为ROWNUM。例如:create type type\_name\(a int, rownum int\);
 -   创建索引时不可使用ROWNUM。例如:create index index\_name on table\(rownum\);
 -   创建表时default值不可为ROWNUM。例如:create table table\_name\(id int default rownum\);
 -   Where子句中不可使用rownum的别名。例如:select rownum rn from table where rn < 5;
diff --git "a/content/docs-lite/zh/docs/AboutopenGauss/\345\207\275\346\225\260\345\217\212\345\255\230\345\202\250\350\277\207\347\250\213\346\224\257\346\214\201.md" "b/content/docs-lite/zh/docs/AboutopenGauss/\345\207\275\346\225\260\345\217\212\345\255\230\345\202\250\350\277\207\347\250\213\346\224\257\346\214\201.md"
index 195a6e9f8ef0b041dfb88864b4315789263333ec..db3dab25523006e527ef36e4a50793c3dc7f1fd7 100644
--- "a/content/docs-lite/zh/docs/AboutopenGauss/\345\207\275\346\225\260\345\217\212\345\255\230\345\202\250\350\277\207\347\250\213\346\224\257\346\214\201.md"
+++ "b/content/docs-lite/zh/docs/AboutopenGauss/\345\207\275\346\225\260\345\217\212\345\255\230\345\202\250\350\277\207\347\250\213\346\224\257\346\214\201.md"
@@ -22,9 +22,11 @@ openGauss支持SQL标准中的函数及存储过程,其中存储过程兼容
 
 支持PL/SQL使用游标参数默认值。
 
+支持PL/SQL中通过ROWTYPE获取表、视图、游标中一行记录的类型。
+
 ## 特性约束
 
-无。
+不支持通过ROWTYPE获得嵌套游标的类型。
 
 ## 依赖关系
 
diff --git "a/content/docs-lite/zh/docs/AboutopenGauss/\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206.md" "b/content/docs-lite/zh/docs/AboutopenGauss/\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206.md"
index b5ccb33e84f281586c19de2a3d87e9d89513620d..7a0ebdcf3b4a3653e8ba48c9067df7dfbdcf848e 100644
--- "a/content/docs-lite/zh/docs/AboutopenGauss/\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206.md"
+++ "b/content/docs-lite/zh/docs/AboutopenGauss/\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206.md"
@@ -31,7 +31,7 @@
 当前版本主要实现对接华为云KMS服务,支持表级密钥存储,实现对行存表加密,规格约束如下:
 
 -   支持heap存储行存表加密。
--   不支持列存加密,不支持物化视图加密,不支持ustore存储引擎加密。
+-   不支持列存加密,不支持物化视图加密,不支持Ustore存储引擎加密。
 -   不支持索引和Sequence加密,不支持XLOG日志加密,不支持MOT内存表加密,不支持系统表加密。
 -   用户在创建表时可以指定加密算法,加密算法一旦指定不可更改。如果创建表时设置enable\_tde为on,但是不指定加密算法encrypt\_algo,则默认使用AES\_128\_CTR加密算法。
 -   如果在创建表时未开启加密功能或指定加密算法,后续无法再切换为加密表。
diff --git "a/content/docs-lite/zh/docs/DatabaseAdministrationGuide/\350\256\276\347\275\256\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206_TDE.md" "b/content/docs-lite/zh/docs/DatabaseAdministrationGuide/\350\256\276\347\275\256\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206_TDE.md"
index 4153a4919467b5fc34d1811f26ce290accc56d8c..e1d3bbb64037ffbcc43ceca61f11948a9359a907 100644
--- "a/content/docs-lite/zh/docs/DatabaseAdministrationGuide/\350\256\276\347\275\256\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206_TDE.md"
+++ "b/content/docs-lite/zh/docs/DatabaseAdministrationGuide/\350\256\276\347\275\256\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206_TDE.md"
@@ -14,7 +14,7 @@
 当前版本主要实现对接华为云KMS服务,支持表级密钥存储,实现对行存表加密,规格约束如下:
 
 -   支持heap存储行存表加密。
--   不支持列存表加密,不支持物化视图加密,不支持ustore存储引擎加密。
+-   不支持列存表加密,不支持物化视图加密,不支持Ustore存储引擎加密。
 -   不支持索引和Sequence加密,不支持XLOG日志加密,不支持MOT内存表加密,不支持系统表加密。
 -   用户在创建表时可以指定加密算法,加密算法一旦指定不可更改。如果创建表时设置enable\_tde为on,但是不指定加密算法encrypt\_algo,则默认使用AES\_128\_CTR加密算法。
 -   如果在创建表时未开启加密功能或指定加密算法,后续无法再切换为加密表。
diff --git "a/content/docs-lite/zh/docs/DatabaseOMGuide/\351\200\273\350\276\221\345\244\215\345\210\266\346\224\257\346\214\201DDL\346\223\215\344\275\234.md" "b/content/docs-lite/zh/docs/DatabaseOMGuide/\351\200\273\350\276\221\345\244\215\345\210\266\346\224\257\346\214\201DDL\346\223\215\344\275\234.md"
index 7d2081b7447c00481a2f0e2de3548d8151b08b5f..57b6f5dbd853e62a25af58d5825d88ec5fa48494 100644
--- "a/content/docs-lite/zh/docs/DatabaseOMGuide/\351\200\273\350\276\221\345\244\215\345\210\266\346\224\257\346\214\201DDL\346\223\215\344\275\234.md"
+++ "b/content/docs-lite/zh/docs/DatabaseOMGuide/\351\200\273\350\276\221\345\244\215\345\210\266\346\224\257\346\214\201DDL\346\223\215\344\275\234.md"
@@ -4,19 +4,34 @@
 
 openGauss在逻辑复制过程中支持如下DDL操作:
 
-- CREATE/DROP TABLE|TABLE PARTITION
-- CREATE/DROP INDEX
+- CREATE/DROP/ALTER/TRUNCATE/RENAME TABLE | TABLE PARTITION | TABLE SUBPARTITION
+- CREATE/ALTER/DROP INDEX
+- CREATE/ALTER/DROP VIEW
+- CREATE/ALTER/DROP/REFRESH [INCREMENTAL] MATERIALIZED VIEW
+- CREATE/ALTER/DROP TYPE
+- CREATE/ALTER/DROP FUNCTION
+- CREATE/ALTER/DROP PROCEDURE
+- CREATE/ALTER/DROP TRIGGER
+- CREATE/DROP PACKAGE
+- CREATE/DROP SCHEMA
+- CREATE/DROP SEQUENCE
+- COMMENT/GRANT/REVOKE
 
 
 ## 注意事项
 
 - 只支持行存表的DDL操作。
-- 不支持列存,ustore存储引擎。
+- TYPE仅支持复合类型和枚举类型。
+- 不支持列存,Ustore存储引擎。
 - 在订阅端手动删除表会导致DDL同步失败,发布订阅阻塞。
 - 不支持在对表进行相关的表结构操作中调用VOLATILE函数。
 
     >在为表增加一个字段并指定默认值中执行了VOLATILE函数,而这个函数中进行了创建表的DDL操作,这样在新增字段并为其计算默认值的过程中会因为调用VOLATILE函数写入其他DDL日志,导致后续在解码时读取到这个DDL日志时进行了重复的操作。
 
+- 在逻辑复制中使用ALTER TABLE时会有如下限制:
+    - 当ALTER TABLE修改表字段类型,使用USING子句设置字段值时,要求表上必须有replication identity字段,并且USING子句修改的表字段不为该标识符字段。
+    - 当ALTER TABLE修改或新增表字段为AUTO_INCREMENT自增列时,要求表上必须有replication identity字段,并且USING子句修改的表字段不为该标识符字段。
+    - 当ALTER TABLE新增表字段,并且表字段类型不为内置类型,即需要每个元组都重新计算其默认值,要求表上必须设置replication identity。
 
 ## 语法格式
 
diff --git a/content/docs-lite/zh/docs/DatabaseReference/PG_THREAD_WAIT_STATUS.md b/content/docs-lite/zh/docs/DatabaseReference/PG_THREAD_WAIT_STATUS.md
index a97e0d740ac4b823fcd02c77d04b141592973c79..3aa53ca3f7882c3693a1c6eb91d42b75d75c8386 100644
--- a/content/docs-lite/zh/docs/DatabaseReference/PG_THREAD_WAIT_STATUS.md
+++ b/content/docs-lite/zh/docs/DatabaseReference/PG_THREAD_WAIT_STATUS.md
@@ -128,7 +128,7 @@
 
 

wait reserve td

-

等待分配ustore事务槽。

+

等待分配Ustore事务槽。

diff --git "a/content/docs-lite/zh/docs/DatabaseReference/\344\270\273\346\234\215\345\212\241\345\231\250.md" "b/content/docs-lite/zh/docs/DatabaseReference/\344\270\273\346\234\215\345\212\241\345\231\250.md" index 7cf5ec563f88d29f10387a8a62011f8c59495ad9..d9221c1b29d6ba2e8d5180f0fd5e7bb4fdafec1e 100644 --- "a/content/docs-lite/zh/docs/DatabaseReference/\344\270\273\346\234\215\345\212\241\345\231\250.md" +++ "b/content/docs-lite/zh/docs/DatabaseReference/\344\270\273\346\234\215\345\212\241\345\231\250.md" @@ -115,6 +115,21 @@ gs_guc reload -Z datanode -D @DN_PATH@ -c "synchronous_standby_names='ANY 1(AZ1, **默认值**:0 +## enable_vacuum_extreme_xmin + +**参数说明**: 使用极限xmin进行vacuum。 +打开此参数时将实时计算最新的xmin进行vacuum,能最大限度将已提交的数据设置为完全可见,提升扫描性能,但在高并发场景打开此参数会一定程度上增加ProcArrayLock争抢。 + +因此建议在压测的数据准备阶段或导入、生成了大量数据后,需要对表进行vacuum时先打开此参数,完成vacuum操作后将其关闭。 打开此参数后 vacuum_defer_cleanup_age 参数依然会生效。 + +该参数属于SIGHUP类型参数,请参考[表1](重设参数.md#zh-cn_topic_0237121562_zh-cn_topic_0059777490_t91a6f212010f4503b24d7943aed6d846)中对应设置方法进行设置。 + +**取值范围**: +- on: 开启。 +- off: 关闭。 + +**默认值**:off + ## data\_replicate\_buffer\_size **参数说明**: 发送端与接收端传递数据页时,队列占用内存的大小。此参数会影响主备之间复制的缓冲大小。 diff --git "a/content/docs-lite/zh/docs/DatabaseReference/\345\205\266\345\256\203\351\200\211\351\241\271.md" "b/content/docs-lite/zh/docs/DatabaseReference/\345\205\266\345\256\203\351\200\211\351\241\271.md" index 5489c6a4a43d18a7ac7cae76a024fc4848a87e3a..2c023ccaf8331c12cd09e1e4e6ee26b11d55079e 100644 --- "a/content/docs-lite/zh/docs/DatabaseReference/\345\205\266\345\256\203\351\200\211\351\241\271.md" +++ "b/content/docs-lite/zh/docs/DatabaseReference/\345\205\266\345\256\203\351\200\211\351\241\271.md" @@ -22,7 +22,7 @@ ## reserve\_space\_for\_nullable\_atts -**参数说明**: 指定是否为Ustore表的可空属性预留空间。该参数为on时默认为ustore表的可空属性预留空间。 +**参数说明**: 指定是否为Ustore表的可空属性预留空间。该参数为on时默认为Ustore表的可空属性预留空间。 该参数属于USERSET类型,请参考[表1](../DatabaseAdministrationGuide/参数设置.md#zh-cn_topic_0283137176_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t91a6f212010f4503b24d7943aed6d846)中对应设置方法进行设置。 diff --git "a/content/docs-lite/zh/docs/DatabaseReference/\345\233\236\346\273\232\347\233\270\345\205\263\345\217\202\346\225\260.md" "b/content/docs-lite/zh/docs/DatabaseReference/\345\233\236\346\273\232\347\233\270\345\205\263\345\217\202\346\225\260.md" index 1fc2557280b391a64c7f69ddf51d5d1548a58614..d164db022b1336def7218b5de30d297adef53144 100644 --- "a/content/docs-lite/zh/docs/DatabaseReference/\345\233\236\346\273\232\347\233\270\345\205\263\345\217\202\346\225\260.md" +++ "b/content/docs-lite/zh/docs/DatabaseReference/\345\233\236\346\273\232\347\233\270\345\205\263\345\217\202\346\225\260.md" @@ -20,6 +20,9 @@ **默认值**: 256GB + >![](public_sys-resources/icon-note.gif) **说明:** + >设置该参数时接受的输入以8KB为单位,如设置值为800MB时,输入的参数为102400,设置值为16TB时,输入的参数为2147483647。 + ## undo\_limit\_size\_per\_transaction **参数说明**:s 用于控制单事务undo分配空间阈值,达到阈值时事务报错回滚。 @@ -30,4 +33,7 @@ **默认值**: 32GB + >![](public_sys-resources/icon-note.gif) **说明:** + >设置该参数时接受的输入以8KB为单位,如设置值为2MB时,输入的参数为256,设置值为16TB时,输入的参数为2147483647。 + **备注**:该参数已弃用 \ No newline at end of file diff --git "a/content/docs-lite/zh/docs/DatabaseReference/\345\271\263\345\217\260\345\222\214\345\256\242\346\210\267\347\253\257\345\205\274\345\256\271\346\200\247.md" "b/content/docs-lite/zh/docs/DatabaseReference/\345\271\263\345\217\260\345\222\214\345\256\242\346\210\267\347\253\257\345\205\274\345\256\271\346\200\247.md" index e36bb55c3a6a732cbb59d1f62d9616b997e2bcfe..d0ad65d448a814873d2b2d9c5cd2ca3ffd287d49 100644 --- "a/content/docs-lite/zh/docs/DatabaseReference/\345\271\263\345\217\260\345\222\214\345\256\242\346\210\267\347\253\257\345\205\274\345\256\271\346\200\247.md" +++ "b/content/docs-lite/zh/docs/DatabaseReference/\345\271\263\345\217\260\345\222\214\345\256\242\346\210\267\347\253\257\345\205\274\345\256\271\346\200\247.md" @@ -503,6 +503,46 @@ INFO: invoke prior function float_as_numeric 在A兼容模式下,开启此参数后,FLOAT[(p)]映射至numeric,此时精度p为二进制精度,p取值范围为[1,126]。

+

disable_record_type_in_dml

+

禁止虚拟列插入配置项。开启此项后禁止在insert语句中使用record类型变量作为插入值。

+

+create table t1(col1 varchar(10),col varchar(10));
+create table t2(col1 varchar(10),col varchar(10));
+set behavior_compat_options='disable_record_type_in_dml';
+insert into t1 values('one','two');
+declare
+  cursor cur1 is select * from t1;
+  source cur1%rowtype:=('ten','wtu');
+begin
+  for source in cur1
+  loop
+    raise notice '%',source;
+    insert into t2 values(source);
+  end loop; 
+end;
+/
+ERROR:  The record type variable cannot be used as an insertion value.
+CONTEXT:  SQL statement "insert into t2 values(source)"
+PL/pgSQL function inline_code_block line 7 at SQL statement
+
+set behavior_compat_options='';
+insert into t1 values('one','two');
+declare
+  cursor cur1 is select * from t1;
+  source cur1%rowtype:=('ten','wtu');
+begin
+  for source in cur1
+  loop
+    raise notice '%',source;
+    insert into t2 values(source);
+  end loop; 
+end;
+/
+NOTICE:  (one,two)
+NOTICE:  (one,two)
+
+
+
 
 
 
diff --git "a/content/docs-lite/zh/docs/DatabaseReference/\345\274\200\345\217\221\344\272\272\345\221\230\351\200\211\351\241\271.md" "b/content/docs-lite/zh/docs/DatabaseReference/\345\274\200\345\217\221\344\272\272\345\221\230\351\200\211\351\241\271.md"
index 9c3a5dfa454b789ebd7ca0c6a826a3b8c8589727..9a5f01e6f58a2dcf9ecafd32050c76fb060adc50 100644
--- "a/content/docs-lite/zh/docs/DatabaseReference/\345\274\200\345\217\221\344\272\272\345\221\230\351\200\211\351\241\271.md"
+++ "b/content/docs-lite/zh/docs/DatabaseReference/\345\274\200\345\217\221\344\272\272\345\221\230\351\200\211\351\241\271.md"
@@ -352,7 +352,7 @@
 
 ## ustore\_attr
 
-**参数说明**: 该参数主要用来控制USTORE存储引擎表的信息统计,回滚类型,重点模块\(包括数据、索引、回滚段、回放等\)运行时数据的校验,主要用于协助研发问题定位。
+**参数说明**: 该参数主要用来控制Ustore存储引擎表的信息统计,回滚类型,重点模块\(包括数据、索引、回滚段、回放等\)运行时数据的校验,主要用于协助研发问题定位。
 
 该参数属于USERSET类型参数,请参考[表1](../DatabaseAdministrationGuide/参数设置.md#zh-cn_topic_0283137176_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t91a6f212010f4503b24d7943aed6d846)中对应设置方法进行设置。
 
@@ -453,7 +453,7 @@ ustore\_attr='ustore\_verify\_level=FAST;ustore\_verify\_module=UPAGE:UBTREE:UND
   
 
 
-  **默认值**: UPAGE:UBTREE:UNDO
+  **默认值**: UPAGE:UBTREE
 
 - index\_trace\_level:控制开启索引追踪并控制打印级别,开启后在索引扫描的过程中,会根据不同的打印级别对符合条件的索引元组的信息进行打印。
 
@@ -508,25 +508,25 @@ ustore\_attr='ustore\_verify\_level=FAST;ustore\_verify\_module=UPAGE:UBTREE:UND
 
   备注:该参数已弃用
 
-- enable\_ustore\_sync\_rollback:控制USTORE表是否开启同步回滚。
+- enable\_ustore\_sync\_rollback:控制Ustore表是否开启同步回滚。
 
   **取值范围**:布尔值
 
   **默认值**:true
 
-- enable\_ustore\_async\_rollback:控制USTORE表是否开启异步回滚。
+- enable\_ustore\_async\_rollback:控制Ustore表是否开启异步回滚。
 
   **取值范围**:布尔值
 
   **默认值**:true
 
-- enable\_ustore\_page\_rollback:控制USTORE表是否开启页面回滚。
+- enable\_ustore\_page\_rollback:控制Ustore表是否开启页面回滚。
 
   **取值范围**:布尔值
 
   **默认值**:true
 
-- enable\_ustore\_partial\_seqscan:是否允许USTORE表开启部分扫描。
+- enable\_ustore\_partial\_seqscan:是否允许Ustore表开启部分扫描。
 
   **取值范围**:布尔值
 
@@ -538,13 +538,13 @@ ustore\_attr='ustore\_verify\_level=FAST;ustore\_verify\_module=UPAGE:UBTREE:UND
 
   **默认值**:false
 
-- ustats\_tracker\_naptime:控制USTORE表统计信息周期。
+- ustats\_tracker\_naptime:控制Ustore表统计信息周期。
 
   **取值范围**:1\~INT\_MAX/1000
 
   **默认值**:20, 单位\(秒\)
 
-- umax\_search\_length\_for\_prune:控制USTORE表prune操作搜索的最大深度。
+- umax\_search\_length\_for\_prune:控制Ustore表prune操作搜索的最大深度。
 
   **取值范围**:1\~INT\_MAX/1000
 
@@ -561,7 +561,7 @@ ustore\_attr='ustore\_verify\_level=FAST;ustore\_verify\_module=UPAGE:UBTREE:UND
 >![](public_sys-resources/icon-caution.gif) **注意:** 
 >
 >+ ustore\_attr参数设置请慎重,建议在工程师协助下修改。
->+ 该参数只适用于集中式或者openGauss单机上的USTORE存储引擎表。
+>+ 该参数只适用于集中式或者openGauss单机上的Ustore存储引擎表。
 
 ## float\_suffix\_acceptance
 
diff --git "a/content/docs-lite/zh/docs/DatabaseReference/\345\275\222\346\241\243.md" "b/content/docs-lite/zh/docs/DatabaseReference/\345\275\222\346\241\243.md"
index 51059873a64c6c6dded17f8ebdce5bba3da9f5e0..cb67dc471e6fa18329ed836794ad1f9b643a7870 100644
--- "a/content/docs-lite/zh/docs/DatabaseReference/\345\275\222\346\241\243.md"
+++ "b/content/docs-lite/zh/docs/DatabaseReference/\345\275\222\346\241\243.md"
@@ -101,7 +101,7 @@
 
 ## time_to_target_rpo
 **参数说明**:
-双数据库实例异地灾备模式下,设置主数据库实例发生异常发生时到已归档到OBS的恢复点所允许的time_to_target_rpo秒。
+双数据库实例异地灾备模式下,设置主数据库实例异常发生时到已归档到OBS的恢复点所允许的时间。
 
 该参数属于SIGHUP类型参数,请参考[表1](../DatabaseAdministrationGuide/参数设置.md#zh-cn_topic_0283137176_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t91a6f212010f4503b24d7943aed6d846)中对应设置方法进行设置。
 
@@ -109,9 +109,9 @@
 
 双数据库实例异地灾备模式下,主数据库实例日志将被归档到OBS。
 
-0是指不开启日志流控,
+-   0是指不开启日志流控。
 
-1~3600是指设置主数据库实例发生异常发生时到已归档到OBS的恢复点所允许的time_to_target_rpo秒,保证主数据库实例因灾难崩溃时,最多可能丢失的数据的时长在允许范围内。
+-   1~3600是指设置主数据库实例异常发生时到已归档到OBS的恢复点所允许的时间,保证主数据库实例因灾难崩溃时,最多可能丢失的数据的时长在允许范围内。
 
 time_to_target_rpo设置时间过小会影响主机的性能,设置过大会失去流控效果。
 
diff --git "a/content/docs-lite/zh/docs/DatabaseReference/\351\227\252\345\233\236\347\233\270\345\205\263\345\217\202\346\225\260.md" "b/content/docs-lite/zh/docs/DatabaseReference/\351\227\252\345\233\236\347\233\270\345\205\263\345\217\202\346\225\260.md"
index 712a1551fcacde75a200c19bbe8cf869083fd7bd..c02a4c928ddc38396943b8aa244c41ce5ec4b95e 100644
--- "a/content/docs-lite/zh/docs/DatabaseReference/\351\227\252\345\233\236\347\233\270\345\205\263\345\217\202\346\225\260.md"
+++ "b/content/docs-lite/zh/docs/DatabaseReference/\351\227\252\345\233\236\347\233\270\345\205\263\345\217\202\346\225\260.md"
@@ -56,7 +56,7 @@
 
 该参数属于SIGHUP类型参数,请参考[表1](../DatabaseAdministrationGuide/参数设置.md#zh-cn_topic_0283137176_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t91a6f212010f4503b24d7943aed6d846)中对应设置方法进行设置。
 
-**取值范围**:整型,单位为s,最小值为0,最大值为2147483647。
+**取值范围**:整型,单位为s,最小值为0,最大值为259200。
 
 **默认值**:0
 
diff --git a/content/docs-lite/zh/docs/ExtensionReference/dolphin-CREATE-INDEX.md b/content/docs-lite/zh/docs/ExtensionReference/dolphin-CREATE-INDEX.md
index 8287f38f904788b9706691da50aa4099d9359d29..b666af0c54f5fbedc0ceb48a63137321f91276cc 100644
--- a/content/docs-lite/zh/docs/ExtensionReference/dolphin-CREATE-INDEX.md
+++ b/content/docs-lite/zh/docs/ExtensionReference/dolphin-CREATE-INDEX.md
@@ -64,7 +64,7 @@
     前缀键将取指定字段数据的前缀作为索引键值,可以减少索引占用的存储空间。含有前缀键字段的过滤条件和连接条件可以使用索引。
 
     >![](public_sys-resources/icon-note.png) **说明:**
-    > -  前缀键支持的索引方法:btree、ubtree。
+    > -  前缀键支持的索引方法:Btree、UBtree。
     > -  前缀键的字段的数据类型必须是二进制类型或字符类型(不包括特殊字符类型)。
     > -  前缀长度必须是不超过2676的正整数,并且不能超过字段的最大长度。对于二进制类型,前缀长度以字节数为单位。对于非二进制字符类型,前缀长度以字符数为单位。键值的实际长度受内部页面限制,若字段中含有多字节字符、或者一个索引上有多个键,索引行长度可能会超限,导致报错,设定较长的前缀长度时请考虑此情况。
     > -  CREATE INDEX语法中,不支持以下关键字作为前缀键的字段名称:COALESCE、CONVERT、DAYOFMONTH、DAYOFWEEK、DAYOFYEAR、DB_B_FORMAT、EXTRACT、GREATEST、HOUR_P、IFNULL、LEAST、LOCATE、MICROSECOND_P、MID、MINUTE_P、NULLIF、NVARCHAR、NVL、OVERLAY、POSITION、QUARTER、SECOND_P、SUBSTR、SUBSTRING、TEXT_P、TIME、TIMESTAMP、TIMESTAMPDIFF、TREAT、TRIM、WEEKDAY、WEEKOFYEAR、XMLCONCAT、XMLELEMENT、XMLEXISTS、XMLFOREST、XMLPARSE、XMLPI、XMLROOT、XMLSERIALIZE。若含有上述关键字的前缀键所在的索引是通过ALTER TABLE或CREATE TABLE语法创建的,导出的CREATE INDEX语句可能无法成功执行,请尽量不要使用上述关键字作为前缀键的列名称。
diff --git a/content/docs-lite/zh/docs/ExtensionReference/dolphin-CREATE-TABLE-PARTITION.md b/content/docs-lite/zh/docs/ExtensionReference/dolphin-CREATE-TABLE-PARTITION.md
index c45f4db3d905249f548770fe661441ec994a8d67..86e6b2267d9a02b31e6082b9dd5c6105cf151f39 100644
--- a/content/docs-lite/zh/docs/ExtensionReference/dolphin-CREATE-TABLE-PARTITION.md
+++ b/content/docs-lite/zh/docs/ExtensionReference/dolphin-CREATE-TABLE-PARTITION.md
@@ -140,7 +140,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
 - 其中`col_name ( length )`为前缀键,column_name为前缀键的字段名,length为前缀长度。前缀键将取指定字段数据的前缀作为索引键值,可以减少索引占用的存储空间。含有前缀键字段的过滤条件和连接条件可以使用索引。
   
     >![](public_sys-resources/icon-note.png) **说明:** 
-    >-  前缀键支持的索引方法:btree、ubtree。
+    >-  前缀键支持的索引方法:Btree、UBtree。
     >-  前缀键的字段的数据类型必须是二进制类型或字符类型(不包括特殊字符类型)。
     >-  前缀长度必须是不超过2676的正整数,并且不能超过字段的最大长度。对于二进制类型,前缀长度以字节数为单位。对于非二进制字符类型,前缀长度以字符数为单位。键值的实际长度受内部页面限制,若字段中含有多字节字符、或者一个索引上有多个键,索引行长度可能会超限,导致报错,设定较长的前缀长度时请考虑此情况。
 
@@ -266,7 +266,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
          指定存储引擎类型,该参数设置成功后就不再支持修改。
     
         取值范围:
-        - USTORE,表示表支持Inplace-Update存储引擎。特别需要注意,使用USTORE表,必须要开启track\_counts和track\_activities参数,否则会引起空间膨胀。
+        - USTORE,表示表支持Inplace-Update存储引擎。
         - ASTORE,表示表支持Append-Only存储引擎。
         - 默认值,不指定表时,默认是Append-Only存储。
     
@@ -294,7 +294,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
     
     - segment
     
-      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持ustore存储引擎。
+      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持Ustore存储引擎。
     
       取值范围:on/off
     
diff --git a/content/docs-lite/zh/docs/ExtensionReference/dolphin-USE-DB_NAME.md b/content/docs-lite/zh/docs/ExtensionReference/dolphin-USE-DB_NAME.md
index 513b4096e4e64f9be8402ac8f0236cff20c31280..7218114dea4df33b08b265543235e33d4b4c25e8 100644
--- a/content/docs-lite/zh/docs/ExtensionReference/dolphin-USE-DB_NAME.md
+++ b/content/docs-lite/zh/docs/ExtensionReference/dolphin-USE-DB_NAME.md
@@ -2,7 +2,7 @@
 
 ## 功能描述
 
-USE db_name语句将db_name数据库作为默认(当前)数据库使用,用于后续语句。该数据库保持为默认数据库,直到语段的结尾,或者直到发布一个不同的USE语句。
+USE db_name语句将db_name的模式schema作为默认(当前)模式使用,用于后续语句。该模式保持为默认模式,直到语段的结尾,或者直到发布一个不同的USE语句。
 
 ## 注意事项
 
@@ -18,12 +18,12 @@ USE db_name
 
 - **db_name**
 
-  ​    数据库名。
+  ​    模式名。
 
 ## 示例
 
 ```
---切换到db1库
+--切换到db1 schema
 openGauss=# USE db1;
 SET
 openGauss=# CREATE TABLE test(a text);
@@ -31,7 +31,7 @@ CREATE TABLE
 openGauss=# INSERT INTO test VALUES('db1');
 INSERT 0 1
 
---切换到db2库
+--切换到db2 schema
 openGauss=# USE db2;
 SET
 openGauss=# CREATE TABLE test(a text);
@@ -56,7 +56,7 @@ openGauss=# select a from test;
  db2
 (1 row)
 
---切换到db1库
+--切换到db1 schema
 openGauss=# USE db1;
 SET
 openGauss=# select a from test;
diff --git a/content/docs-lite/zh/docs/GettingStarted/ODBC.md b/content/docs-lite/zh/docs/GettingStarted/ODBC.md
index 3f93b97c7af9b319e39a11afa71db44e58cd3df7..79ac710a105fde02022fa37323ee2ecaca08e337 100644
--- a/content/docs-lite/zh/docs/GettingStarted/ODBC.md
+++ b/content/docs-lite/zh/docs/GettingStarted/ODBC.md
@@ -50,13 +50,13 @@ Windows系统自带ODBC驱动程序管理器,在控制面板-\>管理工具中
 
 ## Linux下的ODBC包
 
-从发布包中获取,包名为openGauss-\*.\*.0-ODBC.tar.gz。Linux环境下,开发应用程序要用到unixODBC提供的头文件(sql.h、sqlext.h等)和库libodbc.so。这些头文件和库可从unixODBC-2.3.9的安装包中获得。
+从发布包中获取,包名为openGauss-\*.\*.0-ODBC.tar.gz。Linux环境下,开发应用程序要用到unixODBC提供的头文件(sql.h、sqlext.h等)和库libodbc.so。这些头文件和库可从unixODBC-x.x.x的安装包中获得。
 
 ## 配置数据源
 
 将openGauss提供的ODBC DRIVER(psqlodbcw.so)配置到数据源中便可使用。配置数据源需要配置“odbc.ini”和“odbcinst.ini”两个文件(在编译安装unixODBC过程中生成且默认放在“/usr/local/etc”目录下),并在服务器端进行配置。
 
-1.  获取unixODBC-2.3.9源码包。
+1.  获取unixODBC-x.x.x源码包。
 
     获取参考地址:http://www.unixodbc.org/download.html
 
diff --git "a/content/docs-lite/zh/docs/GettingStarted/\344\272\206\350\247\243openGauss.md" "b/content/docs-lite/zh/docs/GettingStarted/\344\272\206\350\247\243openGauss.md"
index b9a9d4a938cd7ea02b670c638aa85f0d07a3e308..a5fe5ace298d2ec6bbbcba9b4ea2dba5861eee6d 100644
--- "a/content/docs-lite/zh/docs/GettingStarted/\344\272\206\350\247\243openGauss.md"
+++ "b/content/docs-lite/zh/docs/GettingStarted/\344\272\206\350\247\243openGauss.md"
@@ -23,7 +23,7 @@ openGauss是一款全面友好开放,携手伙伴共同打造的企业级开
         -   提供了面向多核架构的并发控制技术,结合鲲鹏硬件优化方案,在两路鲲鹏下,TPCC Benchmark可以达到150万tpmc的性能。
         -   针对当前硬件多核numa的架构趋势, 在内核关键结构上采用了Numa-Aware的数据结构。
         -   提供Sql-bypass智能快速引擎技术。
-        -   针对数据频繁更新的场景,提供ustore存储引擎。
+        -   针对数据频繁更新的场景,提供Ustore存储引擎。
 
     -   高可用
         -   支持主备同步、异步以及级联备机多种部署模式。
diff --git a/content/docs-lite/zh/docs/SQLReference/ALTER-TABLE-PARTITION.md b/content/docs-lite/zh/docs/SQLReference/ALTER-TABLE-PARTITION.md
index 14a08326c8847a88c5d8967f87cf649938042715..17415ac7fee5a143ed7d727052d79b60f21d2c07 100644
--- a/content/docs-lite/zh/docs/SQLReference/ALTER-TABLE-PARTITION.md
+++ b/content/docs-lite/zh/docs/SQLReference/ALTER-TABLE-PARTITION.md
@@ -94,7 +94,7 @@
 
     >![](public_sys-resources/icon-caution.gif) **注意:** 
     >```
-    >USTORE存储引擎表不支持在事务块中执行ALTER TABLE MERGE PARTITIONS的操作。
+    >Ustore存储引擎表不支持在事务块中执行ALTER TABLE MERGE PARTITIONS的操作。
     >```
 
     -   modify\_clause子语法用于设置分区索引是否可用。
diff --git a/content/docs-lite/zh/docs/SQLReference/ALTER-TABLE.md b/content/docs-lite/zh/docs/SQLReference/ALTER-TABLE.md
index 5586aab190f3ef35113d1dc0917c8f622b537068..73fc3f561bc3fa3fa1275d56c696d232e499c7d8 100644
--- a/content/docs-lite/zh/docs/SQLReference/ALTER-TABLE.md
+++ b/content/docs-lite/zh/docs/SQLReference/ALTER-TABLE.md
@@ -170,7 +170,7 @@
   >
   >    在逻辑复制场景,解析该表的UPDATE和DELETE操作语句时,解析出的旧元组由以此方法记录的信息组成。对于有主键表该选项可设置为DEFAULT或FULL。对于无主键表该选项需设置为FULL,否则解码时旧元组将解析为空。一般场景不建议设置为NOTHING,旧元组会始终解析为空。
   >
-  >    即使指定DEFAULT或USING INDEX,当前ustore表列的旧值中也可能包含该行所有列的旧值,只有旧值涉及toast该配置选项才会生效。另外针对ustore表,选项NOTHING无效,实际效果等同于FULL。
+  >    即使指定DEFAULT或USING INDEX,当前Ustore表列的旧值中也可能包含该行所有列的旧值,只有旧值涉及toast该配置选项才会生效。另外针对Ustore表,选项NOTHING无效,实际效果等同于FULL。
   >
   >  - **AUTO\_INCREMENT \[ = \] value**
   >
@@ -477,7 +477,7 @@
     >
     >在ADD CONSTRAINT操作中:
     >-   USING method仅在B模式数据库下(即sql\_compatibility = 'B')支持,其他模式数据库下不支持。
-    >-   在B模式下,未指定USING method时,对于ASTORE的存储方式,默认索引方法为btree;对于USTORE的存储方式,默认索引方法为ubtree。
+    >-   在B模式下,未指定USING method时,对于Astore的存储方式,默认索引方法为btree;对于Ustore的存储方式,默认索引方法为ubtree。
 
 -   **ASC | DESC**
 
@@ -684,7 +684,7 @@
     为表或索引指定一个可选的存储参数,详见[CREATE TABLE](CREATE-TABLE.md)语法相关字段的介绍。
     > ![](public_sys-resources/icon-note.gif) **说明:** 
     >
-    > -   行存表支持修改行存压缩参数,包括COMPRESSTYPE、COMPRESS\_LEVEL、COMPRESS\_CHUNK_SIZE、COMPRESS_PREALLOC_CHUNKS、COMPRESS_BYTE_CONVERT、COMPRESS_DIFF_CONVERT,修改会对表做重建,修改后对原有数据、修改对已有数据、变更数据、新增数据同时生效。(仅支持ASTORE和USTORE下的普通表和分区表)
+    > -   行存表支持修改行存压缩参数,包括COMPRESSTYPE、COMPRESS\_LEVEL、COMPRESS\_CHUNK_SIZE、COMPRESS_PREALLOC_CHUNKS、COMPRESS_BYTE_CONVERT、COMPRESS_DIFF_CONVERT,修改会对表做重建,修改后对原有数据、修改对已有数据、变更数据、新增数据同时生效。(仅支持Astore和Ustore下的普通表和分区表)
     > -   修改行存压缩参数时,修改后的行存压缩参数需要满足建表时各行存压缩参数的数据范围和参数间的约束。
     > -   分区表不支持修改分区级别的行存压缩参数,只能修改整个表的行存压缩属性,修改对所有分区生效。
     > -   修改行存压缩参数时会重写整个表,期间对表加八级锁。
diff --git a/content/docs-lite/zh/docs/SQLReference/CREATE-INDEX.md b/content/docs-lite/zh/docs/SQLReference/CREATE-INDEX.md
index 1aafb566734a16a31e6530297f06b055a31a5608..fd765b603760d985d146cdfa42fa2af1f58f8443 100644
--- a/content/docs-lite/zh/docs/SQLReference/CREATE-INDEX.md
+++ b/content/docs-lite/zh/docs/SQLReference/CREATE-INDEX.md
@@ -24,6 +24,7 @@
 -   被授予CREATE ANY INDEX权限的用户,可以在public模式和用户模式下创建索引。
 -   如果表达式索引中调用的是用户自定义函数,按照函数创建者权限执行表达式索引函数。
 -   仅支持在B兼容性数据库下指定COMMENT。
+-   当前不支持在JSONB类型的数据上创建UBtree索引。
 
 ## 语法格式
 
@@ -111,9 +112,9 @@
     -   gin:GIN索引是倒排索引,可以处理包含多个键的值(比如数组)。
     -   gist:Gist索引适用于几何和地理等多维数据类型和集合数据类型。目前支持的数据类型有box、point、poly、circle、tsvector、tsquery、range。
     -   Psort:Psort索引。针对列存表进行局部排序索引。
-    -   ubtree:仅供ustore表使用的多版本B-tree索引,索引页面上包含事务信息,能并自主回收页面。ubtree索引默认开启insertpt功能。
+    -   ubtree:仅供Ustore表使用的多版本B-tree索引,索引页面上包含事务信息,能并自主回收页面。ubtree索引默认开启insertpt功能。
 
-    行存表(ASTORE存储引擎)支持的索引类型:btree(行存表缺省值)、hash、gin、gist。行存表(USTORE存储引擎)支持的索引类型:ubtree。列存表支持的索引类型:Psort(列存表缺省值)、btree、gin。全局临时表不支持GIN索引和Gist索引。
+    行存表(Astore存储引擎)支持的索引类型:btree(行存表缺省值)、hash、gin、gist。行存表(Ustore存储引擎)支持的索引类型:ubtree。列存表支持的索引类型:Psort(列存表缺省值)、btree、gin。全局临时表不支持GIN索引和Gist索引。
 
     >![](public_sys-resources/icon-note.gif) **说明:** 
     >
diff --git a/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE-INHERITS.md b/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE-INHERITS.md
index db6f17ba5767ab8e82f96ccbd71fbf4caf45bea2..e58bb7f853222a86a47ca06423a28284d4868c78 100644
--- a/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE-INHERITS.md
+++ b/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE-INHERITS.md
@@ -21,7 +21,7 @@
 
 -   继承表功能和mysql的多表更新功能冲突,不可以在B库建继承表。
 -   不支持继承和分区表或者MOT表(及其他外表)同时存在的情况。
--   支持ustore和段页式,但这两种情况不能使用"like fathername including all"语句。
+-   支持Ustore和段页式,但这两种情况不能使用"like fathername including all"语句。
 -   列存不支持继承表。
 
 ## 语法格式
diff --git a/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE-PARTITION.md b/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE-PARTITION.md
index 02a97f41f5705023a6d15687df767a8c5b812633..228e2a1c30b10af1be08079c72b9ce6942988d52 100644
--- a/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE-PARTITION.md
+++ b/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE-PARTITION.md
@@ -202,7 +202,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
     >![](public_sys-resources/icon-notice.gif) **须知:** 
     >
     >-   USING method仅在B模式数据库下(即sql\_compatibility = 'B')支持,其他模式数据库下不支持。
-    >-   在B模式下,未指定USING method时,对于ASTORE的存储方式,默认索引方法为btree;对于USTORE的存储方式,默认索引方法为ubtree。
+    >-   在B模式下,未指定USING method时,对于Astore的存储方式,默认索引方法为btree;对于Ustore的存储方式,默认索引方法为ubtree。
 
 -   **ASC | DESC**
 
@@ -270,7 +270,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
             
     -   COMPRESSTYPE
 
-        行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持ASTORE和USTORE下的普通表和分区表)
+        行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持Astore和Ustore下的普通表和分区表)
 
         取值范围:0\~2,默认值为0。
 
@@ -315,7 +315,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
 
     取值范围:
 
-    -   USTORE,表示表支持Inplace-Update存储引擎。特别需要注意,使用USTORE表,必须要开启track\_counts和track\_activities参数,否则会引起空间膨胀。
+    -   USTORE,表示表支持Inplace-Update存储引擎。
     -   ASTORE,表示表支持Append-Only存储引擎。
 
     默认值:
@@ -346,7 +346,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
 
 -   segment
 
-    使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持ustore存储引擎。
+    使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持Ustore存储引擎。
 
     取值范围:on/off
 
diff --git a/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE.md b/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE.md
index 93e9d546e031775cafc55f3af58858beac3db8fd..269c68512444d27e716e69b09c95987dd6b70a46 100644
--- a/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE.md
+++ b/content/docs-lite/zh/docs/SQLReference/CREATE-TABLE.md
@@ -172,7 +172,7 @@ CREATE [ [ GLOBAL | LOCAL ] [ TEMPORARY | TEMP ] | UNLOGGED ] TABLE [ IF NOT EXI
     >![](public_sys-resources/icon-notice.gif) **须知:** 
     >
     >-   USING method仅在B模式数据库下(即sql\_compatibility = 'B')支持,其他模式数据库下不支持。
-    >-   在B模式下,未指定USING method时,对于ASTORE的存储方式,默认索引方法为btree;对于USTORE的存储方式,默认索引方法为ubtree。
+    >-   在B模式下,未指定USING method时,对于Astore的存储方式,默认索引方法为btree;对于Ustore的存储方式,默认索引方法为ubtree。
 
 -   **ASC | DESC**
 
@@ -331,7 +331,7 @@ CREATE [ [ GLOBAL | LOCAL ] [ TEMPORARY | TEMP ] | UNLOGGED ] TABLE [ IF NOT EXI
 
       取值范围:
 
-      -   USTORE,表示表支持Inplace-Update存储引擎。特别需要注意,使用USTORE表,必须要开启track\_counts和track\_activities参数,否则会引起空间膨胀。
+      -   USTORE,表示表支持Inplace-Update存储引擎。
       -   ASTORE,表示表支持Append-Only存储引擎。
 
       默认值:
@@ -360,7 +360,7 @@ CREATE [ [ GLOBAL | LOCAL ] [ TEMPORARY | TEMP ] | UNLOGGED ] TABLE [ IF NOT EXI
 
   -   COMPRESSTYPE
 
-      行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持ASTORE和USTORE下的普通表和分区表)
+      行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持Astore和Ustore下的普通表和分区表)
 
       取值范围:0\~2,默认值为0。
 
@@ -419,7 +419,7 @@ CREATE [ [ GLOBAL | LOCAL ] [ TEMPORARY | TEMP ] | UNLOGGED ] TABLE [ IF NOT EXI
 
   - segment
 
-      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持ustore存储引擎。
+      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持Ustore存储引擎。
 
       取值范围:on/off
 
diff --git "a/content/docs-lite/zh/docs/SQLReference/SET\347\261\273\345\236\213.md" "b/content/docs-lite/zh/docs/SQLReference/SET\347\261\273\345\236\213.md"
index 4bc848d958d3755a7daf0f83c7d73ec8f6a417f0..401a3142143a6233c6e4e0372e56a36f1625f949 100644
--- "a/content/docs-lite/zh/docs/SQLReference/SET\347\261\273\345\236\213.md"
+++ "b/content/docs-lite/zh/docs/SQLReference/SET\347\261\273\345\236\213.md"
@@ -12,7 +12,7 @@ SET类型是一种包含字符串成员的集合类型,在表字段创建时
 6.  不支持SET类型作为列存表字段的数据类型。
 7.  不支持SET类型作为分区表的分区键。
 8.  DROP TYPE 删除SET类型时,需要使用CASCADE方式删除,且关联的表字段也会被同时删除。
-9.  对于USTORE存储方式的表,如果表中包含SET类型的字段,且已经开启回收站功能,表被删除时,不会进入到回收站中,会直接删除。
+9.  对于Ustore存储方式的表,如果表中包含SET类型的字段,且已经开启回收站功能,表被删除时,不会进入到回收站中,会直接删除。
 10. ALTER TABLE 不支持将SET类型字段的数据类型修改为其他SET类型。
 11. 表或者SET类型关联的表字段被删除时,或者表字段的SET类型修改为其他类型时,SET数据类型也会被同步删除。
 12. 不支持以CREATE TABLE \{ AS | LIKE \} 的方式创建包含SET类型的表。
diff --git "a/content/docs-lite/zh/docs/SQLReference/Undo\347\263\273\347\273\237\345\207\275\346\225\260.md" "b/content/docs-lite/zh/docs/SQLReference/Undo\347\263\273\347\273\237\345\207\275\346\225\260.md"
index e4f3e6a14c2b6e9c2876c58b09487f9ddd388cf9..edcb274c46843ffabf1aac3a86c2727045e97953 100644
--- "a/content/docs-lite/zh/docs/SQLReference/Undo\347\263\273\347\273\237\345\207\275\346\225\260.md"
+++ "b/content/docs-lite/zh/docs/SQLReference/Undo\347\263\273\347\273\237\345\207\275\346\225\260.md"
@@ -175,14 +175,14 @@
 
 - gs\_undo\_dump\_parsepage\_mv\(relpath text, blkno bigint, reltype text, rmem boolean\)
 
-  描述:解析ustore数据表磁盘页面的页头信息,每个元组的头部信息,标识位信息以及所有可以查询到undo历史版本信息。
+  描述:解析Ustore数据表磁盘页面的页头信息,每个元组的头部信息,标识位信息以及所有可以查询到undo历史版本信息。
 
   返回值类型:text
 
   备注:必须是系统管理员或者运维管理人员才能执行此函数。
 
   >![](public_sys-resources/icon-note.gif) **说明:** 
-  >该接口当前仅支持USTORE数据表。
+  >该接口当前仅支持Ustore数据表。
 
   **表 4**  gs\_undo\_dump\_parsepage\_mv参数说明
 
@@ -204,7 +204,7 @@
   
   

text

-

ustore表数据文件相对路径,相对路径格式为:tablespace name/database oid/relfilenode,例如base/16603/16384, 表对应数据文件的相对路径查找可以通过pg_relation_filepath('tablename')查询。

+

Ustore表数据文件相对路径,相对路径格式为:tablespace name/database oid/relfilenode,例如base/16603/16384, 表对应数据文件的相对路径查找可以通过pg_relation_filepath('tablename')查询。

输入参数

@@ -222,7 +222,7 @@

text

-

表类型,目前仅支持ustore数据表,取值为uheap。

+

表类型,目前仅支持Ustore数据表,取值为uheap。

输入参数

diff --git a/content/docs-lite/zh/docs/SQLReference/VACUUM.md b/content/docs-lite/zh/docs/SQLReference/VACUUM.md index d44cc01e182dd225f45e5fd0fed76751058cf9b0..d1e1ccecb7291f65a4e8944ddc55df5d895d1df6 100644 --- a/content/docs-lite/zh/docs/SQLReference/VACUUM.md +++ b/content/docs-lite/zh/docs/SQLReference/VACUUM.md @@ -75,7 +75,7 @@ VACUUM回收表或B-Tree索引中已经删除的行所占据的存储空间。 > **![](public_sys-resources/icon-note.gif)说明** > - > ustore分区表在autovacuum=analyze的时候也会触发vacuum。 + > Ustore分区表在autovacuum=analyze的时候也会触发vacuum。 - **table\_name** diff --git "a/content/docs-lite/zh/docs/SQLReference/\344\275\277\347\224\250\346\270\270\346\240\207\345\210\233\345\273\272type.md" "b/content/docs-lite/zh/docs/SQLReference/\344\275\277\347\224\250\346\270\270\346\240\207\345\210\233\345\273\272type.md" new file mode 100644 index 0000000000000000000000000000000000000000..2fe584f76d0c6763323e090e87c95ec11a7c2999 --- /dev/null +++ "b/content/docs-lite/zh/docs/SQLReference/\344\275\277\347\224\250\346\270\270\346\240\207\345\210\233\345\273\272type.md" @@ -0,0 +1,107 @@ +# 使用游标创建type + +## 功能描述 + +该功能用于在包package或者匿名块、存储过程、函数中使用record类型创建一个游标的type类型。 + +## 注意事项 + +- 创建的type为弱游标类型。 +- 该type类型如果作为out参数返回是游标类型。 + + +## 语法格式 + +```sql +TYPE type_name IS REF CURSOR RETURN record_name ; +``` + +## 参数说明 + +- **type_name** + + 定义的类型的名称。 +- **record_name** + + 使用数据类型说明符 RECORD 定义的用户定义类型的名称。 + + + +## 兼容性 + +暂不支持如下语法: + +```sql +TYPE type_name IS REF CURSOR + [ RETURN + { {db_table_or_view | cursor | cursor_variable}%ROWTYPE + | record%TYPE + | ref_cursor_type + } + ] ; +``` + +## 示例 + +**示例1:** 使用record类型创建一个游标的type类型。 + +1、创建测试表t。 + +```sql +create table t(id int, name varchar2(30)); +``` + +2、声明游标类型。 + +```sql +declare +type RECORD_ACCOUNT_LIST is record(id int,name varchar2(30)); +type CUR_ACCOUNT_LIST is ref cursor return RECORD_ACCOUNT_LIST; +cur_accountlist CUR_ACCOUNT_LIST; +begin +open cur_accountlist for select * from t; +end; +/ +``` + +返回结果如下,则表示创建成功: + +```sql +ANONYMOUS BLOCK EXECUTE +``` + + + +**示例2:** 弱游标类型。 + +1、创建测试表t1并插入数据。 + +```sql +create table t1(id int, name varchar2(30)); +insert into t1 values(1,'a1'); +``` + +2、定义一个弱类型游标。 + +```sql +declare +type RECORD_ACCOUNT_LIST1 IS RECORD (id int, name1 varchar2(30)); +type CUR_ACCOUNT_LIST1 is ref cursor return RECORD_ACCOUNT_LIST1; +cur_accountlist1 CUR_ACCOUNT_LIST1; +rc_list RECORD_ACCOUNT_LIST1; +begin +open cur_accountlist1 for select * from t1; +loop +fetch cur_accountlist1 into rc_list; +exit when cur_accountlist1%notfound; +dbms_output.put_line(rc_list.id||' '||rc_list.name1); +end loop; +end; +/ +``` + +返回结果如下,则表示创建成功: + +```sql +ANONYMOUS BLOCK EXECUTE +``` \ No newline at end of file diff --git "a/content/docs-lite/zh/docs/SQLReference/\345\205\266\345\256\203\345\207\275\346\225\260.md" "b/content/docs-lite/zh/docs/SQLReference/\345\205\266\345\256\203\345\207\275\346\225\260.md" index 17179c5f93ba8f6245e9f0a36d9612d90502410e..d2c9b7fa2bfffa864aafef3f264b05ca6a58143b 100644 --- "a/content/docs-lite/zh/docs/SQLReference/\345\205\266\345\256\203\345\207\275\346\225\260.md" +++ "b/content/docs-lite/zh/docs/SQLReference/\345\205\266\345\256\203\345\207\275\346\225\260.md" @@ -814,7 +814,7 @@

text

- +

read_memory

@@ -885,7 +885,7 @@

text

- + @@ -929,7 +929,7 @@

text

- +

read_memory

diff --git "a/content/docs-lite/zh/docs/SQLReference/\345\206\205\351\203\250\345\207\275\346\225\260.md" "b/content/docs-lite/zh/docs/SQLReference/\345\206\205\351\203\250\345\207\275\346\225\260.md" index d2b9cee5614196c2771c03ff02df63d27af9140a..645da19b97c4f79f01b55e06706802372c00e10d 100644 --- "a/content/docs-lite/zh/docs/SQLReference/\345\206\205\351\203\250\345\207\275\346\225\260.md" +++ "b/content/docs-lite/zh/docs/SQLReference/\345\206\205\351\203\250\345\207\275\346\225\260.md" @@ -1371,7 +1371,7 @@ openGauss中下列函数使用了内部数据类型,用户无法直接调用 -- Ubtree索引内部函数 +- UBtree索引内部函数 - @@ -38,7 +38,7 @@ - diff --git a/content/docs-lite/zh/docs/ToolandCommandReference/gs_guc.md b/content/docs-lite/zh/docs/ToolandCommandReference/gs_guc.md index d0931327c59c028dca94fe64af23b6bc3fc6b3ed..7f1fb86458d08c8eec93ba9f10a08ad44b4465d8 100644 --- a/content/docs-lite/zh/docs/ToolandCommandReference/gs_guc.md +++ b/content/docs-lite/zh/docs/ToolandCommandReference/gs_guc.md @@ -140,7 +140,7 @@ ``` >![](public_sys-resources/icon-note.gif) **说明:** - >- -K是用户指定的密码,gs\_guc会对该密码进行长度(8<=len<16)和密码复杂度要求,如果不满足,将会报错。如果不带-K参数则会提示交互式输入密码。为了系统安全,推荐使用交互式输入密码方式。此密码用于保证生成密码文件的安全性和唯一性,用户无需保存或记忆。 + >- -K是用户指定的密码,gs\_guc会对该密码进行长度(8<=len<=16)和密码复杂度要求,如果不满足,将会报错。如果不带-K参数则会提示交互式输入密码。为了系统安全,推荐使用交互式输入密码方式。此密码用于保证生成密码文件的安全性和唯一性,用户无需保存或记忆。 >- -M是加密类型,当前仅支持server、client和source。默认值为server。 - gs\_guc generate生成obsserver或其他前缀的加密密码和加密因子文件 diff --git a/content/docs-lite/zh/menu/index.md b/content/docs-lite/zh/menu/index.md index 5760aeea588506d55452cd4123d21800be587bb9..ce25a4099302efac7f7d8499f66bef1dd73ddfb5 100644 --- a/content/docs-lite/zh/menu/index.md +++ b/content/docs-lite/zh/menu/index.md @@ -1097,6 +1097,7 @@ headless: true - [使用]({{< relref "./docs/SQLReference/使用-29.md" >}}) - [支持和约束]({{< relref "./docs/SQLReference/支持和约束-1.md" >}}) - [游标]({{< relref "./docs/SQLReference/游标.md" >}}) + - [使用游标创建type]({{< relref "./docs/SQLReference/使用游标创建type.md" >}}) - [匿名块]({{< relref "./docs/SQLReference/匿名块-1.md" >}}) - [存储过程]({{< relref "./docs/SQLReference/存储过程.md" >}}) - [存储过程]({{< relref "./docs/SQLReference/存储过程-20.md" >}}) diff --git a/content/en/docs/AboutopenGauss/pseudocolumn-rownum.md b/content/en/docs/AboutopenGauss/pseudocolumn-rownum.md index 6642d9972a9acf9cb0a68f17fb34706c61420674..e966e791974f40babcc4d0e2fdda47eef33574c5 100644 --- a/content/en/docs/AboutopenGauss/pseudocolumn-rownum.md +++ b/content/en/docs/AboutopenGauss/pseudocolumn-rownum.md @@ -24,6 +24,8 @@ During internal execution, the optimizer rewrites ROWNUM into LIMIT to accelerat ## Constraints - Do not use the pseudocolumn ROWNUM as an alias to avoid ambiguity in SQL statements. +- Do not use ROWNUM as the column name when creating a table. Bad example: **create table table\_name\(rownum int\);** +- Do not use ROWNUM as the column name when creating a type. Bad example: **create type type\_name\(a int, rownum int\);** - Do not use ROWNUM when creating an index. Bad example: **create index index\_name on table\(rownum\);** - Do not use ROWNUM as the default value when creating a table. Bad example: **create table table\_name\(id int default rownum\);** - Do not use ROWNUM as an alias in the WHERE clause. Bad example: **select rownum rn from table where rn < 5;** diff --git a/content/en/docs/AboutopenGauss/support-for-functions-and-stored-procedures.md b/content/en/docs/AboutopenGauss/support-for-functions-and-stored-procedures.md index b9f8695684f0b383db1eb195c6ddc9878e75801d..e9ac9faa16621ecbc841269b87f0d83ef957f563 100644 --- a/content/en/docs/AboutopenGauss/support-for-functions-and-stored-procedures.md +++ b/content/en/docs/AboutopenGauss/support-for-functions-and-stored-procedures.md @@ -24,12 +24,16 @@ Support for nested arrays in PL/SQL. Support for using default argument values for cursors in PL/SQL. +Support for getting the type of a row of records in a table, view, or cursor by ROWTYPE in PL/SQL. + ## Constraints Not supportted to call functions by a nested array's array-type element referred by suscripts. Not supportted to assign a nested array's array-type element directly. +Can't get the type of a nested cursor by ROWTYPE. + ## Dependencies None diff --git a/content/en/docs/DatabaseOMGuide/before-you-start.md b/content/en/docs/DatabaseOMGuide/before-you-start.md index 5e30e04365cc972ee892d15cb79fe32fd52e73e6..7b6131c8e46bfc45fc44b2468d3d34d9142b6e68 100644 --- a/content/en/docs/DatabaseOMGuide/before-you-start.md +++ b/content/en/docs/DatabaseOMGuide/before-you-start.md @@ -30,28 +30,126 @@ Gray upgrade: based on gray upgrade, supports to upgrade the specified nodes, su -

ubtbeginscan

diff --git "a/content/docs-lite/zh/docs/SQLReference/\346\225\260\346\215\256\346\215\237\345\235\217\346\243\200\346\265\213\344\277\256\345\244\215\345\207\275\346\225\260.md" "b/content/docs-lite/zh/docs/SQLReference/\346\225\260\346\215\256\346\215\237\345\235\217\346\243\200\346\265\213\344\277\256\345\244\215\345\207\275\346\225\260.md" index 67e8bffb1ec0cf5be140b6ef4d4e51e5828bebbf..b2c66375fd0efbc9f6e3e09b4b4a326fe5c8aad3 100644 --- "a/content/docs-lite/zh/docs/SQLReference/\346\225\260\346\215\256\346\215\237\345\235\217\346\243\200\346\265\213\344\277\256\345\244\215\345\207\275\346\225\260.md" +++ "b/content/docs-lite/zh/docs/SQLReference/\346\225\260\346\215\256\346\215\237\345\235\217\346\243\200\346\265\213\344\277\256\345\244\215\345\207\275\346\225\260.md" @@ -11,7 +11,7 @@

检测修复

普通行存表(astore, ustore,包括压缩表),段页式表,不包括索引

+

普通行存表(Astore, Ustore,包括压缩表),段页式表,不包括索引

文件&页面

手动检测手动修复,不支持dcf模式。

普通行存表(astore, ustore,不包括压缩表),索引(btree, ubtree),undo(不包括undo meta,undo只支持CRC校验错误)

+

普通行存表(Astore, Ustore,不包括压缩表),索引(Btree, UBtree),undo(不包括undo meta,undo只支持CRC校验错误)

页面

- +

Version

-

Upgrade Description

-
+ + + + + + + + + + + - - + + + + + + + + + + + - - + + + + + + + + + + + - - + + + + + + + + + + - -
Base \ Upgrade 3.0.03.0.33.0.55.0.05.0.15.0.25.0.36.0.0RC16.0.0

Versions earlier than openGauss 1.0.1

-

It can be upgraded to any version earlier than openGauss 1.0.1.

-
2.0.0

openGauss 1.0.1

-

It can be upgraded to openGauss 1.1.0.

-
3.0.0

openGauss 1.1.0 and later

-

It can be upgraded to any version form openGauss 1.1.0 to openGauss 3.1.0 (exclusive).

-
3.0.3
+ 3.0.5 + + + + ✕ + ✕ + √ + √ + √ + √ + + + 5.0.0 + + + + + √ + √ + √ + √ + √ + + + 5.0.1 + + + + + + √ + √ + √ + √ + + + 5.0.2 + + + + + + + √ + ✕ + √ + + + 5.0.3 + + + + + + + + ✕ + √ + + + 6.0.0RC1 + + + + + + + + + √ + + >![](../public_sys-resources/icon-note.gif) **NOTE:** diff --git a/content/en/docs/DatabaseReference/platform-and-client-compatibility.md b/content/en/docs/DatabaseReference/platform-and-client-compatibility.md index 62d45c156f546545edb9927598e2d75782465381..75b283a8756d4604cf834fc3089f3454d6945a30 100644 --- a/content/en/docs/DatabaseReference/platform-and-client-compatibility.md +++ b/content/en/docs/DatabaseReference/platform-and-client-compatibility.md @@ -278,6 +278,46 @@ numeric

Controls the performance of substr(str, from, for) in different scenarios. By default, if the value of from is less than 0, substr counts from the end of the string. If the value of for is less than 1, substr returns NULL. After this parameter is enabled, if the value of from is less than 0, substr counts from the first (-from + 1) bit of the character string. If the value of for is less than 0, substr reports an error. This parameter is valid only when **sql_compatibility** is set to **PG**.

+

disable_record_type_in_dml

+

Prohibit inserting virtual columns. After enabling this option will prohibit to use record type variables as insertion values in insert statements.

+

+create table t1(col1 varchar(10),col varchar(10));
+create table t2(col1 varchar(10),col varchar(10));
+set behavior_compat_options='disable_record_type_in_dml';
+insert into t1 values('one','two');
+declare
+  cursor cur1 is select * from t1;
+  source cur1%rowtype:=('ten','wtu');
+begin
+  for source in cur1
+  loop
+    raise notice '%',source;
+    insert into t2 values(source);
+  end loop; 
+end;
+/
+ERROR:  The record type variable cannot be used as an insertion value.
+CONTEXT:  SQL statement "insert into t2 values(source)"
+PL/pgSQL function inline_code_block line 7 at SQL statement
+
+set behavior_compat_options='';
+insert into t1 values('one','two');
+declare
+  cursor cur1 is select * from t1;
+  source cur1%rowtype:=('ten','wtu');
+begin
+  for source in cur1
+  loop
+    raise notice '%',source;
+    insert into t2 values(source);
+  end loop; 
+end;
+/
+NOTICE:  (one,two)
+NOTICE:  (one,two)
+
+
+
 
 
 
diff --git a/content/en/docs/GettingStarted/container-based-installation-on-a-single-node.md b/content/en/docs/GettingStarted/container-based-installation-on-a-single-node.md
index e96e4f56ef0b847864e4d79978a6c9dab66f8559..627a1d6e7dc021e6227211bca2d7f162cbae99f7 100644
--- a/content/en/docs/GettingStarted/container-based-installation-on-a-single-node.md
+++ b/content/en/docs/GettingStarted/container-based-installation-on-a-single-node.md
@@ -16,16 +16,16 @@ Use the  **buildDockerImage.sh**  script to build a Docker image. This script is
 
 >![](public_sys-resources/icon-note.gif) **NOTE:** 
 >
-> -   Before the installation, you need to provide the openGauss binary installation package. After decompressing the package, place the package \(**openGauss-***X.X.X***-CentOS-64bit.tar.bz2**\) in the  **dockerfiles/**<*version*\> folder. The binary package can be downloaded from  [https://opengauss.org/en/download/](https://opengauss.org/en/download/). Ensure that the correct yum source is available.
+> -   Before the installation, you need to provide the openGauss binary installation package. After decompressing the package, place the package \(**openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2**\) in the  **dockerfiles/**<*version*\> folder. The binary package can be downloaded from  [https://opengauss.org/en/download/](https://opengauss.org/en/download/). Ensure that the correct yum source is available.
 >
 > -   If the  **-i**  option is not specified when you run the  **buildDockerImage.sh**  script, the SHA-256 check is performed by default. You need to manually write the check result to the  **sha256\_file\_amd64**  file.
 >    ```
     ## Modify the SHA-256 verification file.
-    cd /soft/openGauss-server/docker/dockerfiles/3.0.0
-    sha256sum openGauss-3.0.0-CentOS-64bit.tar.bz2 > sha256_file_amd64 
+    cd /soft/openGauss-server/docker/dockerfiles/6.0.0
+    sha256sum openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2 > sha256_file_amd64 
 >   ```
 
-> -   Before the installation, obtain the  **openEuler\_aarch64.repo**  file from Huawei open-source image website and save it to the  **openGauss-server-master/docker/dockerfiles/3.0.0**  folder. Run the following command to obtain the  **openEuler\_aarch64.repo**  file.
+> -   Before the installation, obtain the  **openEuler\_aarch64.repo**  file from Huawei open-source image website and save it to the  **openGauss-server-master/docker/dockerfiles/6.0.0**  folder. Run the following command to obtain the  **openEuler\_aarch64.repo**  file.
 
 >    ```
    wget -O openEuler_aarch64.repo https://mirrors.huaweicloud.com/repository/conf/openeuler_aarch64.repo
@@ -39,7 +39,7 @@ Usage: buildDockerImage.sh -v [version] [-i] [Docker build option]
 Builds a Docker Image for openGauss
 Parameters:
    -v: version to build
-       Choose one of: 3.0.0
+       Choose one of: 6.0.0
    -i: ignores the SHA-256 checksums
 
 LICENSE UPL 1.0
@@ -74,26 +74,26 @@ Specifies the database port. The default value is  **5432**.
 ## Starting an Instance
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 opengauss:6.0.0
 ```
 
 ## Connecting to the Database from the OS Layer
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p8888:5432 opengauss:2.0.0
-$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p8888
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p8888:5432 opengauss:6.0.0
+$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p8888  # OS need install gsql client
 ```
 
 ## Data Persistence
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:6.0.0
 ```
 
 >**Note**
 >
->1. For details about how to use a database of another version to build a container image, see the configuration file in `openGauss-server/docker/dockerfiles/3.0.0`. You only need to change the version number to the corresponding version number.
+>1. For details about how to use a database of another version to build a container image, see the configuration file in `openGauss-server/docker/dockerfiles/6.0.0`. You only need to change the version number to the corresponding version number.
 >
->2. If the `openeuler-20.03-lts:latest` image cannot be downloaded, download the container image package `openEuler-docker.aarch64.tar.xz` from the OpenEuler official website `http://121.36.97.194/openEuler-20.03-LTS/docker_img/aarch64/` and use `docker load -i openEuler-docker.aarch64.tar.xz` to import the package to the local image list.
+>2. If the `openeuler-20.03-lts:latest` image cannot be downloaded, download the container image package `openEuler-docker.aarch64.tar.xz` from the OpenEuler official website `https://repo.openeuler.org/openEuler-20.03-LTS/docker_img/aarch64/` and use `docker load -i openEuler-docker.aarch64.tar.xz` to import the package to the local image list.
 >
 >3. During the build, if the yum source download times out, check the proxy. You can also `--network host` to the end of the `docker build` command in the `buildDockerImage.sh` script to use the network of the host machine.
diff --git a/content/en/docs/InstallationGuide/installation-on-a-single-node_container.md b/content/en/docs/InstallationGuide/installation-on-a-single-node_container.md
index 45e43fcf8055a88cde556169897a6158a1bac7ec..9bfba234ee73bfddd2d1a3c88a7532aee9c10d46 100644
--- a/content/en/docs/InstallationGuide/installation-on-a-single-node_container.md
+++ b/content/en/docs/InstallationGuide/installation-on-a-single-node_container.md
@@ -16,16 +16,16 @@ Use the  **buildDockerImage.sh**  script to build a Docker image. This script is
 
 >![](public_sys-resources/icon-note.gif) **NOTE:** 
 >
-> -   Before the installation, you need to provide the openGauss binary installation package. After decompressing the package, place the package \(**openGauss-***X.X.X***-CentOS-64bit.tar.bz2**\) in the  **dockerfiles/**<*version*\> folder. The binary package can be downloaded from  [https://opengauss.org/en/download/](https://opengauss.org/en/download/). Ensure that the correct yum source is available.
+> -   Before the installation, you need to provide the openGauss binary installation package. After decompressing the package, place the package \(**openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2**\) in the  **dockerfiles/**<*version*\> folder. The binary package can be downloaded from  [https://opengauss.org/en/download/](https://opengauss.org/en/download/). Ensure that the correct yum source is available.
 >
 > -   If the  **-i**  option is not specified when you run the  **buildDockerImage.sh**  script, the SHA-256 check is performed by default. You need to manually write the check result to the  **sha256\_file\_amd64**  file.
 >    ```
     ## Modify the SHA-256 verification file.
-    cd /soft/openGauss-server/docker/dockerfiles/3.0.0
-    sha256sum openGauss-3.0.0-CentOS-64bit.tar.bz2 > sha256_file_amd64 
+    cd /soft/openGauss-server/docker/dockerfiles/6.0.0
+    sha256sum openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2 > sha256_file_amd64 
 >   ```
 
-> -   Before the installation, obtain the  **openEuler\_aarch64.repo**  file from Huawei open-source image website and save it to the  **openGauss-server-master/docker/dockerfiles/3.0.0**  folder. Run the following command to obtain the  **openEuler\_aarch64.repo**  file.
+> -   Before the installation, obtain the  **openEuler\_aarch64.repo**  file from Huawei open-source image website and save it to the  **openGauss-server-master/docker/dockerfiles/6.0.0**  folder. Run the following command to obtain the  **openEuler\_aarch64.repo**  file.
 
 >    ```
    wget -O openEuler_aarch64.repo https://mirrors.huaweicloud.com/repository/conf/openeuler_aarch64.repo
@@ -39,7 +39,7 @@ Usage: buildDockerImage.sh -v [version] [-i] [Docker build option]
 Builds a Docker Image for openGauss
 Parameters:
    -v: version to build
-       Choose one of: 3.0.0
+       Choose one of: 6.0.0
    -i: ignores the SHA-256 checksums
 
 LICENSE UPL 1.0
@@ -74,26 +74,26 @@ Specifies the database port. The default value is  **5432**.
 ## Starting an Instance
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 opengauss:6.0.0
 ```
 
 ## Connecting to the Database from the OS Layer
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p8888:5432 opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p8888:5432 opengauss:6.0.0
 $ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p8888
 ```
 
 ## Data Persistence
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:6.0.0
 ```
 
 >**Note**
 >
->1. For details about how to use a database of another version to build a container image, see the configuration file in `openGauss-server/docker/dockerfiles/3.0.0`. You only need to change the version number to the corresponding version number.
+>1. For details about how to use a database of another version to build a container image, see the configuration file in `openGauss-server/docker/dockerfiles/6.0.0`. You only need to change the version number to the corresponding version number.
 >
->2. If the `openeuler-20.03-lts:latest` image cannot be downloaded, download the container image package `openEuler-docker.aarch64.tar.xz` from the OpenEuler official website `http://121.36.97.194/openEuler-20.03-LTS/docker_img/aarch64/` and use `docker load -i openEuler-docker.aarch64.tar.xz` to import the package to the local image list.
+>2. If the `openeuler-20.03-lts:latest` image cannot be downloaded, download the container image package `openEuler-docker.aarch64.tar.xz` from the OpenEuler official website `https://repo.openeuler.org/openEuler-20.03-LTS/docker_img/aarch64/` and use `docker load -i openEuler-docker.aarch64.tar.xz` to import the package to the local image list.
 >
 >3. During the build, if the yum source download times out, check the proxy. You can also `--network host` to the end of the `docker build` command in the `buildDockerImage.sh` script to use the network of the host machine.
diff --git a/content/en/docs/ToolandCommandReference/gs_sdr.md b/content/en/docs/ToolandCommandReference/gs_sdr.md
index 086f6c9a13d769fdaec2b94cf076f7e33b45aef1..e325b169fa8a779f9699275dcad5f66ff1f12d31 100644
--- a/content/en/docs/ToolandCommandReference/gs_sdr.md
+++ b/content/en/docs/ToolandCommandReference/gs_sdr.md
@@ -87,6 +87,7 @@ Log in to the OS as the OS user **omm** to run the **gs\_sdr** command.
         >
         >1. Before the DR relationship is established, you need to create a DR user on the primary cluster for DR authentication. The primary and standby clusters must use the same DR username and password. After a DR relationship is established, the user password cannot be changed. You can remove the DR relationship, modify the username and password, and establish the DR relationship again. The DR user password cannot contain blank characters and the following characters: |;&$<>`\'"{}()[]~*?!\n
         >2. If the **-U** and **-W** parameters are not input in the command line, they can be input in interactive mode during the establishment.
+        >3. When the **-W** parameter is entered in the command line, other terminals can view the password through the PS command, which poses a security risk. Suggest inputting through interactive mode.
 
     -   -X
 
diff --git a/content/en/docs/ToolandCommandReference/gs_upgradectl.md b/content/en/docs/ToolandCommandReference/gs_upgradectl.md
index 4153f4fe222dce1957dadcedfdead88e2e0b55d2..0d1592d774378f467e9c613e676da2bb156c93cc 100644
--- a/content/en/docs/ToolandCommandReference/gs_upgradectl.md
+++ b/content/en/docs/ToolandCommandReference/gs_upgradectl.md
@@ -48,43 +48,43 @@ Grayscale upgrade supports progress printing, and the progress is printed accord
 
 - Display help information.
 
-  ```
+  ```shell
   gs_upgradectl -? | --help
   ```
 
 - Display version information.
 
-  ```
+  ```shell
   gs_upgradectl -V | --version
   ```
 
 - Select an upgrade policy.
 
-  ```
+  ```shell
   gs_upgradectl -t chose-strategy [-l LOGFILE]
   ```
 
 - Automatically upgrade openGauss
 
-  ```
+  ```shell
   gs_upgradectl -t auto-upgrade -X XMLFILE  [-l LOGFILE] [--grey]
   ```
 
 - Automatically roll back the upgrade.
 
-  ```
+  ```shell
   gs_upgradectl -t auto-rollback -X XMLFILE [-l LOGFILE] [--force]
   ```
 
 - Upgrade status query.
 
-  ```
+  ```shell
   gs_upgradectl -S show-step
   ```
 
 - Submit the upgrade project.
 
-  ```
+  ```shell
   gs_upgradectl -t commit-upgrade -X XMLFILE [-l LOGFILE]
   ```
 
@@ -150,7 +150,7 @@ Grayscale upgrade supports progress printing, and the progress is printed accord
 
 Example 1: Use the new package to perform pre-upgrade operations.
 
-```
+```shell
 ./gs_preinstall -U roach -G users -X /data/xml/3node_3c3d_1m2s_etcd.xml 
 Parsing the configuration file.
 Successfully parsed the configuration file.
@@ -201,7 +201,7 @@ Preinstallation succeeded.
 
 Example 2: Execute the  **gs\_upgradectl**  script to perform the upgrade.
 
-```
+```shell
 gs_upgradectl -t upgrade -X /data/xml/3node_3c3d_1m2s_etcd.xml 
 Static configuration matched with old static configuration files.
 Performing inplace rollback.
@@ -237,7 +237,7 @@ Once the check done, please execute following command to commit upgrade:
 
 Example 3: Execute the  **gs\_upgradectl**  script to perform automatic rollback on the upgrade.
 
-```
+```shell
 gs_upgradectl -t auto-rollback -X /data/xml/3node_3c3d_1m2s_etcd.xml
 Static configuration matched with old static configuration files.
 Performing inplace rollback.
@@ -262,7 +262,7 @@ Rollback succeeded.
 
 Example 4: Execute the  **gs\_upgradectl**  script to submit the upgrade in in-place mode.
 
-```
+```shell
 gs_upgradectl -t commit -X /data/xml/3node_3c3d_1m2s_etcd.xml
 Old cluster app path is /data/gauss/app_e67b8bcd
 Successfully Cleaned old install path.
@@ -272,7 +272,7 @@ Commit binary upgrade succeeded.
 Example 5: Execute the  **gs\_upgradectl**  script to perform rolling upgrade.
 
 upgrade specified node
-```
+```shell
 gs_upgradectl -t auto-upgrade -X /data/node2.xml --grey -h hostname0
 Static configuration matched with old static configuration files.
 Successfully set upgrade_mode to 0.
@@ -308,7 +308,7 @@ The nodes ['hostname0']ve been successfully upgraded.Then can upgrade the remain
 ```
 
 upgrade the remaining node
-```
+```shell
 gs_upgradectl -t auto-upgrade -X /data/node2.xml --grey --continue
 Static configuration matched with old static configuration files.
 Checking upgrade environment.
@@ -345,7 +345,7 @@ Successfully upgrade all nodes.
 
 Example 6: Use the gs_upgradectl script to perform incremental upgrades of cluster management components.
 
-```
+```shell
 gs_upgradectl -t upgrade-cm --upgrade-package /data/openGauss-3.1.0-CentOS-64bit-cm.tar.gz
 Start ot perform the upgrade of CM component in cluster.
 Ready to transform CM package to all nodes.
@@ -367,7 +367,7 @@ Upgrade CM component successfully.
 
 Example 7: Use gs_upgradectl script to perform an upgrade status query.
 
-```
+```shell
 gs_upgradectl -S show-step
 doShowUpgradeStep in UpgradeImpl
 Cluster Nodes are ['node1', 'node2']. 
diff --git "a/content/zh/docs/AboutopenGauss/In-place-Update\345\255\230\345\202\250\345\274\225\346\223\216.md" "b/content/zh/docs/AboutopenGauss/In-place-Update\345\255\230\345\202\250\345\274\225\346\223\216.md"
index 68ce1c6963b33747e2e5194dbd5456ece5d664ce..3ca14d6031cb9f85098432a4d7e90ad27d7e98a1 100644
--- "a/content/zh/docs/AboutopenGauss/In-place-Update\345\255\230\345\202\250\345\274\225\346\223\216.md"
+++ "b/content/zh/docs/AboutopenGauss/In-place-Update\345\255\230\345\202\250\345\274\225\346\223\216.md"
@@ -37,7 +37,7 @@ Ustore 是 openGauss 内核新增的一种存储模式,其最大程度结合
 
 

老版本管理方式

-

PbRCR(Page Based RCR)

+

PbRCR(Page Based RCR,基于页面的行一致性读)

@@ -48,7 +48,7 @@ Ustore 是 openGauss 内核新增的一种存储模式,其最大程度结合 **图 1** Ustore框架图
- +
@@ -103,14 +103,14 @@ Ustore 的页面结构和 Astore 的页面结构相同,在 openGauss 中也使 **图 2** Ustore页面结构
- +
## Ustore的多版本管理 Ustore 多版本管理方式基于 MVCC 技术,确保在高并发的环境下的数据一致性和事务的隔离性。 Ustore 的多版本管理主要涉及以下几个方面的内容: -- 回滚段(Undo log) +- 回滚段(Undo segment) - 每当一个事务修改数据时,Ustore会将旧版本的数据放在回滚段的 Undo 目录中。回滚段用于在事务回滚时恢复数据,同时也支持多版本读取。当一个事务需要访问历史版本时,可以通过回滚段找到之前的旧数据。 - MVCC - Ustore 通过 MVCC 实现了高效的并发控制,允许多个事务同时执行读操作且不会相互阻塞,写操作需要额外增加同步机制,整体上 Ustore 的并发控制机制减少了事务间的冲突,提高了系统的吞吐量。 @@ -129,7 +129,7 @@ Ustore的老版本管理的核心是通过 **回滚段 ( Undo Segment )** 来记 **图 3** 版本管理
- +
- 旧版本数据会集中存放在回滚段的 Undo 目录中,为了减少读写冲突,旧版本的数据(回滚段记录)采用追加写的方式写入数据目录的 Undo 目录下。这样旧版本数据数据的读取和写入不会发生冲突,同一个事物的旧版本数据也会连续存放,便于进行回滚操作。 @@ -146,7 +146,7 @@ Undo 空间的回收过程如图 4 所示: **图 4** Undo 回收过程
- +
如上图所示,UndoZone1 中回收到小于 oldestXmin 的已提交事务 16068,UndoZone2 中回收到16050,UndoZone m 回收到 16056,UndoZone n 回收到事务 16012,而事务 16014 待回滚但未发生回滚,因此 UndoZone n 回收事务 ID 上限只到16014.其他 zone 的上限是 oldestXmin,oldestXidInUndo 会取所有 Undozone 上的上限最小值,因此 oldestXidInUndo 等于 16014。 @@ -167,7 +167,7 @@ Ustore 在获取元组时,会先检查对应的事务目录。事务目录分 **图 5** 元组查询过程
- +
@@ -183,7 +183,7 @@ openGauss实现了多版本索引 UBtree ,是专用于 Ustore 的 Btree 索引 **图 6** UBtree结构
- +
@@ -193,7 +193,7 @@ openGauss实现了多版本索引 UBtree ,是专用于 Ustore 的 Btree 索引 **图 7** UBtree叶子页面结构
- +
@@ -214,7 +214,7 @@ openGauss实现了多版本索引 UBtree ,是专用于 Ustore 的 Btree 索引 **图 8** Scan操作
- +
- **Insert操作**:UBtree的插入逻辑基本不变,只需增加索引插入时直接获取事务信息填写xmin字段。 @@ -223,7 +223,7 @@ openGauss实现了多版本索引 UBtree ,是专用于 Ustore 的 Btree 索引 **图 9** update 操作
- +
在非索引列更新的情况下,索引不发生任何变化,index tuple 仍指向第一次插入的 data tuple,Uheap 不会插入新的 data tuple,而是修改当下 data tuple 并将历史数据存入Undo中。 diff --git a/content/zh/docs/AboutopenGauss/figures/UstoreStructe.png b/content/zh/docs/AboutopenGauss/figures/UstoreStructe.png index e7664de3c76b9f216dc7cc0184c62a30148e73b7..27d9fd42ecd492a18d534a70a185baff4aac65e1 100644 Binary files a/content/zh/docs/AboutopenGauss/figures/UstoreStructe.png and b/content/zh/docs/AboutopenGauss/figures/UstoreStructe.png differ diff --git "a/content/zh/docs/AboutopenGauss/\344\274\201\344\270\232\347\272\247\345\242\236\345\274\272\347\211\271\346\200\247.md" "b/content/zh/docs/AboutopenGauss/\344\274\201\344\270\232\347\272\247\345\242\236\345\274\272\347\211\271\346\200\247.md" index e36bf6fa8bbf5186ffef17c92cb4847d73f03593..038bf842786c121437729ac81a84632bacf12a02 100644 --- "a/content/zh/docs/AboutopenGauss/\344\274\201\344\270\232\347\272\247\345\242\236\345\274\272\347\211\271\346\200\247.md" +++ "b/content/zh/docs/AboutopenGauss/\344\274\201\344\270\232\347\272\247\345\242\236\345\274\272\347\211\271\346\200\247.md" @@ -113,7 +113,7 @@ openGauss支持: - 索引多版本 - **图 3** UBTree与BTree查找、更新比较示意图 + **图 3** UBtree与Btree查找、更新比较示意图 ![](figures/Comparison-diagram-of-UBTree-and-BTree-search-update.png "UBTree与BTree查找-更新比较示意图") 通过在索引页面元组上维护版本信息,UBtree能够在索引层进行 MVCC 可见性检查。同时 UBtree 也能通过版本信息独立判断索引元组是否已经无效(Dead),进而使得 in-place update引擎能实现数据表以及索引表上页级的空间清理,并在此基础上构建不依赖 AutoVacuum 的独立垃圾回收机制。 diff --git "a/content/zh/docs/AboutopenGauss/\344\274\252\345\210\227ROWNUM.md" "b/content/zh/docs/AboutopenGauss/\344\274\252\345\210\227ROWNUM.md" index 1af08c51d9abb5db813d4e516977217918f2a856..b6d5365a18c1a205d15c9c5550f7fbcfae33fda0 100644 --- "a/content/zh/docs/AboutopenGauss/\344\274\252\345\210\227ROWNUM.md" +++ "b/content/zh/docs/AboutopenGauss/\344\274\252\345\210\227ROWNUM.md" @@ -23,7 +23,9 @@ ROWNUM(伪列),用于对SQL查询中符合条件的记录进行顺序标 ## 特性约束 -- ROWNUM是伪列,不可作为别名,以免SQL语句出现歧义; +- ROWNUM是伪列,不可作为别名,以免SQL语句出现歧义; +- 创建表时列名不可为ROWNUM。例如:create table table\_name\(rownum int\); +- 创建类型时列名不可为ROWNUM。例如:create type type\_name\(a int, rownum int\); - 创建索引时不可使用ROWNUM。例如:create index index\_name on table\(rownum\); - 创建表时default值不可为ROWNUM。例如:create table table\_name\(id int default rownum\); - Where子句中不可使用rownum的别名。例如:select rownum rn from table where rn < 5; diff --git "a/content/zh/docs/AboutopenGauss/\345\205\250\345\257\206\346\200\201\346\225\260\346\215\256\345\272\223\347\255\211\345\200\274\346\237\245\350\257\242.md" "b/content/zh/docs/AboutopenGauss/\345\205\250\345\257\206\346\200\201\346\225\260\346\215\256\345\272\223\347\255\211\345\200\274\346\237\245\350\257\242.md" index 42d642698572113acfc84afad3526a6452906bac..66b718a16c99d257d65c915f6879bbd8f678203e 100644 --- "a/content/zh/docs/AboutopenGauss/\345\205\250\345\257\206\346\200\201\346\225\260\346\215\256\345\272\223\347\255\211\345\200\274\346\237\245\350\257\242.md" +++ "b/content/zh/docs/AboutopenGauss/\345\205\250\345\257\206\346\200\201\346\225\260\346\215\256\345\272\223\347\255\211\345\200\274\346\237\245\350\257\242.md" @@ -70,7 +70,7 @@ - 对于密态等值查询运算中如果参与比较的两个属性条件采用不同的数据加密密钥,返回报错。 -- 密态等值查询不支持时序表、外表,不支持ustore存储引擎加密。 +- 密态等值查询不支持时序表、外表,不支持Ustore存储引擎加密。 - 对于数据库服务侧配置变更(pg\_settings系统表、权限、密钥和加密列等信息), 需要重新建立JDBC连接保证配置变更生效。 diff --git "a/content/zh/docs/AboutopenGauss/\345\207\275\346\225\260\345\217\212\345\255\230\345\202\250\350\277\207\347\250\213\346\224\257\346\214\201.md" "b/content/zh/docs/AboutopenGauss/\345\207\275\346\225\260\345\217\212\345\255\230\345\202\250\350\277\207\347\250\213\346\224\257\346\214\201.md" index 057320db0a01b700306f9cfdb921dc2d9c5554d3..ed686dc1f29bc02bd5e0a1157aeffff14c194508 100644 --- "a/content/zh/docs/AboutopenGauss/\345\207\275\346\225\260\345\217\212\345\255\230\345\202\250\350\277\207\347\250\213\346\224\257\346\214\201.md" +++ "b/content/zh/docs/AboutopenGauss/\345\207\275\346\225\260\345\217\212\345\255\230\345\202\250\350\277\207\347\250\213\346\224\257\346\214\201.md" @@ -24,6 +24,8 @@ openGauss支持SQL标准中的函数及存储过程,其中存储过程兼容 支持PL/PGSQL存储过程覆盖率收集。 +支持PL/SQL中通过ROWTYPE获取表、视图、游标中一行记录的类型。 + 支持PL/SQL忽略依赖进行创建和重编译的功能。 支持PL/SQL使用嵌套数组。 @@ -36,6 +38,8 @@ openGauss支持SQL标准中的函数及存储过程,其中存储过程兼容 不支持直接使用数组对嵌套数组的数组类型成员进行赋值。 +不支持通过ROWTYPE获得嵌套游标的类型。 + ## 依赖关系 无。 diff --git "a/content/zh/docs/AboutopenGauss/\346\225\260\346\215\256\345\272\223\345\256\211\350\243\205\346\265\201\347\250\213\350\247\243\351\231\244\345\257\271root\347\224\250\346\210\267\347\232\204\344\276\235\350\265\226.md" "b/content/zh/docs/AboutopenGauss/\346\225\260\346\215\256\345\272\223\345\256\211\350\243\205\346\265\201\347\250\213\350\247\243\351\231\244\345\257\271root\347\224\250\346\210\267\347\232\204\344\276\235\350\265\226.md" index fcf1ee652d582598f167c39c80c081c525d762c2..63df359589f99704c5d312f71218fbfbcf13af3d 100644 --- "a/content/zh/docs/AboutopenGauss/\346\225\260\346\215\256\345\272\223\345\256\211\350\243\205\346\265\201\347\250\213\350\247\243\351\231\244\345\257\271root\347\224\250\346\210\267\347\232\204\344\276\235\350\265\226.md" +++ "b/content/zh/docs/AboutopenGauss/\346\225\260\346\215\256\345\272\223\345\256\211\350\243\205\346\265\201\347\250\213\350\247\243\351\231\244\345\257\271root\347\224\250\346\210\267\347\232\204\344\276\235\350\265\226.md" @@ -2,7 +2,7 @@ ## 可获得性 -本特性自openGauss 6.0.0-RC1版本开始引入。 +本特性自openGauss 6.0.0-RC1版本开始引入,在openGauss 6.0.0 LTS版本中增强。 ## 特性简介 @@ -10,7 +10,9 @@ 由于预安装,校验,扩容这个三个工具都是root用户,其他的工具都已经是普通用户执行。所有本次涉及的工具有:gs_preinstall,gs_checkos,gs_expansion。 -本次特性针对预安装,校验,扩容这三个工具进行适配,确保数据库可以在普通用户下执行。 +openGauss 6.0.0-RC1,针对预安装,校验,扩容这三个工具进行适配,确保数据库可以在普通用户下执行。 + +openGauss 6.0.0 LTS,针对之前预安装还需要一些前提操作进行了优化。 ## 客户价值 @@ -22,20 +24,41 @@ openGauss的安装流程中,在预安装的时候使用的是root用户,到 由于预安装,校验,扩容这个三个工具都是root用户,其他的工具都已经是普通用户执行所有本次涉及的工具有:gs_preinstall,gs_checkos,gs_expansion。 -本次特性针对预安装,校验,扩容这三个工具进行适配,确保数据库可以在普通用户下执行。 +openGauss 6.0.0-RC1,针对预安装,校验,扩容这三个工具进行适配,确保数据库可以在普通用户下执行。 + +openGauss 6.0.0 LTS,针对之前预安装还需要一些前提操作进行了优化;比如:1.取消了使用root建立互信的操作;2.取消了使用root设置内核信号量大小的操作;3.取消了给普通用户赋予定时任务权限的操作。 ## 特性增强 自openGauss 6.0.0-RC1版本,用户可以使用普通用户来安装,校验,扩容数据库,这在一定程度上解决了普通用户没有root用户权限的问题;当然了对于以前使用root操作也可以进行了保留。 -本次适配涉及的工具有:gs_preinstall,gs_checkos,gs_expansion。 +openGauss 6.0.0-RC1适配涉及的工具有:gs_preinstall,gs_checkos,gs_expansion。 + +openGauss 6.0.0 LTS适配涉及的工具有:gs_preinstall。 ## 特性约束 -本次特性需要注意的是:有些操作,普通用户没有执行权限,还是需要root用户提前执行,可以参考以下资料。 +特性需要注意的是: + +1. 有些操作,普通用户仍旧没有执行权限,还是需要root用户前提执行,可以参考以下资料。 前提操作 +2. 如果机器发生重启或者普通用户所有进程丢失,数据库会丢失互信,需要先手动拉起互信进程,再启动数据库。 + +启动互信进程的命令,需要在所有节点上分别执行。 + +``` +source ENVFILE && python3 ${GPHOME}/script/local/CheckSshAgent.py +``` + +启动数据库的命令,在主机上执行。 + +``` +source ENVFILE && gs_om -t start 或者 gs_om -t restart +``` + + ## 依赖关系 无 @@ -44,7 +67,7 @@ openGauss的安装流程中,在预安装的时候使用的是root用户,到 开源社区地址: https://gitee.com/opengauss/openGauss-OM。 -gs_checkos文档:校验 +gs_checkos文档:校验 gs_preisntall文档:预安装 diff --git "a/content/zh/docs/AboutopenGauss/\346\236\201\350\207\264RTO\346\214\211\351\234\200\345\233\236\346\224\276.md" "b/content/zh/docs/AboutopenGauss/\346\236\201\350\207\264RTO\346\214\211\351\234\200\345\233\236\346\224\276.md" index 598fcee381bd203434c1a703920c518041c652e9..17728db78092a7cac97e7f7d3885240f51dbf6e0 100644 --- "a/content/zh/docs/AboutopenGauss/\346\236\201\350\207\264RTO\346\214\211\351\234\200\345\233\236\346\224\276.md" +++ "b/content/zh/docs/AboutopenGauss/\346\236\201\350\207\264RTO\346\214\211\351\234\200\345\233\236\346\224\276.md" @@ -36,11 +36,13 @@ ## 特性约束 - 本特性仅支持在资源池化部署下使用。 -- 在对外提供服务后,数据库仍在后台进行回放,直到全部内容完成后退出回放,该阶段称为“按需回放阶段”。按需回放阶段仅支持部分类型SQL语法(INSERT/UPDATE/DELETE/SELECT/SET/SHOW)及部分ddl(详见[特性增强](../AboutopenGauss/极致RTO按需回放.md#特性增强)),该状态请使用pg_controldata工具查询。 +- 在对外提供服务后,数据库仍在后台进行回放,直到全部内容完成后退出回放,该阶段称为“按需回放阶段”。按需回放阶段仅支持部分类型SQL语法(INSERT/UPDATE/DELETE/SELECT/SET/SHOW)及部分DDL(详见[特性增强](../AboutopenGauss/极致RTO按需回放.md#特性增强)),该状态请使用pg_controldata工具查询。 - 按需回放阶段禁用autovacuum。 - 实时构建能力仅在备机failover场景生效。 - 当前不支持多备机情况下,优先选择实时构建节点升主。 - 极致RTO按需回放性能会受磁阵环境影响而波动。 +- 本功能会消耗较多的内存空间,仅建议在内存充足且对RTO时间敏感的系统上使用,其余系统建议使用极致RTO回放(详见[极致RTO](../AboutopenGauss/极致RTO.md))。 +- 资源池化下回放模式选择,请参考[资源池化高可用系统配置](../DatabaseOMGuide/资源池化高可用系统配置.md) ## 依赖关系 diff --git "a/content/zh/docs/AboutopenGauss/\350\265\204\346\272\220\346\261\240\345\214\226\347\256\227\345\255\220\345\215\270\350\275\275.md" "b/content/zh/docs/AboutopenGauss/\350\265\204\346\272\220\346\261\240\345\214\226\347\256\227\345\255\220\345\215\270\350\275\275.md" index 6c1987d471755787ee09437e303eaa5c9f3654f6..bb038627d526b2fa083055cbdb65bae163b58509 100644 --- "a/content/zh/docs/AboutopenGauss/\350\265\204\346\272\220\346\261\240\345\214\226\347\256\227\345\255\220\345\215\270\350\275\275.md" +++ "b/content/zh/docs/AboutopenGauss/\350\265\204\346\272\220\346\261\240\345\214\226\347\256\227\345\255\220\345\215\270\350\275\275.md" @@ -30,7 +30,7 @@ openGauss资源池化算子卸载特性支持Agg、SeqScan、Filter、Projection #### 存储侧libsmartscan进程 - 提供近存储数据计算的功能 - 通过存储的接口以存储的语义读取数据,只会读取存储节点的本地数据 -- 解析数据并对可见性进行判断,无法判断可见性或者无法获取对应版本数据(ustore场景)对应的PAGE/BLOCK交由计算侧原始流程处理 +- 解析数据并对可见性进行判断,无法判断可见性或者无法获取对应版本数据(Ustore场景)对应的PAGE/BLOCK交由计算侧原始流程处理 - 对可见的数据进行过滤、聚合、投影等操作并返回处理后的数据到计算节点 计算侧算子卸载并不会改变原有的执行计划以及算子的相关信息,通过存储引擎接口hook实现NDP数据的处理逻辑屏蔽执行引擎感知卸载的存在。 @@ -46,7 +46,7 @@ openGauss资源池化算子卸载特性支持Agg、SeqScan、Filter、Projection - 本特性仅支持在资源池化部署下使用。 - 暂时仅支持shared_preload_libraries方式加载插件 - 暂不支持Toast表场景 -- 暂不支持ustore场景 +- 暂不支持Ustore场景 - 暂不支持synchronize_seqscans ## 依赖关系 diff --git "a/content/zh/docs/AboutopenGauss/\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206.md" "b/content/zh/docs/AboutopenGauss/\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206.md" index a40c7d94c34c7fe0479d36066a9b9789a5f2668b..d3f0840144222f508701124ba02f2c5d8ddbd836 100644 --- "a/content/zh/docs/AboutopenGauss/\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206.md" +++ "b/content/zh/docs/AboutopenGauss/\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206.md" @@ -31,7 +31,7 @@ 当前版本主要实现对接华为云KMS服务,支持表级密钥存储,实现对行存表加密,规格约束如下: - 支持heap存储行存表加密。 -- 不支持列存加密,不支持物化视图加密,不支持ustore存储引擎加密。 +- 不支持列存加密,不支持物化视图加密,不支持Ustore存储引擎加密。 - 不支持索引和Sequence加密,不支持XLOG日志加密,不支持MOT内存表加密,不支持系统表加密。 - 用户在创建表时可以指定加密算法,加密算法一旦指定不可更改。如果创建表时设置enable\_tde为on,但是不指定加密算法encrypt\_algo,则默认使用AES\_128\_CTR加密算法。 - 如果在创建表时未开启加密功能或指定加密算法,后续无法再切换为加密表。 diff --git "a/content/zh/docs/AboutopenGauss/\351\200\273\350\276\221\345\244\215\345\210\266.md" "b/content/zh/docs/AboutopenGauss/\351\200\273\350\276\221\345\244\215\345\210\266.md" index 0f433d65c00a21ae14eae020f4e1966bc3842f4c..d8ba7f7c8d66969f3bb626c9ea62968b762ff54a 100644 --- "a/content/zh/docs/AboutopenGauss/\351\200\273\350\276\221\345\244\215\345\210\266.md" +++ "b/content/zh/docs/AboutopenGauss/\351\200\273\350\276\221\345\244\215\345\210\266.md" @@ -21,8 +21,18 @@ DN通过物理日志反解析为逻辑日志,DRS等逻辑复制工具从DN抽 - openGauss 1.0.0逻辑解码新增全量+增量抽取日志的方案。 - openGauss 1.1.0逻辑解码新增备机支持逻辑解码。 - openGauss 6.0.0-RC1逻辑复制支持如下DDL操作: - - CREATE/DROP TABLE|TABLE PARTITION - - CREATE/DROP INDEX + - CREATE/DROP/ALTER/TRUNCATE/RENAME TABLE | TABLE PARTITION | TABLE SUBPARTITION + - CREATE/ALTER/DROP INDEX + - CREATE/ALTER/DROP VIEW + - CREATE/ALTER/DROP/REFRESH [INCREMENTAL] MATERIALIZED VIEW + - CREATE/ALTER/DROP TYPE + - CREATE/ALTER/DROP FUNCTION + - CREATE/ALTER/DROP PROCEDURE + - CREATE/ALTER/DROP TRIGGER + - CREATE/DROP PACKAGE + - CREATE/DROP SCHEMA + - CREATE/DROP SEQUENCE + - COMMENT/GRANT/REVOKE ## 特性约束 diff --git a/content/zh/docs/BriefTutorial/Ustore.md b/content/zh/docs/BriefTutorial/Ustore.md index a55d4b68adaef38f76bdcdcb91146a62f461b89e..2f1d42db5d6d458305f59576cd8169681c8135d3 100644 --- a/content/zh/docs/BriefTutorial/Ustore.md +++ b/content/zh/docs/BriefTutorial/Ustore.md @@ -29,16 +29,16 @@ Ustore存储引擎可以在数据频繁更新场景下性能依旧稳如泰山 - 不支持 compression 。 - 不支持 FOR No Key Update 和 FOR KEY SHARE 。 - 不支持 compress as 。 -- 不支持段页式表 +- 不支持段页式表。 - 不支持 concurrent 索引 - 在 DELETE 语句中不能与其他存储类型一起使用。 -- 不支持列存表 -- 不支持 MOT 外表 -- 不支持 cursor for update/share +- 不支持列存表。 +- 不支持 MOT 外表。 +- 不支持 cursor for update/share。 ## 使用指导 -USTORE与原有的ASTORE\(Append Update\)存储引擎并存。USTORE存储引擎屏蔽了存储层实现的细节,SQL语法和原有的ASTORE存储引擎使用基本保持一致,唯一差别是建表和建索引有些细微区别。 +Ustore与原有的Astore\(Append Update\)存储引擎并存。Ustore存储引擎屏蔽了存储层实现的细节,SQL语法和原有的ASTORE存储引擎使用基本保持一致,唯一差别是建表和建索引有些细微区别。 - **创建表的方式** @@ -48,10 +48,10 @@ USTORE与原有的ASTORE\(Append Update\)存储引擎并存。USTORE存储引擎 create table test(id int, int age, name varchar(10)) with (storage_type=ustore); ``` - - **创建方式2:GUC参数配置指定USTORE存储引擎** + - **创建方式2:GUC参数配置指定Ustore存储引擎** - 1. 数据库启动之前,在postgresql.conf中设置“enable\_default\_ustore\_table=on”,默认指定用户创建表时使用USTORE存储引擎。 + 1. 数据库启动之前,在postgresql.conf中设置“enable\_default\_ustore\_table=on”,默认指定用户创建表时使用Ustore存储引擎。 \[postgresql.conf配置\] @@ -68,7 +68,7 @@ USTORE与原有的ASTORE\(Append Update\)存储引擎并存。USTORE存储引擎 - **创建索引的方式** - USTORE存储引擎使用的索引为UBtree, UBtree是专门给USTORE存储引擎开发的索引,也是该引擎目前唯一支持的索引类型。 + Ustore存储引擎使用的索引为UBtree, UBtree是专门给Ustore存储引擎开发的索引,也是该引擎目前唯一支持的索引类型。 假定有如下test表结构,计划在test表的age列上增加一个UBtree索引。 diff --git "a/content/zh/docs/DatabaseAdministrationGuide/MOT-SQL\350\246\206\347\233\226\345\222\214\351\231\220\345\210\266.md" "b/content/zh/docs/DatabaseAdministrationGuide/MOT-SQL\350\246\206\347\233\226\345\222\214\351\231\220\345\210\266.md" index b8482e11bc71506ca5f081f59d8d0e5692dbfa11..a3495ad18f4954061f2e42f23f2a715899e18fa6 100644 --- "a/content/zh/docs/DatabaseAdministrationGuide/MOT-SQL\350\246\206\347\233\226\345\222\214\351\231\220\345\210\266.md" +++ "b/content/zh/docs/DatabaseAdministrationGuide/MOT-SQL\350\246\206\347\233\226\345\222\214\351\231\220\345\210\266.md" @@ -15,7 +15,7 @@ MOT不支持以下特性: - 不支持全文检索索引。 - 不支持逻辑复制特性。 - 不支持保存点。 -- 不支持ustore存储引擎。 +- 不支持Ustore存储引擎。 - 不支持列存表。 此外,下面详细列出了MOT、MOT索引、查询和DML语法的各种通用限制,以及查询原生编译的特点和限制。 diff --git "a/content/zh/docs/DatabaseAdministrationGuide/\350\256\276\347\275\256\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206_TDE.md" "b/content/zh/docs/DatabaseAdministrationGuide/\350\256\276\347\275\256\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206_TDE.md" index b4bf3fe371a0acfc58ce64d273c612a11c49ff27..bce012dc96ca4054d432725679bd3c5d5972974e 100644 --- "a/content/zh/docs/DatabaseAdministrationGuide/\350\256\276\347\275\256\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206_TDE.md" +++ "b/content/zh/docs/DatabaseAdministrationGuide/\350\256\276\347\275\256\351\200\217\346\230\216\346\225\260\346\215\256\345\212\240\345\257\206_TDE.md" @@ -14,7 +14,7 @@ 当前版本主要实现对接华为云KMS服务,支持表级密钥存储,实现对行存表加密,规格约束如下: - 支持heap存储行存表加密。 -- 不支持列存表加密,不支持物化视图加密,不支持ustore存储引擎加密。 +- 不支持列存表加密,不支持物化视图加密,不支持Ustore存储引擎加密。 - 不支持索引和Sequence加密,不支持XLOG日志加密,不支持MOT内存表加密,不支持系统表加密。 - 用户在创建表时可以指定加密算法,加密算法一旦指定不可更改。如果创建表时设置enable\_tde为on,但是不指定加密算法encrypt\_algo,则默认使用AES\_128\_CTR加密算法。 - 如果在创建表时未开启加密功能或指定加密算法,后续无法再切换为加密表。 diff --git "a/content/zh/docs/DatabaseOMGuide/\345\215\207\347\272\247\345\211\215\345\277\205\350\257\273.md" "b/content/zh/docs/DatabaseOMGuide/\345\215\207\347\272\247\345\211\215\345\277\205\350\257\273.md" index eda084b13cf17f57ba60079b3762041cd0ed71fb..d5de79ba514598a09b8a69b23a9b7e8b99f2a755 100644 --- "a/content/zh/docs/DatabaseOMGuide/\345\215\207\347\272\247\345\211\215\345\277\205\350\257\273.md" +++ "b/content/zh/docs/DatabaseOMGuide/\345\215\207\347\272\247\345\211\215\345\277\205\350\257\273.md" @@ -30,31 +30,135 @@ openGauss升级版本要求如[表1](#table7961729)所示。 - - +

版本

-

升级说明

-
+ + + + + + + + + + + - - + + + + + + + + + + + - - + + + + + + + + + + + - - + + + + + + + + + + - -
基线版本 \ 升级版本3.0.03.0.33.0.55.0.05.0.15.0.25.0.36.0.0RC16.0.0

openGauss2.0.x版本

-

可以升级到openGauss3.0.x版本

-
2.0.0

openGauss2.0.x版本

-

可以升级到openGauss5.0.x版本

-
3.0.0

openGauss3.0.x版本

-

可以升级到openGauss5.0.x版本

-
3.0.3
+ 3.0.5 + + + + ✕ + ✕ + √ + √ + √ + √ + + + 5.0.0 + + + + + √ + √ + √ + √ + √ + + + 5.0.1 + + + + + + √ + √ + √ + √ + + + 5.0.2 + + + + + + + √ + ✕ + √ + + + 5.0.3 + + + + + + + + ✕ + √ + + + 6.0.0RC1 + + + + + + + + + √ + + **重点说明:** 升级只保证LTS版本升级成功,创新版本不保证升级成功,优先推荐安装LTS版本,不推荐使用创新版上生产环境。 +版本能否升级遵循以下两个原则: +>1.只能低版本升级到高版本。 +> +>2.按照发布时间,只能发布时间早的版本升级到发布时间晚的版本。 + + >![](public_sys-resources/icon-note.png) **说明:** >升级前版本,可以通过执行如下工具查看。 > diff --git "a/content/zh/docs/DatabaseOMGuide/\347\211\251\347\220\206\345\244\207\344\273\275\344\270\216\346\201\242\345\244\215.md" "b/content/zh/docs/DatabaseOMGuide/\347\211\251\347\220\206\345\244\207\344\273\275\344\270\216\346\201\242\345\244\215.md" index 7d1240701104bc83f702ca7a8a6bf3ca7bdf6583..1be75224f99d8ac5333a04d28a794af02ffee334 100644 --- "a/content/zh/docs/DatabaseOMGuide/\347\211\251\347\220\206\345\244\207\344\273\275\344\270\216\346\201\242\345\244\215.md" +++ "b/content/zh/docs/DatabaseOMGuide/\347\211\251\347\220\206\345\244\207\344\273\275\344\270\216\346\201\242\345\244\215.md" @@ -476,10 +476,13 @@ gs\_probackup目前支持进度打印,会分别在文件备份、文件验证 - 当备份的规模比较大或在备份同时执行业务时,为了防止备份过程中timeout发生,请适当调整postgresql.conf文件的参数 session\_timeout、wal\_sender\_timeout。并且在备份的命令行参数中适当调整参数--rw-timeout的值。 - 资源池化模式下,恢复到不同集群需先执行全量恢复。 - 恢复时,使用-T选项把备份中的外部目录重定向到新目录时,请同时指定参数--external-mapping。 -- 增量备份恢复后,之前创建的逻辑复制槽不可用,需删除重建。 +- 增量备份恢复后,之前创建的非pgoutput插件的逻辑复制槽不可用,需删除重建。 - 当使用远程备份时,请确保远程机器和备份机器的时钟同步,以防止使用--recovery-target-time恢复的场合,启动gaussdb时有可能会失败。 - 当远程备份有效时\(remote-proto=ssh\),请确保-h和--remote-host指定的是同一台机器。当远程备份无效时,如果指定了-h选项,请确保-h指定的是本机地址或本机主机名。 -- 当前暂不支持备份逻辑复制槽。 +- 当前仅支持备份发布订阅的逻辑复制槽。 +- 备份时,请确保服务器用户对备份的目录下所有文件有读写的权限,以防止在恢复时因权限不足的问题而失败。 +- 在资源池化模式下当前仅支持本地主机操作。 +- 备份将执行checkpoint与xlog switch操作,此行为将产生新的xlog,并提交事务。一主一备或一主多备场景备份时,若配置文件中synchronous_commit设置为on,备机关停可能会导致主机同步提交事务失败,进而导致备份失败。此场景下,请确认各节点状态正常,或将synchronous_commit设置为off以避免备份失败。 - 在开启enable_cbm_tracking后,不能直接执行增量备份,需要先执行全量备份,即使在开启参数之前已经执行过全量备份。 - 备份到兼容S3协议的对象存储时,请确保对象存储服务已经开通,可以获取到ak和sk,并且已经创建好bucket。备份到对象存储特性目前不支持执行merge子命令。 diff --git "a/content/zh/docs/DatabaseOMGuide/\350\265\204\346\272\220\346\261\240\345\214\226\344\274\201\344\270\232\347\211\210\344\275\277\347\224\250\351\230\266\346\256\265\351\227\256\351\242\230.md" "b/content/zh/docs/DatabaseOMGuide/\350\265\204\346\272\220\346\261\240\345\214\226\344\274\201\344\270\232\347\211\210\344\275\277\347\224\250\351\230\266\346\256\265\351\227\256\351\242\230.md" index fe9df041bd0904dfac129966ed54017fbcc2a7a7..ebf54b68883117bb84cca6ff39332e245791c79f 100644 --- "a/content/zh/docs/DatabaseOMGuide/\350\265\204\346\272\220\346\261\240\345\214\226\344\274\201\344\270\232\347\211\210\344\275\277\347\224\250\351\230\266\346\256\265\351\227\256\351\242\230.md" +++ "b/content/zh/docs/DatabaseOMGuide/\350\265\204\346\272\220\346\261\240\345\214\226\344\274\201\344\270\232\347\211\210\344\275\277\347\224\250\351\230\266\346\256\265\351\227\256\351\242\230.md" @@ -10,4 +10,5 @@ - **[ss_enable_ondemand_recovery设置失败](ss_enable_ondemand_recovery设置失败.md)** - **[设置日志级别导致主节点coredump](设置日志级别导致主节点coredump.md)** - **[设置shared_buffers后备节点manually_stopped](设置shared_buffers后备节点manually_stopped.md)** -- **[一主两备集群停掉两个节点数据库异常](一主两备集群停掉两个节点数据库异常.md)** \ No newline at end of file +- **[一主两备集群停掉两个节点数据库异常](一主两备集群停掉两个节点数据库异常.md)** +- **[资源池化高可用系统配置](资源池化高可用系统配置.md)** \ No newline at end of file diff --git "a/content/zh/docs/DatabaseOMGuide/\350\265\204\346\272\220\346\261\240\345\214\226\351\253\230\345\217\257\347\224\250\347\263\273\347\273\237\351\205\215\347\275\256.md" "b/content/zh/docs/DatabaseOMGuide/\350\265\204\346\272\220\346\261\240\345\214\226\351\253\230\345\217\257\347\224\250\347\263\273\347\273\237\351\205\215\347\275\256.md" new file mode 100644 index 0000000000000000000000000000000000000000..d54f0591f9847dede1ba1f6c208eb0590bbedaa2 --- /dev/null +++ "b/content/zh/docs/DatabaseOMGuide/\350\265\204\346\272\220\346\261\240\345\214\226\351\253\230\345\217\257\347\224\250\347\263\273\347\273\237\351\205\215\347\275\256.md" @@ -0,0 +1,59 @@ +# 资源池化高可用系统配置 + +## 原理介绍 +资源池化架构的故障恢复机制与传统的主备架构存在区别:由于资源池化下底层采用共享存储,因此备机无需接收来自主机的预写式日志,也无需对以上日志进行重演。当故障发生后,备机根据主机控制文件中的redo点开始恢复,直到恢复到主机的最后一条日志为止。因此,资源池化架构下的RTO时间与该阶段需要回放的日志量有关,即主机最新日志位置 - redo点的日志位置。为了保证资源池化部署下的RTO时间,需要额外关注REDO日志量,可以使用如下SQL进行查询。 + + ``` + // 预置如下自定义函数 + CREATE OR REPLACE FUNCTION hex_to_int(hexval varchar) RETURNS BIGINT AS $$ + DECLARE + result bigint; + BEGIN + EXECUTE 'SELECT x' || quote_literal(hexval) || '::bigint' INTO result; + RETURN result; + END; + $$ LANGUAGE plpgsql IMMUTABLE STRICT; + + create view query_redo_gap as select b.node_name, + b.pgwr_actual_flush_total_num, + b.pgwr_last_flush_num, + b.remain_dirty_page_num, + b.queue_head_page_rec_lsn, + b.queue_rec_lsn, + b.current_xlog_insert_lsn, + b.ckpt_redo_point, + (hex_to_int(substring(b.current_xlog_insert_lsn, 1, b.curr_pos - 1)) * 4 * 1024 * 1024 * 1024 + + hex_to_int(substring(b.current_xlog_insert_lsn, b.curr_pos + 1))) as curr_redo, + (hex_to_int(substring(b.ckpt_redo_point, 1, b.redo_pos - 1)) * 4 * 1024 * 1024 * 1024 + + hex_to_int(substring(b.ckpt_redo_point, b.redo_pos + 1))) as ckpt_redo, + (curr_redo - ckpt_redo) / 1024 / 1024 as "REDO GAP(MB)" + from (select a.*, + position('/' IN current_xlog_insert_lsn) as curr_pos, + position('/' IN ckpt_redo_point) as redo_pos + from local_pagewriter_stat() a) b; + + // 使用如下SQL查询回放日志量,其中的REDO GAP 字段即表示系统发生故障后需要回放的日志量。如下所示当前时刻如果主机如果发生故障,集群恢复需要回放247MB日志 + openGauss=# select * from query_redo_gap; + node_name | pgwr_actual_flush_total_num | pgwr_last_flush_num | remain_dirty_page_num | queue_head_page_rec_lsn | queue_rec_lsn | current_xlog_in + kpt_redo | REDO GAP(MB) + -----------+-----------------------------+---------------------+-----------------------+-------------------------+---------------+---------------- + ----------+---------------- + node0 | 32280595 | 1360 | 49473 | A/500F0248 | A/5F6800A8 | A/5F830648 + 292833864 | 247.2509765625 + ``` +当查询到的REDO GAP越大,系统故障后需要回放的日志越多,RTO时间越长。如果发现系统的REDO GAP不断增加,则说明主机当前刷脏速度跟不上脏页生成速度,需要考虑提高刷盘能力或降低业务压力。提高刷盘能力可以尝试降低pagewrite_sleep间隙、提高pagewriter_thread_num数量、降低incremental_checkpoint_timeout间隔等方式。(详见[后端写进程](../DatabaseReference/后端写进程.md)和[检查点](../DatabaseReference/检查点.md)) + +## 回放方式选择 +池化架构当前有串行回放、并行回放、极致RTO回放、极致RTO按需回放、极致RTO按需回放实时构建可以选择,对应关系如下: + +| 回放模式 | 开启参数 | 回放速度 | 对内存消耗 | 适用场景 | +| ----------------------- | ------------------------------------------------------------ | -------- | ---------- | ------------------------------------------------------------ | +| 串行回放 | recovery_max_workers = 1 | 慢 | 低 | 不推荐使用 | +| 并行回放 | recovery_max_workers > 1, recovery_parse_workers = 1 | 较慢 | 适中 | 不推荐适用 | +| 极致RTO回放 | ss_enable_ondemand_recovery = off, recovery_parse_workers > 1, recovery_redo_workers >= 1 | 适中 | 适中 | 在一般系统中使用,当REDO GAP较大或RTO不敏感场景下推荐使用 | +| 极致RTO按需回放 | ss_enable_ondemand_recovery = on, ss_enable_ondemand_realtime_build = off, recovery_parse_workers > 1, recovery_redo_workers >= 1 | 较快 | 较高 | 在RTO敏感系统使用,需要控制REDO GAP不能过大 | +| 极致RTO按需回放实时构建 | ss_enable_ondemand_recovery = on, ss_enable_ondemand_realtime_build = on, recovery_parse_workers > 1, recovery_redo_workers >= 1 | 最快 | 较高 | 在RTO敏感系统使用,需要控制REDO GAP不能过大,且备机未发生故障时也会消耗CPU和IO | + +串行回放、并行回放、极致RTO回放、极致RTO按需回放都是故障后才会启动的回放,非故障状态下不会启动回放线程,不消耗CPU资源;极致RTO按需回放实时构建在非故障状态下也会启动回放线程,实时构建当前的日志,降低故障发生后的日志构建时间,加速RTO,因此会消耗一定的CPU资源。 + +此外,极致RTO按需回放、极致RTO按需回放实时构建会将需要回放的内容存放在内存中,需要消耗大量的内存资源,开启该特性后在备机启动阶段就会预占内存,不推荐在内存较小的环境上使用。如果由于内存不足导致回放期间频繁触发hashmap清理,回放总耗时甚至会比使用极致RTO回放更高。 \ No newline at end of file diff --git "a/content/zh/docs/DatabaseOMGuide/\351\200\273\350\276\221\345\244\215\345\210\266\346\224\257\346\214\201DDL\346\223\215\344\275\234.md" "b/content/zh/docs/DatabaseOMGuide/\351\200\273\350\276\221\345\244\215\345\210\266\346\224\257\346\214\201DDL\346\223\215\344\275\234.md" index 7d2081b7447c00481a2f0e2de3548d8151b08b5f..57b6f5dbd853e62a25af58d5825d88ec5fa48494 100644 --- "a/content/zh/docs/DatabaseOMGuide/\351\200\273\350\276\221\345\244\215\345\210\266\346\224\257\346\214\201DDL\346\223\215\344\275\234.md" +++ "b/content/zh/docs/DatabaseOMGuide/\351\200\273\350\276\221\345\244\215\345\210\266\346\224\257\346\214\201DDL\346\223\215\344\275\234.md" @@ -4,19 +4,34 @@ openGauss在逻辑复制过程中支持如下DDL操作: -- CREATE/DROP TABLE|TABLE PARTITION -- CREATE/DROP INDEX +- CREATE/DROP/ALTER/TRUNCATE/RENAME TABLE | TABLE PARTITION | TABLE SUBPARTITION +- CREATE/ALTER/DROP INDEX +- CREATE/ALTER/DROP VIEW +- CREATE/ALTER/DROP/REFRESH [INCREMENTAL] MATERIALIZED VIEW +- CREATE/ALTER/DROP TYPE +- CREATE/ALTER/DROP FUNCTION +- CREATE/ALTER/DROP PROCEDURE +- CREATE/ALTER/DROP TRIGGER +- CREATE/DROP PACKAGE +- CREATE/DROP SCHEMA +- CREATE/DROP SEQUENCE +- COMMENT/GRANT/REVOKE ## 注意事项 - 只支持行存表的DDL操作。 -- 不支持列存,ustore存储引擎。 +- TYPE仅支持复合类型和枚举类型。 +- 不支持列存,Ustore存储引擎。 - 在订阅端手动删除表会导致DDL同步失败,发布订阅阻塞。 - 不支持在对表进行相关的表结构操作中调用VOLATILE函数。 >在为表增加一个字段并指定默认值中执行了VOLATILE函数,而这个函数中进行了创建表的DDL操作,这样在新增字段并为其计算默认值的过程中会因为调用VOLATILE函数写入其他DDL日志,导致后续在解码时读取到这个DDL日志时进行了重复的操作。 +- 在逻辑复制中使用ALTER TABLE时会有如下限制: + - 当ALTER TABLE修改表字段类型,使用USING子句设置字段值时,要求表上必须有replication identity字段,并且USING子句修改的表字段不为该标识符字段。 + - 当ALTER TABLE修改或新增表字段为AUTO_INCREMENT自增列时,要求表上必须有replication identity字段,并且USING子句修改的表字段不为该标识符字段。 + - 当ALTER TABLE新增表字段,并且表字段类型不为内置类型,即需要每个元组都重新计算其默认值,要求表上必须设置replication identity。 ## 语法格式 diff --git a/content/zh/docs/DatabaseReference/PG_THREAD_WAIT_STATUS.md b/content/zh/docs/DatabaseReference/PG_THREAD_WAIT_STATUS.md index 35b42c3c1d7c445094fdb5fe22d47f4746dde28f..2895ef1ef5bc924277f4c4e49d486f4230492601 100644 --- a/content/zh/docs/DatabaseReference/PG_THREAD_WAIT_STATUS.md +++ b/content/zh/docs/DatabaseReference/PG_THREAD_WAIT_STATUS.md @@ -330,7 +330,7 @@ wait\_status列的等待状态有以下状态。

wait reserve td

-

等待分配ustore事务槽。

+

等待分配Ustore事务槽。

diff --git "a/content/zh/docs/DatabaseReference/\344\270\273\346\234\215\345\212\241\345\231\250.md" "b/content/zh/docs/DatabaseReference/\344\270\273\346\234\215\345\212\241\345\231\250.md" index 02a3071543bebd5ef772927fc9eb75279202424d..46bd89491971239f3afedd66075b765b14220cd6 100644 --- "a/content/zh/docs/DatabaseReference/\344\270\273\346\234\215\345\212\241\345\231\250.md" +++ "b/content/zh/docs/DatabaseReference/\344\270\273\346\234\215\345\212\241\345\231\250.md" @@ -131,6 +131,21 @@ **默认值**:0 +## enable_vacuum_extreme_xmin + +**参数说明**: 使用极限xmin进行vacuum。 +打开此参数时将实时计算最新的xmin进行vacuum,能最大限度将已提交的数据设置为完全可见,提升扫描性能,但在高并发场景打开此参数会一定程度上增加ProcArrayLock争抢。 + +因此建议在压测的数据准备阶段或导入、生成了大量数据后,需要对表进行vacuum时先打开此参数,完成vacuum操作后将其关闭。打开此参数后 vacuum_defer_cleanup_age 参数依然会生效。 + +该参数属于SIGHUP类型参数,请参考[表1](重设参数.md#zh-cn_topic_0237121562_zh-cn_topic_0059777490_t91a6f212010f4503b24d7943aed6d846)中对应设置方法进行设置。 + +**取值范围**: + - on: 开启。 + - off: 关闭。 + +**默认值**:off + ## data\_replicate\_buffer\_size **参数说明**: 发送端与接收端传递数据页时,队列占用内存的大小。此参数会影响主备之间复制的缓冲大小。 diff --git "a/content/zh/docs/DatabaseReference/\345\205\266\345\256\203\351\200\211\351\241\271.md" "b/content/zh/docs/DatabaseReference/\345\205\266\345\256\203\351\200\211\351\241\271.md" index c600877e1bed887bf73433f9dba8fe35a301f91f..380244803858856e9f85b97c366d1df3a79f1658 100644 --- "a/content/zh/docs/DatabaseReference/\345\205\266\345\256\203\351\200\211\351\241\271.md" +++ "b/content/zh/docs/DatabaseReference/\345\205\266\345\256\203\351\200\211\351\241\271.md" @@ -31,7 +31,7 @@ **默认值**: off >![](public_sys-resources/icon-note.png) **说明:** ->ustore当前不支持段页式存储。 +>Ustore当前不支持段页式存储。 ## reserve\_space\_for\_nullable\_atts diff --git "a/content/zh/docs/DatabaseReference/\345\233\236\346\273\232\347\233\270\345\205\263\345\217\202\346\225\260.md" "b/content/zh/docs/DatabaseReference/\345\233\236\346\273\232\347\233\270\345\205\263\345\217\202\346\225\260.md" index 5d79212f66e5641b51561c67c1ae1b9fb33cbea6..f45dcc31424e48d960d056d8fcc3545fa9de639d 100644 --- "a/content/zh/docs/DatabaseReference/\345\233\236\346\273\232\347\233\270\345\205\263\345\217\202\346\225\260.md" +++ "b/content/zh/docs/DatabaseReference/\345\233\236\346\273\232\347\233\270\345\205\263\345\217\202\346\225\260.md" @@ -20,6 +20,9 @@ **默认值**: 256GB + >![](public_sys-resources/icon-note.gif) **说明:** + >设置该参数时接受的输入以8KB为单位,如设置值为800MB时,输入的参数为102400,设置值为16TB时,输入的参数为2147483647。 + ## undo\_limit\_size\_per\_transaction **参数说明**: 用于控制单事务undo分配空间阈值,达到阈值时事务报错回滚。 @@ -30,4 +33,7 @@ **默认值**: 32GB + >![](public_sys-resources/icon-note.gif) **说明:** + >设置该参数时接受的输入以8KB为单位,如设置值为2MB时,输入的参数为256,设置值为16TB时,输入的参数为2147483647。 + **备注**:该参数已弃用 \ No newline at end of file diff --git "a/content/zh/docs/DatabaseReference/\345\271\263\345\217\260\345\222\214\345\256\242\346\210\267\347\253\257\345\205\274\345\256\271\346\200\247.md" "b/content/zh/docs/DatabaseReference/\345\271\263\345\217\260\345\222\214\345\256\242\346\210\267\347\253\257\345\205\274\345\256\271\346\200\247.md" index fd28730bfa191b85b0791cbd5e20b472b6dea316..4a90d8251fcff70bc632286e32e9c4a71e9bf6b6 100644 --- "a/content/zh/docs/DatabaseReference/\345\271\263\345\217\260\345\222\214\345\256\242\346\210\267\347\253\257\345\205\274\345\256\271\346\200\247.md" +++ "b/content/zh/docs/DatabaseReference/\345\271\263\345\217\260\345\222\214\345\256\242\346\210\267\347\253\257\345\205\274\345\256\271\346\200\247.md" @@ -504,7 +504,46 @@ INFO: invoke prior function float_as_numeric 在A兼容模式下,开启此参数后,FLOAT[(p)]映射至numeric,此时精度p为二进制精度,p取值范围为[1,126]。

- +

disable_record_type_in_dml

+

禁止虚拟列插入配置项。开启此项后禁止在insert语句中使用record类型变量作为插入值。

+

+create table t1(col1 varchar(10),col varchar(10));
+create table t2(col1 varchar(10),col varchar(10));
+set behavior_compat_options='disable_record_type_in_dml';
+insert into t1 values('one','two');
+declare
+  cursor cur1 is select * from t1;
+  source cur1%rowtype:=('ten','wtu');
+begin
+  for source in cur1
+  loop
+    raise notice '%',source;
+    insert into t2 values(source);
+  end loop; 
+end;
+/
+ERROR:  The record type variable cannot be used as an insertion value.
+CONTEXT:  SQL statement "insert into t2 values(source)"
+PL/pgSQL function inline_code_block line 7 at SQL statement
+
+set behavior_compat_options='';
+insert into t1 values('one','two');
+declare
+  cursor cur1 is select * from t1;
+  source cur1%rowtype:=('ten','wtu');
+begin
+  for source in cur1
+  loop
+    raise notice '%',source;
+    insert into t2 values(source);
+  end loop; 
+end;
+/
+NOTICE:  (one,two)
+NOTICE:  (one,two)
+
+
+
 
 
 
diff --git "a/content/zh/docs/DatabaseReference/\345\274\200\345\217\221\344\272\272\345\221\230\351\200\211\351\241\271.md" "b/content/zh/docs/DatabaseReference/\345\274\200\345\217\221\344\272\272\345\221\230\351\200\211\351\241\271.md"
index 26d878d1acf179c31229505d86e8322720cd1ef6..b6369da0b7ba4a1a808277a61ff9b735502b4bba 100644
--- "a/content/zh/docs/DatabaseReference/\345\274\200\345\217\221\344\272\272\345\221\230\351\200\211\351\241\271.md"
+++ "b/content/zh/docs/DatabaseReference/\345\274\200\345\217\221\344\272\272\345\221\230\351\200\211\351\241\271.md"
@@ -347,7 +347,7 @@
 
 ## ustore\_attr
 
-**参数说明**: 该参数主要用来控制USTORE存储引擎表的信息统计,回滚类型,重点模块\(包括数据、索引、回滚段、回放等\)运行时数据的校验,主要用于协助研发问题定位。
+**参数说明**: 该参数主要用来控制Ustore存储引擎表的信息统计,回滚类型,重点模块\(包括数据、索引、回滚段、回放等\)运行时数据的校验,主要用于协助研发问题定位。
 
 该参数属于USERSET类型参数,请参考[表1](重设参数.md#zh-cn_topic_0283137176_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t91a6f212010f4503b24d7943aed6d846)中对应设置方法进行设置。
 
@@ -448,7 +448,7 @@ ustore\_attr='ustore\_verify\_level=FAST;ustore\_verify\_module=UPAGE:UBTREE:UND
   
 
 
-  **默认值**: UPAGE:UBTREE:UNDO
+  **默认值**: UPAGE:UBTREE
 
 - index\_trace\_level:控制开启索引追踪并控制打印级别,开启后在索引扫描的过程中,会根据不同的打印级别对符合条件的索引元组的信息进行打印。
 
@@ -503,25 +503,25 @@ ustore\_attr='ustore\_verify\_level=FAST;ustore\_verify\_module=UPAGE:UBTREE:UND
 
   **备注**:该参数已弃用
 
-- enable\_ustore\_sync\_rollback:控制USTORE表是否开启同步回滚。
+- enable\_ustore\_sync\_rollback:控制Ustore表是否开启同步回滚。
 
   **取值范围**:布尔值
 
   **默认值**:true
 
-- enable\_ustore\_async\_rollback:控制USTORE表是否开启异步回滚。
+- enable\_ustore\_async\_rollback:控制Ustore表是否开启异步回滚。
 
   **取值范围**:布尔值
 
   **默认值**:true
 
-- enable\_ustore\_page\_rollback:控制USTORE表是否开启页面回滚。
+- enable\_ustore\_page\_rollback:控制Ustore表是否开启页面回滚。
 
   **取值范围**:布尔值
 
   **默认值**:true
 
-- enable\_ustore\_partial\_seqscan:是否允许USTORE表开启部分扫描。
+- enable\_ustore\_partial\_seqscan:是否允许Ustore表开启部分扫描。
 
   **取值范围**:布尔值
 
@@ -533,13 +533,13 @@ ustore\_attr='ustore\_verify\_level=FAST;ustore\_verify\_module=UPAGE:UBTREE:UND
 
   **默认值**:false
 
-- ustats\_tracker\_naptime:控制USTORE表统计信息周期。
+- ustats\_tracker\_naptime:控制Ustore表统计信息周期。
 
   **取值范围**:1\~INT\_MAX/1000
 
   **默认值**:20, 单位\(秒\)
 
-- umax\_search\_length\_for\_prune:控制USTORE表prune操作搜索的最大深度。
+- umax\_search\_length\_for\_prune:控制Ustore表prune操作搜索的最大深度。
 
   **取值范围**:1\~INT\_MAX/1000
 
@@ -556,7 +556,7 @@ ustore\_attr='ustore\_verify\_level=FAST;ustore\_verify\_module=UPAGE:UBTREE:UND
 >![](public_sys-resources/icon-caution.png) **注意:** 
 >
 >+ ustore\_attr参数设置请慎重,建议在工程师协助下修改。
->+ 该参数只适用于集中式或者openGauss单机上的USTORE存储引擎表。
+>+ 该参数只适用于集中式或者openGauss单机上的Ustore存储引擎表。
 
 ## float\_suffix\_acceptance
 
diff --git "a/content/zh/docs/DatabaseReference/\351\227\252\345\233\236\347\233\270\345\205\263\345\217\202\346\225\260.md" "b/content/zh/docs/DatabaseReference/\351\227\252\345\233\236\347\233\270\345\205\263\345\217\202\346\225\260.md"
index 02eaded2df61dc4b8177a726cbfcf74ec14f7d31..b949ef9eb7ea9230601e0df0e1b4e6c7ad3be2d5 100644
--- "a/content/zh/docs/DatabaseReference/\351\227\252\345\233\236\347\233\270\345\205\263\345\217\202\346\225\260.md"
+++ "b/content/zh/docs/DatabaseReference/\351\227\252\345\233\236\347\233\270\345\205\263\345\217\202\346\225\260.md"
@@ -57,6 +57,6 @@
 
 该参数属于SIGHUP类型参数,请参考[表1](重设参数.md#zh-cn_topic_0283137176_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t91a6f212010f4503b24d7943aed6d846)中对应设置方法进行设置。
 
-**取值范围**:整型,单位为s,最小值为0,最大值为2147483647。
+**取值范围**:整型,单位为s,最小值为0,最大值为259200。
 
 **默认值**:0
diff --git a/content/zh/docs/ExtensionReference/dolphin-CREATE-INDEX.md b/content/zh/docs/ExtensionReference/dolphin-CREATE-INDEX.md
index 981f15ab57dd0bce0f500b3ab4e162f31ad336e8..7325d4daa351727c6ec258826bb8ea34259ec04d 100644
--- a/content/zh/docs/ExtensionReference/dolphin-CREATE-INDEX.md
+++ b/content/zh/docs/ExtensionReference/dolphin-CREATE-INDEX.md
@@ -63,7 +63,7 @@
     前缀键将取指定字段数据的前缀作为索引键值,可以减少索引占用的存储空间。含有前缀键字段的过滤条件和连接条件可以使用索引。
 
     >![](public_sys-resources/icon-note.png) **说明:**
-    > -  前缀键支持的索引方法:btree、ubtree。
+    > -  前缀键支持的索引方法:Btree、UBtree。
     > -  前缀键的字段的数据类型必须是二进制类型或字符类型(不包括特殊字符类型)。
     > -  前缀长度必须是不超过2676的正整数,并且不能超过字段的最大长度。对于二进制类型,前缀长度以字节数为单位。对于非二进制字符类型,前缀长度以字符数为单位。键值的实际长度受内部页面限制,若字段中含有多字节字符、或者一个索引上有多个键,索引行长度可能会超限,导致报错,设定较长的前缀长度时请考虑此情况。
     > -  CREATE INDEX语法中,不支持以下关键字作为前缀键的字段名称:COALESCE、CONVERT、DAYOFMONTH、DAYOFWEEK、DAYOFYEAR、DB_B_FORMAT、EXTRACT、GREATEST、HOUR_P、IFNULL、LEAST、LOCATE、MICROSECOND_P、MID、MINUTE_P、NULLIF、NVARCHAR、NVL、OVERLAY、POSITION、QUARTER、SECOND_P、SUBSTR、SUBSTRING、TEXT_P、TIME、TIMESTAMP、TIMESTAMPDIFF、TREAT、TRIM、WEEKDAY、WEEKOFYEAR、XMLCONCAT、XMLELEMENT、XMLEXISTS、XMLFOREST、XMLPARSE、XMLPI、XMLROOT、XMLSERIALIZE。若含有上述关键字的前缀键所在的索引是通过ALTER TABLE或CREATE TABLE语法创建的,导出的CREATE INDEX语句可能无法成功执行,请尽量不要使用上述关键字作为前缀键的列名称。
diff --git a/content/zh/docs/ExtensionReference/dolphin-CREATE-TABLE-PARTITION.md b/content/zh/docs/ExtensionReference/dolphin-CREATE-TABLE-PARTITION.md
index 2437c6b223f35f4b3c2e63617441a21dfff0302d..d6abfb05700ad4b9e9232e152d5514781055fe22 100644
--- a/content/zh/docs/ExtensionReference/dolphin-CREATE-TABLE-PARTITION.md
+++ b/content/zh/docs/ExtensionReference/dolphin-CREATE-TABLE-PARTITION.md
@@ -137,7 +137,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
 - 其中`col_name ( length )`为前缀键,column_name为前缀键的字段名,length为前缀长度。前缀键将取指定字段数据的前缀作为索引键值,可以减少索引占用的存储空间。含有前缀键字段的过滤条件和连接条件可以使用索引。
   
     >![](public_sys-resources/icon-note.png) **说明:** 
-    >-  前缀键支持的索引方法:btree、ubtree。
+    >-  前缀键支持的索引方法:Btree、UBtree。
     >-  前缀键的字段的数据类型必须是二进制类型或字符类型(不包括特殊字符类型)。
     >-  前缀长度必须是不超过2676的正整数,并且不能超过字段的最大长度。对于二进制类型,前缀长度以字节数为单位。对于非二进制字符类型,前缀长度以字符数为单位。键值的实际长度受内部页面限制,若字段中含有多字节字符、或者一个索引上有多个键,索引行长度可能会超限,导致报错,设定较长的前缀长度时请考虑此情况。
 
@@ -292,7 +292,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
     
     - segment
     
-      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持ustore存储引擎。
+      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持Ustore存储引擎。
     
       取值范围:on/off
     
diff --git a/content/zh/docs/ExtensionReference/dolphin-USE-DB_NAME.md b/content/zh/docs/ExtensionReference/dolphin-USE-DB_NAME.md
index 513b4096e4e64f9be8402ac8f0236cff20c31280..7218114dea4df33b08b265543235e33d4b4c25e8 100644
--- a/content/zh/docs/ExtensionReference/dolphin-USE-DB_NAME.md
+++ b/content/zh/docs/ExtensionReference/dolphin-USE-DB_NAME.md
@@ -2,7 +2,7 @@
 
 ## 功能描述
 
-USE db_name语句将db_name数据库作为默认(当前)数据库使用,用于后续语句。该数据库保持为默认数据库,直到语段的结尾,或者直到发布一个不同的USE语句。
+USE db_name语句将db_name的模式schema作为默认(当前)模式使用,用于后续语句。该模式保持为默认模式,直到语段的结尾,或者直到发布一个不同的USE语句。
 
 ## 注意事项
 
@@ -18,12 +18,12 @@ USE db_name
 
 - **db_name**
 
-  ​    数据库名。
+  ​    模式名。
 
 ## 示例
 
 ```
---切换到db1库
+--切换到db1 schema
 openGauss=# USE db1;
 SET
 openGauss=# CREATE TABLE test(a text);
@@ -31,7 +31,7 @@ CREATE TABLE
 openGauss=# INSERT INTO test VALUES('db1');
 INSERT 0 1
 
---切换到db2库
+--切换到db2 schema
 openGauss=# USE db2;
 SET
 openGauss=# CREATE TABLE test(a text);
@@ -56,7 +56,7 @@ openGauss=# select a from test;
  db2
 (1 row)
 
---切换到db1库
+--切换到db1 schema
 openGauss=# USE db1;
 SET
 openGauss=# select a from test;
diff --git a/content/zh/docs/GettingStarted/ODBC.md b/content/zh/docs/GettingStarted/ODBC.md
index 8ad79fce6408a79adb3a482d09c13adc4a24c9af..8a2311c576f62b8a4deafaedc9b2b19638d98350 100644
--- a/content/zh/docs/GettingStarted/ODBC.md
+++ b/content/zh/docs/GettingStarted/ODBC.md
@@ -50,13 +50,13 @@ Windows系统自带ODBC驱动程序管理器,在控制面板-\>管理工具中
 
 ## Linux下的ODBC包
 
-从发布包中获取,包名为openGauss-\*.\*.0-ODBC.tar.gz。Linux环境下,开发应用程序要用到unixODBC提供的头文件(sql.h、sqlext.h等)和库libodbc.so。这些头文件和库可从unixODBC-2.3.9的安装包中获得。
+从发布包中获取,包名为openGauss-\*.\*.0-ODBC.tar.gz。Linux环境下,开发应用程序要用到unixODBC提供的头文件(sql.h、sqlext.h等)和库libodbc.so。这些头文件和库可从unixODBC-x.x.x的安装包中获得。
 
 ## 配置数据源
 
 将openGauss提供的ODBC DRIVER(psqlodbcw.so)配置到数据源中便可使用。配置数据源需要配置“odbc.ini”和“odbcinst.ini”两个文件(在编译安装unixODBC过程中生成且默认放在“/usr/local/etc”目录下),并在服务器端进行配置。
 
-1.  获取unixODBC-2.3.9源码包。
+1.  获取unixODBC-x.x.x码包。
 
     获取参考地址:http://www.unixodbc.org/download.html
 
diff --git "a/content/zh/docs/GettingStarted/\344\272\206\350\247\243openGauss.md" "b/content/zh/docs/GettingStarted/\344\272\206\350\247\243openGauss.md"
index d12943b810231f15436547becb8dc3e9edcbdaab..784bc31cea289d50a2867acd097fa0213e21d815 100644
--- "a/content/zh/docs/GettingStarted/\344\272\206\350\247\243openGauss.md"
+++ "b/content/zh/docs/GettingStarted/\344\272\206\350\247\243openGauss.md"
@@ -23,7 +23,7 @@ openGauss是一款全面友好开放,携手伙伴共同打造的企业级开
         -   提供了面向多核架构的并发控制技术,结合鲲鹏硬件优化方案,在两路鲲鹏下,TPCC Benchmark可以达到150万tpmc的性能。
         -   针对当前硬件多核numa的架构趋势, 在内核关键结构上采用了Numa-Aware的数据结构。
         -   提供Sql-bypass智能快速引擎技术。
-        -   针对数据频繁更新的场景,提供ustore存储引擎。
+        -   针对数据频繁更新的场景,提供Ustore存储引擎。
 
     -   高可用
         -   支持主备同步、异步以及级联备机多种部署模式。
diff --git "a/content/zh/docs/GettingStarted/\344\275\277\347\224\250openGauss.md" "b/content/zh/docs/GettingStarted/\344\275\277\347\224\250openGauss.md"
index dc01ec3ccdca39c6b333898c403cca0aa957eab3..8f03c39b05f4a98b9dd2fb356924496d2ef9bbea 100644
--- "a/content/zh/docs/GettingStarted/\344\275\277\347\224\250openGauss.md"
+++ "b/content/zh/docs/GettingStarted/\344\275\277\347\224\250openGauss.md"
@@ -22,7 +22,7 @@ openGauss正常运行。
     gsql -d postgres -p 8000
     ```
 
-    其中postgres为需要连接的数据库名称,8000为数据库主节点的端口号。请根据实际情况替换。另外,也可以使用如下任一命令连接数据库。
+    其中postgres为需要连接的数据库名称,8000为数据库主节点的端口号,********为密码。请根据实际情况替换。另外,也可以使用如下任一命令连接数据库。
 
     ```
     gsql postgres://omm:********@127.0.0.1:8000/postgres -r
diff --git "a/content/zh/docs/GettingStarted/\345\215\225\350\212\202\347\202\271\345\256\271\345\231\250\345\214\226\345\256\211\350\243\205.md" "b/content/zh/docs/GettingStarted/\345\215\225\350\212\202\347\202\271\345\256\271\345\231\250\345\214\226\345\256\211\350\243\205.md"
index 1f972781124616b08a7238f95d8b6de70f61e58e..ee3a642767ba1e0c71839c79915d53ede032d691 100644
--- "a/content/zh/docs/GettingStarted/\345\215\225\350\212\202\347\202\271\345\256\271\345\231\250\345\214\226\345\256\211\350\243\205.md"
+++ "b/content/zh/docs/GettingStarted/\345\215\225\350\212\202\347\202\271\345\256\271\345\231\250\345\214\226\345\256\211\350\243\205.md"
@@ -16,13 +16,13 @@
 
 >![](public_sys-resources/icon-note.png) **说明:** 
 >
->-   安装前需要提供openGauss二进制安装包,解压后将以bz2结尾的包(openGauss-X.X.X-CentOS-64bit.tar.bz2。X.X.X为当前openGauss版本号)放到 dockerfiles/文件夹。二进制包可以从  [https://www.opengauss.org/zh/download/](https://www.opengauss.org/zh/download/)下载,确保有正确的yum源。
+>-   安装前需要提供openGauss二进制安装包,解压后将以bz2结尾的包(openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2,X.X.X为当前openGauss版本号)放到 dockerfiles/文件夹。二进制包可以从  [https://www.opengauss.org/zh/download/](https://www.opengauss.org/zh/download/)下载,确保有正确的yum源。
 >
 >-   运行buildDockerImage.sh脚本时,如果不指定-i参数,此时默认提供SHA256检查,需要您手动将校验结果写入sha256\_file\_amd64文件。
 >   ```
 >   ## 修改sha256校验文件内容
 >   cd /soft/openGauss-server/docker/dockerfiles/X.X.X
->   sha256sum openGauss-X.X.X-CentOS-64bit.tar.bz2 > sha256_file_amd64 
+>   sha256sum openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2 > sha256_file_amd64 
 >   ```
 >
 >-   安装前需要从华为开源镜像站获取openEuler\_aarch64.repo文件,并放到openGauss-server-master/docker/dockerfiles/X.X.X文件夹下面。openEuler\_aarch64.repo获取方法:
@@ -73,30 +73,30 @@ openGauss镜像配置了本地信任机制,因此在容器内连接数据库
 
 ## 开启实例
 
-opengauss数据库版本以2.0.0为例命令如下。
+opengauss数据库版本以6.0.0为例命令如下。
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=XXXXXXXX opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=XXXXXXXX opengauss:6.0.0
 ```
 
 ## 从操作系统层面连接数据库
 
-opengauss数据库版本以2.0.0为例命令如下。
+opengauss数据库版本以6.0.0为例命令如下。
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=XXXXXXXX -p 8888:5432 opengauss:2.0.0
-$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p 8888
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=XXXXXXXX -p 8888:5432 opengauss:6.0.0
+$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p 8888 # 宿主机需要安装gsql客户端
 ```
 
 ## 数据持久化
 
-opengauss数据库版本以2.0.0为例命令如下。
+opengauss数据库版本以6.0.0为例命令如下。
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:2.0.0
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:6.0.0
 ```
 
 >**说明**
 >
 >1. 对于使用其他版本的数据库构建容器镜像,可以参考`openGauss-server/docker/dockerfiles/X.X.X`里面的配置文件,只需要修改为对应的版本号即可。
 >
->2. 对于构建openEuler-arm的容器镜像,如果`openeuler-20.03-lts:latest`镜像下载不下来,可以在openEuler官方网站`http://121.36.97.194/openEuler-20.03-LTS/docker_img/aarch64/`下载容器镜像压缩包`openEuler-docker.aarch64.tar.xz`,然后使用`docker load -i openEuler-docker.aarch64.tar.xz`导入到本地镜像列表。
+>2. 对于构建openEuler-arm的容器镜像,如果`openeuler-20.03-lts:latest`镜像下载不下来,可以在openEuler官方网站`https://repo.openeuler.org/openEuler-20.03-LTS/docker_img/aarch64/`下载容器镜像压缩包`openEuler-docker.aarch64.tar.xz`,然后使用`docker load -i openEuler-docker.aarch64.tar.xz`导入到本地镜像列表。
 >
 >3. 在进行构建时候,如果遇到yum源下载超时,请检查下代理,也可以在buildDockerImage.sh脚本里面的`docker build`命令后加上`--network host`使用宿主机的网络。
\ No newline at end of file
diff --git "a/content/zh/docs/InstallationGuide/CM\345\256\211\350\243\205_\345\256\271\345\231\250.md" "b/content/zh/docs/InstallationGuide/CM\345\256\211\350\243\205_\345\256\271\345\231\250.md"
new file mode 100644
index 0000000000000000000000000000000000000000..649f136b63b74506ecefc714a2a1225242645fb4
--- /dev/null
+++ "b/content/zh/docs/InstallationGuide/CM\345\256\211\350\243\205_\345\256\271\345\231\250.md"
@@ -0,0 +1,152 @@
+# CM安装_容器
+
+本章节主要介绍通过Docker安装openGauss,方便DevOps用户的安装、配置和环境设置。
+
+## 支持的架构和操作系统版本
+
+-   x86-64 CentOS 7.6
+
+-   ARM64 openEuler 20.03 LTS
+
+## CM容器化部署
+
+### 创建openGauss docker镜像
+
+下载openGauss-container仓库代码,构建脚本在该仓库中管理。
+
+>-   构建镜像需要openGauss社区发布的企业版本包openGauss-All-X.X.X-CentOS7-x86_64.tar.gz,放到`openGauss-container/dockerfiles`目录下。
+>-   运行buildDockerImage.sh脚本时,如果不指定-i参数,此时默认提供SHA256检查,需要您手动将校验结果写入sha256_file_amd64文件。
+>    ```
+>    ## 修改sha256校验文件内容
+>    cd `openGauss-container/dockerfiles`
+>    sha256sum openGauss-All-X.X.X-CentOS7-x86_64.tar.gz > sha256_file_amd64 
+>    ```
+
+>-   对于x86平台,使用社区发布的Centos_x86_64的包;对于arm平台,使用发布的openEuler-arm版本企业包。
+
+构建命令:
+```
+sh buildDockerImage.sh -v X.X.X -i
+```
+
+### 使用社区发布的镜像
+
+最新的容器镜像:
+
+x86_64平台:
+```
+docker pull swr.cn-south-1.myhuaweicloud.com/opengauss/x86_64/opengauss:X.X.X
+docker tag swr.cn-south-1.myhuaweicloud.com/opengauss/x86_64/opengauss:X.X.X opengauss:X.X.X
+```
+
+arm平台:
+```
+docker pull swr.cn-south-1.myhuaweicloud.com/opengauss/arm/opengauss:X.X.X
+docker tag swr.cn-south-1.myhuaweicloud.com/opengauss/arm/opengauss:X.X.X opengauss:X.X.X
+```
+
+### 启动容器
+
+搭建CM集群至少需要两个容器实例才能使用。
+
+1. 创建容器网络
+
+##### 如果多个容器部署在一台机器上,创建一个普通的容器网络即可:
+`docker network create --subnet=172.11.0.0/24 og-network`
+
+##### 如果容器跨多个节点部署,即要求节点间的容器能够进行通信。业界有多种实现方式,这里提供一种作为参考,用户可以自行选择。
+
+选择一台部署progrium/consul容器:
+```
+docker pull progrium/consul
+docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap
+```
+
+每个节点的docker都进行修改:
+vim /usr/lib/systemd/system/docker.service
+在ExecStart一栏后面追加:
+```
+-H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --cluster-store=consul://192.168.0.94:8500 --cluster-advertise=eth0:2376
+```
+**192.168.0.94** 是部署consul的机器ip。
+
+修改完成后需要重启docker:
+```
+systemctl daemon-reload
+systemctl restart docker
+```
+
+创建overlay网络
+```
+docker network create -d overlay --subnet 10.22.1.0/24  --gateway 10.22.1.1 og-network
+```
+
+2. 启动多个容器实例
+   
+```
+# ip需要和容器网络在同一网段,几个实例的ip和节点名称不能重复。如下示例1主2备:
+
+primary_nodeip="172.11.0.2"
+standby1_nodeip="172.11.0.3"
+standby2_nodeip="172.11.0.4"
+primary_nodename=primary
+standby1_nodename=standby1
+standby2_nodename=standby2
+
+OG_NETWORK=og-network
+GS_PASSWORD=test@123
+
+# 启动实例1 
+docker run -d -it -P --ulimit nofile=1000000:1000000 --sysctl kernel.sem="250 6400000 1000 25600" --security-opt seccomp=unconfined -v /data/opengauss_volume:/volume --name opengauss-01 --net ${OG_NETWORK} --ip "$primary_nodeip" -h=$primary_nodename -e primaryhost="$primary_nodeip" -e primaryname="$primary_nodename" -e standbyhosts="$standby1_nodeip, $standby2_nodeip" -e standbynames="$standby1_nodename, $standby2_nodename" -e GS_PASSWORD=$GS_PASSWORD opengauss:X.X.X 
+
+# 启动实例2
+docker run -d -it -P --ulimit nofile=1000000:1000000 --sysctl kernel.sem="250 6400000 1000 25600" --security-opt seccomp=unconfined -v /data/opengauss_volume:/volume --name opengauss-02 --net ${OG_NETWORK} --ip "$standby1_nodeip" -h=$standby1_nodename -e primaryhost="$primary_nodeip" -e primaryname="$primary_nodename" -e standbyhosts="$standby1_nodeip, $standby2_nodeip" -e standbynames="$standby1_nodename, $standby2_nodename" -e GS_PASSWORD=$GS_PASSWORD opengauss:X.X.X
+
+# 启动实例3
+docker run -d -it -P --ulimit nofile=1000000:1000000 --sysctl kernel.sem="250 6400000 1000 25600" --security-opt seccomp=unconfined -v /data/opengauss_volume:/volume --name opengauss-03 --net ${OG_NETWORK} --ip "$standby2_nodeip" -h=$standby2_nodename -e primaryhost="$primary_nodeip" -e primaryname="$primary_nodename" -e standbyhosts="$standby1_nodeip, $standby2_nodeip" -e standbynames="$standby1_nodename, $standby2_nodename" -e GS_PASSWORD=$GS_PASSWORD opengauss:X.X.X
+```
+
+3. 使用脚本快速启动1主2备的cm集群容器实例
+
+在`openGauss-container`目录下,执行`sh create_cm_contariners.sh`
+
+```
+This script will create three containers with cm on a single node. \n
+Please input OG_SUBNET (容器所在网段) [172.11.0.0/24]: 
+OG_SUBNET set 172.11.0.0/24
+Please input OG_NETWORK (容器网络名称) [og-network]: 
+OG_NETWORK set og-network
+Please input GS_PASSWORD (定义数据库密码)[test@123]: 
+GS_PASSWORD set
+Please input openGauss VERSION [X.X.X]: 
+openGauss VERSION set X.X.X
+starting  create docker containers...
+```
+
+会让填入容器网段、容器网络名称、数据库密码、容器版本号。使用默认值得话可以直接回车跳过。
+脚本执行完成后,会拉起3个容器实例,组成1主2备的cm集群。
+
+### 进入容器中查看实例状态
+
+1. 进入容器
+```
+docker exec -ti  /bin/bash
+su - omm
+```
+
+2. 查看集群状态
+```
+cm_ctl query -Cvid
+```
+
+3. 连接接数据库
+```
+gsql -d postgres -r
+```
+
+>**说明**
+>
+>- 1. 构建的容器需要包含操作系统层
+>
+>- 2. 容器内仅提供CM和数据库内核工具,OM工具无法使用
+
diff --git "a/content/zh/docs/InstallationGuide/\345\210\233\345\273\272XML\351\205\215\347\275\256\346\226\207\344\273\266.md" "b/content/zh/docs/InstallationGuide/\345\210\233\345\273\272XML\351\205\215\347\275\256\346\226\207\344\273\266.md"
index 73f9335aaf82239a6c9e85156a58b5eafe4b7034..6906a227aab733dd19d996dace9c51d4bb6ddf64 100644
--- "a/content/zh/docs/InstallationGuide/\345\210\233\345\273\272XML\351\205\215\347\275\256\346\226\207\344\273\266.md"
+++ "b/content/zh/docs/InstallationGuide/\345\210\233\345\273\272XML\351\205\215\347\275\256\346\226\207\344\273\266.md"
@@ -46,7 +46,7 @@
     
   
     
-  
+  
     
     
     
@@ -106,6 +106,7 @@
 >-   配置dcf\_config时,角色的配置有leader,follower,passive,logger,其中可投票的角色有leader,follower,logger,配置角色组网时,可投票的角色不能少于3个,因此dcf模式下至少需要三个节点。
 >-   资源池化中请谨慎配置所有包含磁盘信息的参数,安装时工具会低格所有参数中配置的磁盘,所有参数中的磁盘不能重复。
 >-   资源池化中的ip和dn的数据ip保持一致,dss的端口是db端口+10,dms的端口是db端口+20。
+>-   om支持ipv6地址安装管理,所有节点的ip类型需一致(ipv4或者ipv6)。
 
 **表 1**  参数说明
 
@@ -546,6 +547,7 @@ CM支持两节点部署模式
         
         
         
+        
          
     
     
@@ -558,6 +560,7 @@ CM支持两节点部署模式
             
             
             
+            
             
             
                
diff --git "a/content/zh/docs/InstallationGuide/\345\211\215\346\217\220\346\223\215\344\275\234.md" "b/content/zh/docs/InstallationGuide/\345\211\215\346\217\220\346\223\215\344\275\234.md"
index ea9d69288be88578de7c26c75cd8cc1215156446..e1f97fe1f69d62e6fed27191cca3f5dbaf06f1b6 100644
--- "a/content/zh/docs/InstallationGuide/\345\211\215\346\217\220\346\223\215\344\275\234.md"
+++ "b/content/zh/docs/InstallationGuide/\345\211\215\346\217\220\346\223\215\344\275\234.md"
@@ -2,35 +2,9 @@
 
 本章详细介绍openGauss企业版安装过程中使用普通用户执行预安装,需要用户提前做的一些操作,下面的操作均需要root权限来操作。如果已完成本章节的配置,请忽略。
 
--   将映射关系写入到/etc/hosts,可以使用gs_sshexkey工具来执行(可以参考gs_sshexkey用法)
+-   搭建cm集群,需要修改/etc/security/limits.d/*.conf中,最大文件描述符的数量。
 
-    ```
-    gs_sshexkey -f host
-    ```
-
--   设置os参数  
-
-    ```
-    内核信号量参数设置大小,需要设置
-    kernel.sem=250 6400000 1000 25600
-
-    将这个参数写入到/etc/sysctl.conf
-    echo 'kernel.sem=250 6400000 1000 25600' >> /etc/sysctl.conf 
-    sysctl -p 生效
-    ```
-
--   普通用户需要具有定时任务的权限
-
-    ```shell
-    echo "xxx" >> /etc/cron.allow
-
-    重启定时服务
-    systemctl restart crond
-    ```
-
--   修改/etc/security/limits.d/*.conf中,最大文件描述符的数量
-
-    查询/etc/security/limits.d/路径下后缀是nofile.conf的文件,将所有的文件里面的内容加上下面的内容
+    查询/etc/security/limits.d/路径下后缀是nofile.conf的文件,将所有的文件里面的内容加上下面的内容。
 
     ```shell
     # 建议值是1百万
diff --git "a/content/zh/docs/InstallationGuide/\345\215\225\350\212\202\347\202\271\345\256\211\350\243\205_\345\256\271\345\231\250.md" "b/content/zh/docs/InstallationGuide/\345\215\225\350\212\202\347\202\271\345\256\211\350\243\205_\345\256\271\345\231\250.md"
index ad9401f53580f8859ba6f23d59b38adf719e5838..54bc8814848c2f75725fc78f84e5ebf4003a9a01 100644
--- "a/content/zh/docs/InstallationGuide/\345\215\225\350\212\202\347\202\271\345\256\211\350\243\205_\345\256\271\345\231\250.md"
+++ "b/content/zh/docs/InstallationGuide/\345\215\225\350\212\202\347\202\271\345\256\211\350\243\205_\345\256\271\345\231\250.md"
@@ -1,4 +1,4 @@
-# 容器安装
+# 单节点安装_容器
 
 本章节主要介绍通过Docker安装openGauss,方便DevOps用户的安装、配置和环境设置。
 
@@ -18,13 +18,13 @@
 
 >![](public_sys-resources/icon-note.png) **说明:** 
 >
->-   安装前需要提供openGauss二进制安装包,解压后将以bz2结尾的包(openGauss-X.X.X-CentOS-64bit.tar.bz2,X.X.X诶openGauss当前版本号)放到 dockerfiles/文件夹。二进制包可以从  [https://www.opengauss.org/zh/download/](https://www.opengauss.org/zh/download/)下载,确保有正确的yum源。
+>-   安装前需要提供openGauss二进制安装包,解压后将以bz2结尾的包(openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2,X.X.X为openGauss当前版本号)放到 dockerfiles/文件夹。二进制包可以从  [https://www.opengauss.org/zh/download/](https://www.opengauss.org/zh/download/)下载,确保有正确的yum源。
 >
 >-   运行buildDockerImage.sh脚本时,如果不指定-i参数,此时默认提供SHA256检查,需要您手动将校验结果写入sha256\_file\_amd64文件。
 >    ```
 >    ## 修改sha256校验文件内容
 >    cd /soft/openGauss-server/docker/dockerfiles/X.X.X
->    sha256sum openGauss-X.X.X-CentOS-64bit.tar.bz2 > sha256_file_amd64 
+>    sha256sum openGauss-Server-X.X.X-CentOS7-x86_64.tar.bz2 > sha256_file_amd64 
 >    ```
 >    
 >-   安装前需要从华为开源镜像站获取openEuler\_aarch64.repo文件,并放到openGauss-server-master/docker/dockerfiles/X.X.X文件夹下面。openEuler\_aarch64.repo获取方法:
@@ -83,163 +83,19 @@ $ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 openg
 
 ```
 $ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p8888:5432 opengauss:X.X.X
-$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p8888
+$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p8888  # 宿主机需要安装gsql客户端。
 ```
 
 ### 数据持久化
 
 ```
-$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengaussX.X.X
+$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:X.X.X
 ```
 
 >**说明**
 >
 >1. 对于使用其他版本的数据库构建容器镜像,可以参考`openGauss-server/docker/dockerfiles/X.X.X`里面的配置文件,只需要修改为对应的版本号即可。
 >
->2. 对于构建openEuler-arm的容器镜像,如果`openeuler-20.03-lts:latest`镜像下载不下来,可以在openEuler官方网站`http://121.36.97.194/openEuler-20.03-LTS/docker_img/aarch64/`下载容器镜像压缩包`openEuler-docker.aarch64.tar.xz`,然后使用`docker load -i openEuler-docker.aarch64.tar.xz`导入到本地镜像列表。
+>2. 对于构建openEuler-arm的容器镜像,如果`openeuler-20.03-lts:latest`镜像下载不下来,可以在openEuler官方网站`https://repo.openeuler.org/openEuler-20.03-LTS/docker_img/aarch64/`下载容器镜像压缩包`openEuler-docker.aarch64.tar.xz`,然后使用`docker load -i openEuler-docker.aarch64.tar.xz`导入到本地镜像列表。
 >   
 >3. 在进行构建时候,如果遇到yum源下载超时,请检查下代理,也可以在buildDockerImage.sh脚本里面的`docker build`命令后加上`--network host`使用宿主机的网络。
-
-
-## CM容器化部署
-
-### 创建openGauss docker镜像
-
-下载openGauss-docker仓库代码,构建脚本在该仓库中管理。
-
->-   构建镜像需要openGauss社区发布的企业版本包,openGauss-*-64bit-all.tar.gz。放到`openGauss-docker/dockerfiles`目录下。
->-   运行buildDockerImage.sh脚本时,如果不指定-i参数,此时默认提供SHA256检查,需要您手动将校验结果写入sha256_file_amd64文件。
->    ```
->    ## 修改sha256校验文件内容
->    cd `openGauss-docker/dockerfiles`
->    sha256sum openGauss-X.X.X-CentOS-64bit-all.tar.gz > sha256_file_amd64 
->    ```
-
->-   对于x86平台,使用社区发布的Centos_x86_64的包;对于arm平台,使用发布的openEuler-arm版本企业包。
-
-构建命令:
-```
-sh buildDockerImage.sh -v X.X.X -i
-```
-
-### 使用社区发布的镜像
-
-最新的容器镜像:
-
-x86_64平台:
-```
-docker pull swr.cn-south-1.myhuaweicloud.com/opengauss/x86_64/opengauss:X.X.X
-docker tag swr.cn-south-1.myhuaweicloud.com/opengauss/x86_64/opengauss:X.X.X opengauss:X.X.X
-```
-
-arm平台:
-```
-docker pull swr.cn-south-1.myhuaweicloud.com/opengauss/arm/opengauss:X.X.X
-docker tag swr.cn-south-1.myhuaweicloud.com/opengauss/arm/opengauss:X.X.X opengauss:X.X.X
-```
-
-### 启动容器
-
-搭建CM集群至少需要两个容器实例才能使用。
-
-1. 创建容器网络
-
-##### 如果多个容器部署在一台机器上,创建一个普通的容器网络即可:
-`docker network create --subnet=172.11.0.0/24 og-network`
-
-##### 如果容器跨多个节点部署,即要求节点间的容器能够进行通信。业界有多种实现方式,这里提供一种作为参考,用户可以自行选择。
-
-选择一台部署progrium/consul容器:
-```
-docker pull progrium/consul
-docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap
-```
-
-每个节点的docker都进行修改:
-vim /usr/lib/systemd/system/docker.service
-在ExecStart一栏后面追加:
-```
--H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --cluster-store=consul://192.168.0.94:8500 --cluster-advertise=eth0:2376
-```
-**192.168.0.94** 是部署consul的机器ip。
-
-修改完成后需要重启docker:
-```
-systemctl daemon-reload
-systemctl restart docker
-```
-
-创建overlay网络
-```
-docker network create -d overlay --subnet 10.22.1.0/24  --gateway 10.22.1.1 og-network
-```
-
-2. 启动多个容器实例
-   
-```
-# ip需要和容器网络在同一网段,几个实例的ip和节点名称不能重复。如下示例1主2备:
-
-primary_nodeip="172.11.0.2"
-standby1_nodeip="172.11.0.3"
-standby2_nodeip="172.11.0.4"
-primary_nodename=primary
-standby1_nodename=standby1
-standby2_nodename=standby2
-
-OG_NETWORK=og-network
-GS_PASSWORD=test@123
-
-# 启动实例1 
-docker run -d -it -P --ulimit nofile=1000000:1000000 --sysctl kernel.sem="250 6400000 1000 25600" --security-opt seccomp=unconfined -v /data/opengauss_volume:/volume --name opengauss-01 --net ${OG_NETWORK} --ip "$primary_nodeip" -h=$primary_nodename -e primaryhost="$primary_nodeip" -e primaryname="$primary_nodename" -e standbyhosts="$standby1_nodeip, $standby2_nodeip" -e standbynames="$standby1_nodename, $standby2_nodename" -e GS_PASSWORD=$GS_PASSWORD opengauss:X.X.X 
-
-# 启动实例2
-docker run -d -it -P --ulimit nofile=1000000:1000000 --sysctl kernel.sem="250 6400000 1000 25600" --security-opt seccomp=unconfined -v /data/opengauss_volume:/volume --name opengauss-02 --net ${OG_NETWORK} --ip "$standby1_nodeip" -h=$standby1_nodename -e primaryhost="$primary_nodeip" -e primaryname="$primary_nodename" -e standbyhosts="$standby1_nodeip, $standby2_nodeip" -e standbynames="$standby1_nodename, $standby2_nodename" -e GS_PASSWORD=$GS_PASSWORD opengauss:X.X.X
-
-# 启动实例3
-docker run -d -it -P --ulimit nofile=1000000:1000000 --sysctl kernel.sem="250 6400000 1000 25600" --security-opt seccomp=unconfined -v /data/opengauss_volume:/volume --name opengauss-03 --net ${OG_NETWORK} --ip "$standby2_nodeip" -h=$standby2_nodename -e primaryhost="$primary_nodeip" -e primaryname="$primary_nodename" -e standbyhosts="$standby1_nodeip, $standby2_nodeip" -e standbynames="$standby1_nodename, $standby2_nodename" -e GS_PASSWORD=$GS_PASSWORD opengauss:X.X.X
-```
-
-3. 使用脚本快速启动1主2备的cm集群容器实例
-
-在`openGauss-docker`目录下,执行`sh create_cm_contariners.sh`
-
-```
-This script will create three containers with cm on a single node. \n
-Please input OG_SUBNET (容器所在网段) [172.11.0.0/24]: 
-OG_SUBNET set 172.11.0.0/24
-Please input OG_NETWORK (容器网络名称) [og-network]: 
-OG_NETWORK set og-network
-Please input GS_PASSWORD (定义数据库密码)[test@123]: 
-GS_PASSWORD set
-Please input openGauss VERSION [X.X.X]: 
-openGauss VERSION set X.X.X
-starting  create docker containers...
-```
-
-会让填入容器网段、容器网络名称、数据库密码、容器版本号。使用默认值得话可以直接回车跳过。
-脚本执行完成后,会拉起3个容器实例,组成1主2备的cm集群。
-
-### 进入容器中查看实例状态
-
-1. 进入容器
-```
-docker exec -ti  /bin/bash
-su - omm
-```
-
-2. 查看集群状态
-```
-cm_ctl query -Cvid
-```
-
-3. 连接接数据库
-```
-gsql -d postgres -r
-```
-
->**说明**
->
->- 1. 构建的容器需要包含操作系统层
->
->- 2. 容器内仅提供CM和数据库内核工具,OM工具无法使用
-
diff --git "a/content/zh/docs/InstallationGuide/\345\215\270\350\275\275openGauss.md" "b/content/zh/docs/InstallationGuide/\345\215\270\350\275\275openGauss.md"
index 8c8765b36c5351a16d1a3aec8c161d12f6a97888..c96e5c5b4ccc1a19cfde00dc2fc6b76747771002 100644
--- "a/content/zh/docs/InstallationGuide/\345\215\270\350\275\275openGauss.md"
+++ "b/content/zh/docs/InstallationGuide/\345\215\270\350\275\275openGauss.md"
@@ -1,155 +1,155 @@
-# 卸载openGauss
-
-卸载openGauss的过程包含卸载openGauss和对openGauss服务器的环境做清理。
-
-## 执行卸载
-
-openGauss提供了卸载脚本帮助用户完整的卸载openGauss。
-
-**操作步骤**
-
-1.  以操作系统用户omm登录数据库主节点。
-2.  使用gs\_uninstall卸载openGauss。
-
-    ```
-    gs_uninstall --delete-data
-    ```
-
-    或者在openGauss中每个节点执行本地卸载。
-
-    ```
-    gs_uninstall --delete-data -L
-    ```
-
-
-**示例**
-
-使用gs\_uninstall脚本进行卸载openGauss。
-
-```
-gs_uninstall --delete-data
-Checking unInstallationGuide.
-Successfully checked unInstallationGuide.
-Stopping the cluster.
-Successfully stopped the cluster.
-Successfully deleted instances.
-Uninstalling application.
-Successfully uninstalled application.
-UnInstallationGuide succeeded.
-```
-
-单机卸载场景使用gs\_uninstall脚本进行卸载。
-
-```
-gs_uninstall --delete-data
-Checking unInstallationGuide.
-Successfully checked unInstallationGuide.
-Stopping the cluster.
-Successfully stopped the cluster.
-Successfully deleted instances.
-Uninstalling application.
-Successfully uninstalled application.
-UnInstallationGuide succeeded.
-```
-
-**错误排查**
-
-如果卸载失败请根据“$GAUSSLOG/om/gs\_uninstall-YYYY-MM-DD\_HHMMSS.log”中的日志信息排查错误。
-
-## 一键式环境清理
-
-在openGauss卸载完成后,如果不需要在环境上重新部署openGauss,可以运行脚本gs\_postuninstall对openGauss服务器上环境信息做清理。openGauss环境清理是对环境准备脚本gs\_preinstall所做设置的清理。
-
-**前提条件**
-
--   openGauss卸载执行成功。
--   root用户互信可用。
--   只能使用root用户执行gs\_postuninstall命令。
-
-**操作步骤**
-
-1. 以root用户登录openGauss服务器。
-
-2. 查看root用户互信是否建立,如果root用户没有建立互信,需要手工建立root用户互信,操作请参考[手工建立互信](初始化安装环境.md)。
-
-   查看互信是否建成功,可以互相ssh主机名。输入exit退出。
-
-   ```
-   plat1:~ # ssh plat2 
-   Last login: Tue Jan  5 10:28:18 2016 from plat1 
-   Huawei's internal systems must only be used for conducting Huawei's business or for purposes authorized by Huawei management.Use is subject to audit at any time by Huawei management. 
-   plat2:~ # exit 
-   logout 
-   Connection to plat2 closed. 
-   plat1:~ # 
-   ```
-
-3. 进入script路径下。
-
-   ```
-   cd /opt/software/openGauss/script
-   ```
-
-4. 使用gs\_postuninstall进行清理。若为环境变量分离的模式安装的数据库需要source环境变量分离文件ENVFILE。
-
-   ```
-   ./gs_postuninstall -U omm -X /opt/software/openGauss/cluster_config.xml --delete-user --delete-group
-   ```
-
-   或者在openGauss中每个节点执行本地后置清理。
-
-   ```
-   ./gs_postuninstall -U omm -X /opt/software/openGauss/cluster_config.xml --delete-user --delete-group -L
-   ```
-
-   omm为运行openGauss的操作系统用户名,/opt/software/openGauss/cluster\_config.xml为openGauss配置文件路径。
-
-   若为环境变量分离的模式安装的数据库需删除之前source的环境变量分离的env参数。
-
-   ```
-   unset MPPDB\_ENV\_SEPARATE\_PATH
-   ```
-
-5. 删除openGauss数据库各节点root用户的互信,操作参考[手工建立互信](初始化安装环境.md)的删除root用户互信部分内容。
-
-6. 注销root用户。
-
-**示例**
-
-清理主机的环境。
-
-```
-gs_postuninstall -U omm -X /opt/software/openGauss/cluster_config.xml --delete-user
-Parsing the configuration file.
-Successfully parsed the configuration file.
-Check log file path.
-Successfully checked log file path.
-Checking unpreInstallationGuide.
-Successfully checked unpreInstallationGuide.
-Deleting Cgroup.
-Successfully deleted Cgroup.
-Deleting the instance's directory.
-Successfully deleted the instance's directory.
-Deleting the InstallationGuide directory.
-Successfully deleted the InstallationGuide directory.
-Deleting the temporary directory.
-Successfully deleted the temporary directory.
-Deleting remote OS user.
-Successfully deleted remote OS user.
-Deleting software packages and environmental variables of other nodes.
-Successfully deleted software packages and environmental variables of other nodes.
-Deleting logs of other nodes.
-Successfully deleted logs of other nodes.
-Deleting software packages and environmental variables of the local node.
-Successfully deleted software packages and environmental variables of the local nodes.
-Deleting local OS user.
-Successfully deleted local OS user.
-Deleting local node's logs.
-Successfully deleted local node's logs.
-Successfully cleaned environment.
-```
-
-**错误排查**
-
-如果一键式环境清理失败请根据“$GAUSSLOG/om/gs\_postuninstall-YYYY-MM-DD\_HHMMSS.log”中的日志信息排查错误。
-
+# 卸载openGauss
+
+卸载openGauss的过程包含卸载openGauss和对openGauss服务器的环境做清理。
+
+## 执行卸载
+
+openGauss提供了卸载脚本帮助用户完整的卸载openGauss。
+
+**操作步骤**
+
+1.  以操作系统用户omm登录数据库主节点。
+2.  使用gs\_uninstall卸载openGauss。
+
+    ```
+    gs_uninstall --delete-data
+    ```
+
+    或者在openGauss中每个节点执行本地卸载。
+
+    ```
+    gs_uninstall --delete-data -L
+    ```
+
+
+**示例**
+
+使用gs\_uninstall脚本进行卸载openGauss。
+
+```
+gs_uninstall --delete-data
+Checking unInstallationGuide.
+Successfully checked unInstallationGuide.
+Stopping the cluster.
+Successfully stopped the cluster.
+Successfully deleted instances.
+Uninstalling application.
+Successfully uninstalled application.
+UnInstallationGuide succeeded.
+```
+
+单机卸载场景使用gs\_uninstall脚本进行卸载。
+
+```
+gs_uninstall --delete-data
+Checking unInstallationGuide.
+Successfully checked unInstallationGuide.
+Stopping the cluster.
+Successfully stopped the cluster.
+Successfully deleted instances.
+Uninstalling application.
+Successfully uninstalled application.
+UnInstallationGuide succeeded.
+```
+
+**错误排查**
+
+如果卸载失败请根据“$GAUSSLOG/om/gs\_uninstall-YYYY-MM-DD\_HHMMSS.log”中的日志信息排查错误。
+
+## 一键式环境清理
+
+在openGauss卸载完成后,如果不需要在环境上重新部署openGauss,可以运行脚本gs\_postuninstall对openGauss服务器上环境信息做清理。openGauss环境清理是对环境准备脚本gs\_preinstall所做设置的清理。
+
+**前提条件**
+
+-   openGauss卸载执行成功。
+-   root用户互信可用。
+-   只能使用root用户执行gs\_postuninstall命令。
+
+**操作步骤**
+
+1. 以root用户登录openGauss服务器。
+
+2. 查看root用户互信是否建立,如果root用户没有建立互信,需要手工建立root用户互信,操作请参考[手工建立互信](初始化安装环境.md)。
+
+   查看互信是否建成功,可以互相ssh主机名。输入exit退出。
+
+   ```
+   plat1:~ # ssh plat2 
+   Last login: Tue Jan  5 10:28:18 2016 from plat1 
+   Huawei's internal systems must only be used for conducting Huawei's business or for purposes authorized by Huawei management.Use is subject to audit at any time by Huawei management. 
+   plat2:~ # exit 
+   logout 
+   Connection to plat2 closed. 
+   plat1:~ # 
+   ```
+
+3. 进入script路径下。
+
+   ```
+   cd /opt/software/openGauss/script
+   ```
+
+4. 使用gs\_postuninstall进行清理。若为环境变量分离的模式安装的数据库需要source环境变量分离文件ENVFILE;若不是环境分离的模式安装的数据库需要source普通用户家目录下的.bashrc文件。
+
+   ```
+   ./gs_postuninstall -U omm -X /opt/software/openGauss/cluster_config.xml --delete-user --delete-group
+   ```
+
+   或者在openGauss中每个节点执行本地后置清理。
+
+   ```
+   ./gs_postuninstall -U omm -X /opt/software/openGauss/cluster_config.xml --delete-user --delete-group -L
+   ```
+
+   omm为运行openGauss的操作系统用户名,/opt/software/openGauss/cluster\_config.xml为openGauss配置文件路径。
+
+   若为环境变量分离的模式安装的数据库需删除之前source的环境变量分离的env参数。
+
+   ```
+   unset MPPDB\_ENV\_SEPARATE\_PATH
+   ```
+
+5. 删除openGauss数据库各节点root用户的互信,操作参考[手工建立互信](初始化安装环境.md)的删除root用户互信部分内容。
+
+6. 注销root用户。
+
+**示例**
+
+清理主机的环境。
+
+```
+gs_postuninstall -U omm -X /opt/software/openGauss/cluster_config.xml --delete-user
+Parsing the configuration file.
+Successfully parsed the configuration file.
+Check log file path.
+Successfully checked log file path.
+Checking unpreInstallationGuide.
+Successfully checked unpreInstallationGuide.
+Deleting Cgroup.
+Successfully deleted Cgroup.
+Deleting the instance's directory.
+Successfully deleted the instance's directory.
+Deleting the InstallationGuide directory.
+Successfully deleted the InstallationGuide directory.
+Deleting the temporary directory.
+Successfully deleted the temporary directory.
+Deleting remote OS user.
+Successfully deleted remote OS user.
+Deleting software packages and environmental variables of other nodes.
+Successfully deleted software packages and environmental variables of other nodes.
+Deleting logs of other nodes.
+Successfully deleted logs of other nodes.
+Deleting software packages and environmental variables of the local node.
+Successfully deleted software packages and environmental variables of the local nodes.
+Deleting local OS user.
+Successfully deleted local OS user.
+Deleting local node's logs.
+Successfully deleted local node's logs.
+Successfully cleaned environment.
+```
+
+**错误排查**
+
+如果一键式环境清理失败请根据“$GAUSSLOG/om/gs\_postuninstall-YYYY-MM-DD\_HHMMSS.log”中的日志信息排查错误。
+
diff --git "a/content/zh/docs/InstallationGuide/\345\256\271\345\231\250\345\256\211\350\243\205.md" "b/content/zh/docs/InstallationGuide/\345\256\271\345\231\250\345\256\211\350\243\205.md"
index cf1672145327610318a25619a74a6ec10a29dbe2..cd2d7e5fdc81fdc188c5afbc8a73dbfa1c8c77fe 100644
--- "a/content/zh/docs/InstallationGuide/\345\256\271\345\231\250\345\256\211\350\243\205.md"
+++ "b/content/zh/docs/InstallationGuide/\345\256\271\345\231\250\345\256\211\350\243\205.md"
@@ -1,4 +1,5 @@
 # 容器安装
 openGauss支持在容器中部署。
 
--   **[单节点安装](单节点安装_容器.md)**
\ No newline at end of file
+-   **[单节点安装](单节点安装_容器.md)**
+-   **[CM安装](CM安装_容器.md)**
\ No newline at end of file
diff --git "a/content/zh/docs/InstallationGuide/\346\211\247\350\241\214\345\256\211\350\243\205.md" "b/content/zh/docs/InstallationGuide/\346\211\247\350\241\214\345\256\211\350\243\205.md"
index 15b1139f638efb4d28fb8e7bcbf96583b29faad7..dd27c79d33cd102d0b958aea918625f249780a1d 100644
--- "a/content/zh/docs/InstallationGuide/\346\211\247\350\241\214\345\256\211\350\243\205.md"
+++ "b/content/zh/docs/InstallationGuide/\346\211\247\350\241\214\345\256\211\350\243\205.md"
@@ -70,8 +70,10 @@
         ```
         gs_install -X /opt/software/openGauss/cluster_config.xml --gsinit-parameter="--locale=en_US.utf8"
         ```
-    
-4.  安装执行成功之后,需要手动删除主机root用户的互信,即删除openGauss数据库各节点上的互信文件。
+
+4.  安装执行成功后,如果预安装用root执行,那么默认会将数据库的最大连接数设置为5k;如果预安装用普通用户执行,那么当系统信号量小于640万,数据库最大连接数设置为1k,其他情况会将数据库的最大连接数设置为5k。
+
+5.  安装执行成功之后,需要手动删除主机root用户的互信,即删除openGauss数据库各节点上的互信文件。
 
         rm –rf ~/.ssh
 
diff --git a/content/zh/docs/SQLReference/ALTER-TABLE-PARTITION.md b/content/zh/docs/SQLReference/ALTER-TABLE-PARTITION.md
index 2c936d99c8536d24220aa64a334cb4f1b1af1218..538227ad1e07d7225ebe11f6548a37d2e1500680 100644
--- a/content/zh/docs/SQLReference/ALTER-TABLE-PARTITION.md
+++ b/content/zh/docs/SQLReference/ALTER-TABLE-PARTITION.md
@@ -94,7 +94,7 @@
 
     >![](public_sys-resources/icon-caution.png) **注意:** 
     >```
-    >USTORE存储引擎表不支持在事务块中执行ALTER TABLE MERGE PARTITIONS的操作。
+    >Ustore存储引擎表不支持在事务块中执行ALTER TABLE MERGE PARTITIONS的操作。
     >```
 
     -   modify\_clause子语法用于设置分区索引是否可用。
diff --git a/content/zh/docs/SQLReference/ALTER-TABLE.md b/content/zh/docs/SQLReference/ALTER-TABLE.md
index 482d336b5426c6f743a3832706c2a85d2c856092..76a7df329b3321bc94bc8da78b535ca7630434c4 100644
--- a/content/zh/docs/SQLReference/ALTER-TABLE.md
+++ b/content/zh/docs/SQLReference/ALTER-TABLE.md
@@ -192,7 +192,7 @@
 >
 >   在逻辑复制场景,解析该表的UPDATE和DELETE操作语句时,解析出的旧元组由以此方法记录的信息组成。对于有主键表该选项可设置为DEFAULT或FULL。对于无主键表该选项需设置为FULL,否则解码时旧元组将解析为空。一般场景不建议设置为NOTHING,旧元组会始终解析为空。
 >
->   即使指定DEFAULT或USING INDEX,当前ustore表列的旧值中也可能包含该行所有列的旧值,只有旧值涉及toast该配置选项才会生效。另外针对ustore表,选项NOTHING无效,实际效果等同于FULL。
+>   即使指定DEFAULT或USING INDEX,当前Ustore表列的旧值中也可能包含该行所有列的旧值,只有旧值涉及toast该配置选项才会生效。另外针对Ustore表,选项NOTHING无效,实际效果等同于FULL。
 >
 >- **COMMENT {=| } 'text'**
 >
@@ -504,7 +504,7 @@ ADD [ COLUMN ] column_name data_type [ CHARACTER SET | CHARSET [ = ] charset ] [
     >
     >在ADD CONSTRAINT操作中:
     >-   USING method仅在B模式数据库下(即sql\_compatibility = 'B')支持,其他模式数据库下不支持。
-    >-   在B模式下,未指定USING method时,对于ASTORE的存储方式,默认索引方法为btree;对于USTORE的存储方式,默认索引方法为ubtree。
+    >-   在B模式下,未指定USING method时,对于Astore的存储方式,默认索引方法为btree;对于Ustore的存储方式,默认索引方法为ubtree。
 
 -   **ASC | DESC**
 
@@ -706,7 +706,7 @@ ADD [ COLUMN ] column_name data_type [ CHARACTER SET | CHARSET [ = ] charset ] [
     为表或索引指定一个可选的存储参数,详见[CREATE TABLE](CREATE-TABLE.md)语法相关字段的介绍。
     > ![](public_sys-resources/icon-note.png) **说明:** 
     >
-    > -   行存表支持修改行存压缩参数,包括COMPRESSTYPE、COMPRESS\_LEVEL、COMPRESS\_CHUNK_SIZE、COMPRESS_PREALLOC_CHUNKS、COMPRESS_BYTE_CONVERT、COMPRESS_DIFF_CONVERT,修改会对表做重建,修改后对原有数据、修改对已有数据、变更数据、新增数据同时生效。(仅支持ASTORE和USTORE下的普通表和分区表)
+    > -   行存表支持修改行存压缩参数,包括COMPRESSTYPE、COMPRESS\_LEVEL、COMPRESS\_CHUNK_SIZE、COMPRESS_PREALLOC_CHUNKS、COMPRESS_BYTE_CONVERT、COMPRESS_DIFF_CONVERT,修改会对表做重建,修改后对原有数据、修改对已有数据、变更数据、新增数据同时生效。(仅支持Astore和Ustore下的普通表和分区表)
     > -   修改行存压缩参数时,修改后的行存压缩参数需要满足建表时各行存压缩参数的数据范围和参数间的约束。
     > -   分区表不支持修改分区级别的行存压缩参数,只能修改整个表的行存压缩属性,修改对所有分区生效。
     > -   修改行存压缩参数时会重写整个表,期间对表加八级锁。
diff --git a/content/zh/docs/SQLReference/CREATE-INDEX.md b/content/zh/docs/SQLReference/CREATE-INDEX.md
index d0ce2304619bcfe4ab09fc57d43ed38126e1f5d0..68b8c33e8424a5910f559b967ab396c208b251c2 100644
--- a/content/zh/docs/SQLReference/CREATE-INDEX.md
+++ b/content/zh/docs/SQLReference/CREATE-INDEX.md
@@ -34,6 +34,7 @@
 -   GLOBAL索引,最大支持31列。
 -   如果alter语句不带有UPDATE GLOBAL INDEX,那么原有的GLOBAL索引将失效,查询时将使用其他索引进行查询;如果alter语句带有UPDATE GLOBAL INDEX,原有的GLOBAL索引仍然有效,并且索引功能正确。
 -   对于分区表的local unique索引,索引键必须包含所有的分区键。
+-   当前不支持在JSONB类型的数据上创建UBtree索引。
 
 ## 语法格式
 
@@ -128,9 +129,9 @@
     -   gin:GIN索引是倒排索引,可以处理包含多个键的值(比如数组)。
     -   gist:Gist索引适用于几何和地理等多维数据类型和集合数据类型。目前支持的数据类型有box、point、poly、circle、tsvector、tsquery、range。
     -   Psort:Psort索引。针对列存表进行局部排序索引。
-    -   ubtree:仅供ustore表使用的多版本B-tree索引,索引页面上包含事务信息,能并自主回收页面。
+    -   ubtree:仅供Ustore表使用的多版本B-tree索引,索引页面上包含事务信息,能并自主回收页面。
 
-    行存表(ASTORE存储引擎)支持的索引类型:btree(行存表缺省值)、hash、gin、gist。行存表(USTORE存储引擎)支持的索引类型:ubtree。列存表支持的索引类型:Psort(列存表缺省值)、btree、gin。全局临时表不支持GIN索引和Gist索引。
+    行存表(Astore存储引擎)支持的索引类型:btree(行存表缺省值)、hash、gin、gist。行存表(Ustore存储引擎)支持的索引类型:ubtree。列存表支持的索引类型:Psort(列存表缺省值)、btree、gin。全局临时表不支持GIN索引和Gist索引。
 
     >![](public_sys-resources/icon-note.png) **说明:** 
     >列存表对GIN索引支持仅限于对于tsvector类型的支持,即创建列存GIN索引入参需要为to\_tsvector函数(的返回值)。此方法为GIN索引比较普遍的使用方式。
diff --git a/content/zh/docs/SQLReference/CREATE-TABLE-PARTITION.md b/content/zh/docs/SQLReference/CREATE-TABLE-PARTITION.md
index 2986948bc8ce91c33093b72d5cfc817702a1000a..fae11096b48f47bbbb1a2413c36d7314462ec405 100644
--- a/content/zh/docs/SQLReference/CREATE-TABLE-PARTITION.md
+++ b/content/zh/docs/SQLReference/CREATE-TABLE-PARTITION.md
@@ -197,7 +197,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
     >![](public_sys-resources/icon-notice.png) **须知:** 
     >
     >-   USING method仅在B模式数据库下(即sql\_compatibility = 'B')支持,其他模式数据库下不支持。
-    >-   在B模式下,未指定USING method时,对于ASTORE的存储方式,默认索引方法为btree;对于USTORE的存储方式,默认索引方法为ubtree。
+    >-   在B模式下,未指定USING method时,对于Astore的存储方式,默认索引方法为btree;对于Ustore的存储方式,默认索引方法为ubtree。
 
 -   **ASC | DESC**
 
@@ -265,7 +265,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
 
     -   COMPRESSTYPE
 
-        行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持ASTORE和USTORE下的普通表和分区表)
+        行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持Astore和Ustore下的普通表和分区表)
 
         取值范围:0\~2,默认值为0。
 
@@ -340,7 +340,7 @@ CREATE TABLE [ IF NOT EXISTS ] partition_table_name
     
     - segment
     
-      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持ustore存储引擎。
+      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持Ustore存储引擎。
     
       取值范围:on/off
     
diff --git a/content/zh/docs/SQLReference/CREATE-TABLE-SUBPARTITION.md b/content/zh/docs/SQLReference/CREATE-TABLE-SUBPARTITION.md
index 25376b2129a140e15845c592c7d4d2f8ca5396ac..4baedf3b771706c2197b17b0536fda7680c7b479 100644
--- a/content/zh/docs/SQLReference/CREATE-TABLE-SUBPARTITION.md
+++ b/content/zh/docs/SQLReference/CREATE-TABLE-SUBPARTITION.md
@@ -150,7 +150,7 @@ PARTITION BY {RANGE [ COLUMNS ] | LIST [ COLUMNS ] | HASH | KEY} (partition_key)
 
     >![](public_sys-resources/icon-notice.png) **须知:** 
     >-   USING method仅在B模式数据库下(即sql\_compatibility = 'B')支持,其他模式数据库下不支持。
-    >-   在B模式下,未指定USING method时,对于ASTORE的存储方式,默认索引方法为btree;对于USTORE的存储方式,默认索引方法为ubtree。
+    >-   在B模式下,未指定USING method时,对于Astore的存储方式,默认索引方法为btree;对于Ustore的存储方式,默认索引方法为ubtree。
 
 -   **ASC | DESC**
 
@@ -197,7 +197,7 @@ PARTITION BY {RANGE [ COLUMNS ] | LIST [ COLUMNS ] | HASH | KEY} (partition_key)
             >orientation不支持修改。
     -   **COMPRESSTYPE**
 
-        行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持ASTORE和USTORE下的普通表和分区表)
+        行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持Astore和Ustore下的普通表和分区表)
 
         取值范围:0\~2,默认值为0。
 
diff --git a/content/zh/docs/SQLReference/CREATE-TABLE.md b/content/zh/docs/SQLReference/CREATE-TABLE.md
index cacafaf3028e88f4e7500b973db1bfbc90bd4b40..39ce1d5c9bab71922e3a1f37cf8d3ccc7524d75a 100644
--- a/content/zh/docs/SQLReference/CREATE-TABLE.md
+++ b/content/zh/docs/SQLReference/CREATE-TABLE.md
@@ -180,7 +180,7 @@ CREATE [ [ GLOBAL | LOCAL ] [ TEMPORARY | TEMP ] | UNLOGGED ] TABLE [ IF NOT EXI
     >![](public_sys-resources/icon-notice.png) **须知:** 
     >
     >-   USING method仅在B模式数据库下(即sql\_compatibility = 'B')支持,其他模式数据库下不支持。
-    >-   在B模式下,未指定USING method时,对于ASTORE的存储方式,默认索引方法为btree;对于USTORE的存储方式,默认索引方法为ubtree。
+    >-   在B模式下,未指定USING method时,对于Astore的存储方式,默认索引方法为btree;对于Ustore的存储方式,默认索引方法为ubtree。
 
 -   **ASC | DESC**
 
@@ -402,7 +402,7 @@ CREATE [ [ GLOBAL | LOCAL ] [ TEMPORARY | TEMP ] | UNLOGGED ] TABLE [ IF NOT EXI
 
     -   COMPRESSTYPE
 
-        行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持ASTORE和USTORE下的普通表和分区表)
+        行存表参数,设置行存表压缩算法。1代表pglz算法(不推荐使用),2代表zstd算法,默认不压缩。该参数允许修改, 修改对已有数据、变更数据、新增数据同时生效。(仅支持Astore和Ustore下的普通表和分区表)
 
         取值范围:0\~2,默认值为0。
 
@@ -477,7 +477,7 @@ CREATE [ [ GLOBAL | LOCAL ] [ TEMPORARY | TEMP ] | UNLOGGED ] TABLE [ IF NOT EXI
 
   - segment
 
-      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持ustore存储引擎。
+      使用段页式的方式存储。本参数仅支持行存表。不支持列存表、临时表、unlog表。不支持Ustore存储引擎。
 
       取值范围:on/off
   
diff --git a/content/zh/docs/SQLReference/DELETE.md b/content/zh/docs/SQLReference/DELETE.md
index 0fcb0a6a2f620e83c57f2e771449f0dbca2d0a72..57ff3a5a4e5a8327b0ae2f0846861002b198b576 100644
--- a/content/zh/docs/SQLReference/DELETE.md
+++ b/content/zh/docs/SQLReference/DELETE.md
@@ -10,7 +10,7 @@ DELETE从指定的表里删除满足WHERE子句的行。如果WHERE子句不存
 -   对于列存表,暂时不支持RETURNING子句。
 -   对于多表删除语法,仅在参数sql\_compatibility=B时生效,暂时不支持对列存表、视图和含有RULE的表进行多表删除。
 -   如果要删除表中的所有记录,建议使用truncate语法。
--   ustore表在delete语句中不能与其他存储类型一起使用。
+-   Ustore表在delete语句中不能与其他存储类型一起使用。
 
 ## 语法格式
 
diff --git a/content/zh/docs/SQLReference/REINDEX.md b/content/zh/docs/SQLReference/REINDEX.md
index 4c56aca7058034e7c2ba13c9891901ac18d93d4c..30e2bfe7e44c4920bf9e27b03180f48687511873 100644
--- a/content/zh/docs/SQLReference/REINDEX.md
+++ b/content/zh/docs/SQLReference/REINDEX.md
@@ -68,9 +68,9 @@ REINDEX CONCURRENTLY这种形式的重建索引不能在事务块中执行。
 
 
     -   普通REINDEX命令可以在事务内执行,但是REINDEX CONCURRENTLY不可以在事务内执行。
-    -   列存表、ustore表、临时表、全局分区索引不支持CONCURRENTLY方式重建索引。
+    -   列存表、Ustore表、临时表、全局分区索引不支持CONCURRENTLY方式重建索引。
     -   REINDEX SYSTEM CONCURRENTLY不会执行任何操作,因为系统表不支持在线重建索引。
-    -   REINDEX DATABASE CONCURRENTLY执行时会跳过系统表、列存表、ustore表、临时表。
+    -   REINDEX DATABASE CONCURRENTLY执行时会跳过系统表、列存表、Ustore表、临时表。
     -   在线重建普通表会跳过“非法”(invalid)的普通索引和“不可用”(unusable)的普通索引。
     -   在线重建普通索引会将“非法”索引变为“合法”(valid),将“不可用”索引变为“可用”(usable),除了toast表的“非法”索引。
     -   在线重建分区表会跳过“不可用”分区表索引和含有“不可用”分区索引的分区表索引。
diff --git "a/content/zh/docs/SQLReference/SET\347\261\273\345\236\213.md" "b/content/zh/docs/SQLReference/SET\347\261\273\345\236\213.md"
index 93d0b9a271ddc5f7f4de7e7be22f8aebfa6cf609..98a8df12095df07d21d5022b49b90818dc84bfdb 100644
--- "a/content/zh/docs/SQLReference/SET\347\261\273\345\236\213.md"
+++ "b/content/zh/docs/SQLReference/SET\347\261\273\345\236\213.md"
@@ -12,7 +12,7 @@ SET类型是一种包含字符串成员的集合类型,在表字段创建时
 6.  不支持SET类型作为列存表字段的数据类型。
 7.  不支持SET类型作为分区表的分区键。
 8.  DROP TYPE 删除SET类型时,需要使用CASCADE方式删除,且关联的表字段也会被同时删除。
-9.  对于USTORE存储方式的表,如果表中包含SET类型的字段,且已经开启回收站功能,表被删除时,不会进入到回收站中,会直接删除。
+9.  对于Ustore存储方式的表,如果表中包含SET类型的字段,且已经开启回收站功能,表被删除时,不会进入到回收站中,会直接删除。
 10. ALTER TABLE 不支持将SET类型字段的数据类型修改为其他SET类型。
 11. 表或者SET类型关联的表字段被删除时,或者表字段的SET类型修改为其他类型时,SET数据类型也会被同步删除。
 12. 不支持以CREATE TABLE \{ AS | LIKE \} 的方式创建包含SET类型的表。
diff --git "a/content/zh/docs/SQLReference/Undo\347\263\273\347\273\237\345\207\275\346\225\260.md" "b/content/zh/docs/SQLReference/Undo\347\263\273\347\273\237\345\207\275\346\225\260.md"
index ae2ac140aa2fdff863d36af54e1b490a37eb56ea..a43fd36f95156af90b24b632ce93e52458999e3c 100644
--- "a/content/zh/docs/SQLReference/Undo\347\263\273\347\273\237\345\207\275\346\225\260.md"
+++ "b/content/zh/docs/SQLReference/Undo\347\263\273\347\273\237\345\207\275\346\225\260.md"
@@ -405,14 +405,14 @@
 
 + gs\_undo\_dump\_parsepage\_mv\(relpath text, blkno bigint, reltype text, rmem boolean\)
 
-  描述:解析ustore数据表磁盘页面的页头信息,每个元组的头部信息,标识位信息以及所有可以查询到undo历史版本信息。
+  描述:解析Ustore数据表磁盘页面的页头信息,每个元组的头部信息,标识位信息以及所有可以查询到undo历史版本信息。
 
   返回值类型:text
 
   备注:必须是系统管理员或者运维管理人员才能执行此函数。
 
   >![](public_sys-resources/icon-note.png) **说明:** 
-  >该接口当前仅支持USTORE数据表。
+  >该接口当前仅支持Ustore数据表。
 
   示例:
   ```sql
@@ -439,7 +439,7 @@
     
     

text

-

ustore表数据文件相对路径,相对路径格式为:tablespace name/database oid/relfilenode,例如base/16603/16384, 表对应数据文件的相对路径查找可以通过pg_relation_filepath('tablename')查询。

+

Ustore表数据文件相对路径,相对路径格式为:tablespace name/database oid/relfilenode,例如base/16603/16384, 表对应数据文件的相对路径查找可以通过pg_relation_filepath('tablename')查询。

输入参数

@@ -457,7 +457,7 @@

text

-

表类型,目前仅支持ustore数据表,取值为uheap。

+

表类型,目前仅支持Ustore数据表,取值为uheap。

输入参数

diff --git a/content/zh/docs/SQLReference/VACUUM.md b/content/zh/docs/SQLReference/VACUUM.md index 9b73bca6af8733b4e131b66af1ffea5b8cd6fc1e..49b4c3fa797854702e7fa602bb31edd643ba17a5 100644 --- a/content/zh/docs/SQLReference/VACUUM.md +++ b/content/zh/docs/SQLReference/VACUUM.md @@ -77,7 +77,7 @@ VACUUM回收表或B-Tree索引中已经删除的行所占据的存储空间。 > **![](public_sys-resources/icon-note.png)说明** > - > ustore分区表在autovacuum=analyze的时候也会触发vacuum。 + > Ustore分区表在autovacuum=analyze的时候也会触发vacuum。 - **table\_name** diff --git "a/content/zh/docs/SQLReference/XML\347\261\273\345\236\213.md" "b/content/zh/docs/SQLReference/XML\347\261\273\345\236\213.md" index 4e6e6983985df0fda18a0cab2b66e73763e2d161..223d89cc2539373b166247f9c3de1d7d564b7a3a 100644 --- "a/content/zh/docs/SQLReference/XML\347\261\273\345\236\213.md" +++ "b/content/zh/docs/SQLReference/XML\347\261\273\345\236\213.md" @@ -51,7 +51,7 @@ openGauss= SELECT xmlconcat(xmlcomment('hello'), > - 表达式索引。 > - XML类型的值是根据"xml option"会话配置参数决定的。 > - 支持gs_dump导出和gs_restore导入操作。 -> - 并行查询,支持astore和ustore存储引擎。 +> - 并行查询,支持Astore和Ustore存储引擎。 > - 作为自定义函数的入参,出参,自定义变量,返回值。 > - 作为存储过程的入参,出参,自定义变量,返回值。支持自治事务的存储过程。 > - 字符处理函数quote_literal(value anyelement)、quote_nullable(value anyelement)。 diff --git "a/content/zh/docs/SQLReference/\344\275\277\347\224\250\346\270\270\346\240\207\345\210\233\345\273\272type.md" "b/content/zh/docs/SQLReference/\344\275\277\347\224\250\346\270\270\346\240\207\345\210\233\345\273\272type.md" new file mode 100644 index 0000000000000000000000000000000000000000..2fe584f76d0c6763323e090e87c95ec11a7c2999 --- /dev/null +++ "b/content/zh/docs/SQLReference/\344\275\277\347\224\250\346\270\270\346\240\207\345\210\233\345\273\272type.md" @@ -0,0 +1,107 @@ +# 使用游标创建type + +## 功能描述 + +该功能用于在包package或者匿名块、存储过程、函数中使用record类型创建一个游标的type类型。 + +## 注意事项 + +- 创建的type为弱游标类型。 +- 该type类型如果作为out参数返回是游标类型。 + + +## 语法格式 + +```sql +TYPE type_name IS REF CURSOR RETURN record_name ; +``` + +## 参数说明 + +- **type_name** + + 定义的类型的名称。 +- **record_name** + + 使用数据类型说明符 RECORD 定义的用户定义类型的名称。 + + + +## 兼容性 + +暂不支持如下语法: + +```sql +TYPE type_name IS REF CURSOR + [ RETURN + { {db_table_or_view | cursor | cursor_variable}%ROWTYPE + | record%TYPE + | ref_cursor_type + } + ] ; +``` + +## 示例 + +**示例1:** 使用record类型创建一个游标的type类型。 + +1、创建测试表t。 + +```sql +create table t(id int, name varchar2(30)); +``` + +2、声明游标类型。 + +```sql +declare +type RECORD_ACCOUNT_LIST is record(id int,name varchar2(30)); +type CUR_ACCOUNT_LIST is ref cursor return RECORD_ACCOUNT_LIST; +cur_accountlist CUR_ACCOUNT_LIST; +begin +open cur_accountlist for select * from t; +end; +/ +``` + +返回结果如下,则表示创建成功: + +```sql +ANONYMOUS BLOCK EXECUTE +``` + + + +**示例2:** 弱游标类型。 + +1、创建测试表t1并插入数据。 + +```sql +create table t1(id int, name varchar2(30)); +insert into t1 values(1,'a1'); +``` + +2、定义一个弱类型游标。 + +```sql +declare +type RECORD_ACCOUNT_LIST1 IS RECORD (id int, name1 varchar2(30)); +type CUR_ACCOUNT_LIST1 is ref cursor return RECORD_ACCOUNT_LIST1; +cur_accountlist1 CUR_ACCOUNT_LIST1; +rc_list RECORD_ACCOUNT_LIST1; +begin +open cur_accountlist1 for select * from t1; +loop +fetch cur_accountlist1 into rc_list; +exit when cur_accountlist1%notfound; +dbms_output.put_line(rc_list.id||' '||rc_list.name1); +end loop; +end; +/ +``` + +返回结果如下,则表示创建成功: + +```sql +ANONYMOUS BLOCK EXECUTE +``` \ No newline at end of file diff --git "a/content/zh/docs/SQLReference/\345\205\266\345\256\203\345\207\275\346\225\260.md" "b/content/zh/docs/SQLReference/\345\205\266\345\256\203\345\207\275\346\225\260.md" index 3ee1661dad7b5a486c157c6ea29e55533a5c69e5..016cbe6edb089a2098a08460b8862612d3a84c28 100644 --- "a/content/zh/docs/SQLReference/\345\205\266\345\256\203\345\207\275\346\225\260.md" +++ "b/content/zh/docs/SQLReference/\345\205\266\345\256\203\345\207\275\346\225\260.md" @@ -1098,7 +1098,7 @@

text

-
  • heap(astore 表)
  • uheap(ustore 表)
  • btree_index(BTree 索引)
  • ubtree_index(UBTree 索引)
  • segment(段页式)
+
  • heap(Astore 表)
  • uheap(Ustore 表)
  • btree_index(Btree 索引)
  • ubtree_index(UBtree 索引)
  • segment(段页式)

read_memory

@@ -1177,7 +1177,7 @@

text

-
  • heap(astore 表)
  • uheap(ustore 表)
  • btree_index(BTree 索引)
  • ubtree_index(UBTree 索引)
  • segment(段页式)
+
  • heap(Astore 表)
  • uheap(Ustore 表)
  • btree_index(Btree 索引)
  • ubtree_index(UBtree 索引)
  • segment(段页式)
@@ -1222,7 +1222,7 @@

text

-
  • heap(astore 表)
  • uheap(ustore 表)
  • btree_index(BTree 索引)
  • ubtree_index(UBTree 索引)
  • segment(段页式)
+
  • heap(Astore 表)
  • uheap(Ustore 表)
  • btree_index(Btree 索引)
  • ubtree_index(UBtree 索引)
  • segment(段页式)

read_memory

diff --git "a/content/zh/docs/SQLReference/\345\206\205\351\203\250\345\207\275\346\225\260.md" "b/content/zh/docs/SQLReference/\345\206\205\351\203\250\345\207\275\346\225\260.md" index 7cb7756b98bcd6bbc2eaed62e066a5e8b20229bf..2a821baeabdde966a81e05e71931ea29ab8e8ce0 100644 --- "a/content/zh/docs/SQLReference/\345\206\205\351\203\250\345\207\275\346\225\260.md" +++ "b/content/zh/docs/SQLReference/\345\206\205\351\203\250\345\207\275\346\225\260.md" @@ -1369,7 +1369,7 @@ openGauss中下列函数使用了内部数据类型,用户无法直接调用 -- Ubtree索引内部函数 +- UBtree索引内部函数 - @@ -39,7 +39,7 @@ - diff --git "a/content/zh/docs/TechnicalWhitePaper/\346\212\200\346\234\257\347\211\271\347\202\271.md" "b/content/zh/docs/TechnicalWhitePaper/\346\212\200\346\234\257\347\211\271\347\202\271.md" index 342d5d6f1ab517767b8ef6bb906a2cf2314f6f07..e2cda430c442e2b26d1c478ec9e02314c5460eeb 100644 --- "a/content/zh/docs/TechnicalWhitePaper/\346\212\200\346\234\257\347\211\271\347\202\271.md" +++ "b/content/zh/docs/TechnicalWhitePaper/\346\212\200\346\234\257\347\211\271\347\202\271.md" @@ -6,7 +6,7 @@ openGauss相比于其他开源数据库主要有以下几个特点: - 提供了面向多核架构的并发控制技术,结合鲲鹏硬件优化,在两路鲲鹏下,TPCC Benchmark可以达到150万tpmc的性能。 - 针对当前硬件多核numa的架构趋势, 在内核关键结构上采用了Numa-Aware的数据结构。 - 提供Sql-bypass智能快速引擎技术。 - - 针对频繁更新场景,提供ustore存储引擎。 + - 针对频繁更新场景,提供Ustore存储引擎。 - 高可用 diff --git a/content/zh/docs/ToolandCommandReference/gs_check.md b/content/zh/docs/ToolandCommandReference/gs_check.md index a33acd4946660ffe25f65866c98709992af051d0..9efe2d9c87b9ae2be98a6c64b52a576fc66ed23b 100644 --- a/content/zh/docs/ToolandCommandReference/gs_check.md +++ b/content/zh/docs/ToolandCommandReference/gs_check.md @@ -564,7 +564,7 @@ gs_check改进增强,统一化当前系统中存在的各种检查工具,例 - diff --git a/content/zh/docs/ToolandCommandReference/gs_checkos.md b/content/zh/docs/ToolandCommandReference/gs_checkos.md index 3e5c0bf7ce6c91f014352335f98636fe836785e8..f4f277a87a2f39865b31cc1e8d057ef6efe81e33 100644 --- a/content/zh/docs/ToolandCommandReference/gs_checkos.md +++ b/content/zh/docs/ToolandCommandReference/gs_checkos.md @@ -53,6 +53,10 @@ gs_checkos工具用来帮助检查操作系统、控制参数、磁盘配置等 >A1...A14 表示只检查操作系统参数,并不设置。 >B1...B8 表示将参数系统参数设置为期望值。 >A和B不能同时输入。 + > + >root可以检查A1-A14所有检查项;普通用户只能检查A1,A2,A3,A4,A5,A8,A12,A13这些检查项。 + > + >root可以设置B1-B8所有检查项;普通用户不能设置。 详细的检查项请参见[表1](#zh-cn_topic_0237152331_zh-cn_topic_0059778883_t5348bfc47f50450687012eacb1a1ba4e)。 diff --git a/content/zh/docs/ToolandCommandReference/gs_expansion.md b/content/zh/docs/ToolandCommandReference/gs_expansion.md index 6fdda6668b8e95377ea117876a1ec5bdd1996da9..f64e076cac6532e45fc9dc19e2ab90ff2780fcb5 100644 --- a/content/zh/docs/ToolandCommandReference/gs_expansion.md +++ b/content/zh/docs/ToolandCommandReference/gs_expansion.md @@ -28,8 +28,6 @@ openGauss提供了gs_expansion工具对数据库的备机进行扩容。支持 - 使用root或普通用户执行gs_expansion命令。 -- 如果使用普通用户执行gs_expansion命令,需要手动将节点的映射关系写入/etc/hosts文件中,所有节点都得写入(也可以使用om提供的gs_sshexkey工具,只有在root用户下才会将映射关系写入到/etc/hosts文件中)。 - - 不允许同时在主节点上执行gs_dropnode命令删除其他备机。 - 执行扩容命令前需要通过source命令导入主机数据库的环境变量。如果当前数据库是分离环境变量方式安装,则source导入分离的环境变量。如果未进行分离,则需要source导入子用户的.bashrc配置文件。一般该文件路径为:/home/[user]/.bashrc。 diff --git a/content/zh/docs/ToolandCommandReference/gs_guc.md b/content/zh/docs/ToolandCommandReference/gs_guc.md index 9d7ec7966ceedbb18186987c25b8b5b89fb30a58..a1fe3102a6511835aa2fa7e45d81432dad1d558c 100644 --- a/content/zh/docs/ToolandCommandReference/gs_guc.md +++ b/content/zh/docs/ToolandCommandReference/gs_guc.md @@ -105,6 +105,8 @@ gs\_guc工具由操作系统用户omm执行。 > - USERNAME:当配置为all时表示不限制用户,会放在指定具体某个用户的策略后面。 > > - HOSTTYPE:local \> hostssl \> hostnossl \> host。 + > + > - 如果预安装是通过普通用户执行的,并且/etc/hosts没有主备节点的映射关系,那么-N, -I参数不支持。 - 注释已经设置的客户端认证策略。若选择reload会同时发送信号量到pg\_hba.conf,即无需重启即可生效。 @@ -132,7 +134,7 @@ gs\_guc工具由操作系统用户omm执行。 >![](public_sys-resources/icon-note.png) **说明:** > - >- -K是用户指定的密码,gs\_guc会对该密码进行长度(8<=len<16)和密码复杂度要求,如果不满足,将会报错。此密码用于保证生成密码文件的安全性和唯一性,用户无需保存或记忆。 + >- -K是用户指定的密码,gs\_guc会对该密码进行长度(8<=len<=16)和密码复杂度要求,如果不满足,将会报错。此密码用于保证生成密码文件的安全性和唯一性,用户无需保存或记忆。 > >- -M是加密类型,当前仅支持server、client和source。默认值为server。 diff --git a/content/zh/docs/ToolandCommandReference/gs_postuninstall.md b/content/zh/docs/ToolandCommandReference/gs_postuninstall.md index 4153196081548c0987f12e4bb3441235d357bf2f..75ee8b25648158ebe6aa155fa8a0f7e3f6587dfd 100644 --- a/content/zh/docs/ToolandCommandReference/gs_postuninstall.md +++ b/content/zh/docs/ToolandCommandReference/gs_postuninstall.md @@ -9,7 +9,7 @@ openGauss提供了gs\_postuninstall工具来帮助清理准备openGauss环境阶 - openGauss卸载执行成功。 - root用户互信可用。 - 只能使用root用户执行gs_postuninstall命令(执行前需source安装用户的环境变量) -- 若为环境变量分离的模式安装的数据库,root和普通用户在使用该工具前都需要source环境变量分离文件ENVFILE; +- 若为环境变量分离的模式安装的数据库,root用户在使用该工具前都需要source环境变量分离文件ENVFILE; - 若为环境变量不分离的模式,root用户在使用该工具时需要source安装用户的.bashrc文件 ## 语法 diff --git a/content/zh/docs/ToolandCommandReference/gs_probackup.md b/content/zh/docs/ToolandCommandReference/gs_probackup.md index 49eea68c179860259f6586feac822132ab37c627..75f4fb6ebcdc9c3eba3c37642bd1889198700e4e 100644 --- a/content/zh/docs/ToolandCommandReference/gs_probackup.md +++ b/content/zh/docs/ToolandCommandReference/gs_probackup.md @@ -29,6 +29,7 @@ gs\_probackup目前支持进度打印,会分别在文件备份、文件验证 - 在非资源池化模式下,当存在用户自定义表空间时,如果该表空间的路径不在PGDATA目录下,备份的时候要加上 --external-dirs 参数,否则,该表空间不会被备份;在资源池化模式下,当前只支持相对路径表空间,因此存在自定义表空间时不需要指定 --external-dir 参数。 - 当备份的规模比较大或在备份同时执行业务时,为了防止备份过程中timeout发生,请适当调整postgresql.conf文件的参数 session\_timeout、wal\_sender\_timeout。并且在备份的命令行参数中适当调整参数rw-timeout的值。 - 资源池化模式下,恢复到不同集群需先执行全量恢复。 +- 增量备份恢复后,之前创建的非pgoutput插件的逻辑复制槽不可用,需删除重建。 - 恢复时,使用-T选项把备份中的外部目录重定向到新目录时,请同时指定参数--external-mapping。 - 当使用远程备份时,请确保远程机器和备份机器的时钟同步,以防止使用--recovery-target-time恢复的场合,启动gaussdb时有可能会失败。 - 当远程备份有效时\(remote-proto=ssh\),请确保-h和--remote-host指定的是同一台机器。当远程备份无效时,如果指定了-h选项,请确保-h指定的是本机地址或本机主机名。 diff --git a/content/zh/docs/ToolandCommandReference/gs_sdr.md b/content/zh/docs/ToolandCommandReference/gs_sdr.md index 71782004830297b77a2ce58ecf99d99a0357e359..549812b983c17751bbccaf8f4c4fe1bd8104d73a 100644 --- a/content/zh/docs/ToolandCommandReference/gs_sdr.md +++ b/content/zh/docs/ToolandCommandReference/gs_sdr.md @@ -108,6 +108,7 @@ gs\_sdr参数可以分为如下几类: > >1. 搭建容灾关系前,主集群需创建容灾用户,用于容灾鉴权,主备集群必须使用相同的容灾用户名和密码,一次容灾搭建后,该用户密码不可修改。若需修改容灾用户名与密码,需要解除容灾,使用新的容灾用户重新进行搭建。容灾用户密码中不可包含以下字符“| ;&$<>`\'"{}()[]~*?!\n空白”。 >2. -U、-W 参数如果搭建命令行未带,则在搭建过程中支持交互式输入。 + >3. -W 参数在命令行中输入时,其他终端可以通过ps方式查看到密码,存在安全风险。建议通过交互方式输入。 - -X @@ -177,7 +178,7 @@ gs\_sdr参数可以分为如下几类: >![](public_sys-resources/icon-note.png) **说明:** > - >需要注意的是,build和start集群都有自己的超时时间设置。对于build集群,默认的超时时间为1209600秒(14天),如果在这个时间内没有完成构建操作,将自动退出。而对于start集群,默认的超时时间为3600*24*7秒(一周),即一周内如果没有完成启动操作,将自动退出。如果不指定--time-out=SECS参数,那么在build集群中,超时时间为1200秒后不会自动退出;而在start集群中,超时时间为1200秒后也不会自动退出。 + >需要注意的是,build和start集群都有自己的超时时间设置。对于build集群,默认的超时时间为1209600秒(14天),如果在这个时间内没有完成构建操作,将自动退出。而对于start集群,默认的超时时间为604800秒(一周),即一周内如果没有完成启动操作,将自动退出。如果不指定--time-out=SECS参数,那么在build集群中,超时时间为1200秒后不会自动退出;而在start集群中,超时时间为1200秒后也不会自动退出。 - 容灾升主参数: diff --git a/content/zh/docs/ToolandCommandReference/gs_upgradectl.md b/content/zh/docs/ToolandCommandReference/gs_upgradectl.md index 5e733b8bd5d41ea090d5c02f0a62a07657fa7f33..c21b02026c7bf2cae2d4590d4460555f528ac2eb 100644 --- a/content/zh/docs/ToolandCommandReference/gs_upgradectl.md +++ b/content/zh/docs/ToolandCommandReference/gs_upgradectl.md @@ -47,43 +47,43 @@ - 显示帮助信息 - ``` + ```shell gs_upgradectl -? | --help ``` - 显示版本号信息 - ``` + ```shell gs_upgradectl -V | --version ``` - 选择升级策略 - ``` + ```shell gs_upgradectl -t chose-strategy [-l LOGFILE] ``` - 自动升级openGauss - ``` + ```shell gs_upgradectl -t auto-upgrade -X XMLFILE [-l LOGFILE] [--grey] ``` - 自动回滚升级 - ``` + ```shell gs_upgradectl -t auto-rollback -X XMLFILE [-l LOGFILE] ``` - 升级状态查询 - ``` + ```shell gs_upgradectl -S show-step ``` - 升级提交 - ``` + ```shell gs_upgradectl -t commit-upgrade -X XMLFILE [-l LOGFILE] ``` @@ -148,7 +148,7 @@ **示例一**:升级前使用新包进行前置操作。 -``` +```shell ./gs_preinstall -U roach -G users -X /data/xml/3node_3c3d_1m2s_etcd.xml Parsing the configuration file. Successfully parsed the configuration file. @@ -199,7 +199,7 @@ PreInstallationGuide succeeded. **示例二**:使用gs\_upgradectl脚本执行灰度升级。 -``` +```shell gs_upgradectl -t auto-upgrade -X /data/xml/3node_3c3d_1m2s_etcd.xml Static configuration matched with old static configuration files. Performing inplace rollback. @@ -235,7 +235,7 @@ Once the check done, please execute following command to commit upgrade: **示例三**:使用gs\_upgradectl脚本执行自动回滚,撤销已经成功/失败的升级操作(升级回滚)。 -``` +```shell gs_upgradectl -t auto-rollback -X /data/xml/3node_3c3d_1m2s_etcd.xml Static configuration matched with old static configuration files. Performing inplace rollback. @@ -260,7 +260,7 @@ Rollback succeeded. **示例四**:使用gs\_upgradectl脚本执行升级后提交(升级提交)。 -``` +```shell gs_upgradectl -t commit-upgrade -X /data/xml/3node_3c3d_1m2s_etcd.xml Old cluster app path is /data/gauss/app_e67b8bcd Successfully Cleaned old install path. @@ -270,7 +270,7 @@ Commit binary upgrade succeeded. **示例五**:使用gs\_upgradectl脚本执行指定节点升级。 升级部分指定节点 -``` +```shell gs_upgradectl -t auto-upgrade -X /data/node2.xml --grey -h hostname0 Static configuration matched with old static configuration files. Successfully set upgrade_mode to 0. @@ -306,7 +306,7 @@ The nodes ['hostname0']ve been successfully upgraded.Then can upgrade the remain ``` 升级剩余节点 -``` +```shell gs_upgradectl -t auto-upgrade -X /data/node2.xml --grey --continue Static configuration matched with old static configuration files. Checking upgrade environment. @@ -343,7 +343,7 @@ Successfully upgrade all nodes. **示例六**:使用gs\_upgradectl脚本执行集群管理组件增量升级。 -``` +```shell gs_upgradectl -t upgrade-cm --upgrade-package /data/openGauss-3.1.0-CentOS-64bit-cm.tar.gz Start ot perform the upgrade of CM component in cluster. Ready to transform CM package to all nodes. @@ -366,7 +366,7 @@ Upgrade CM component successfully. **示例七**:使用gs_upgradectl脚本执行升级状态查询。 -``` +```shell gs_upgradectl -S show-step doShowUpgradeStep in UpgradeImpl Cluster Nodes are ['node1', 'node2']. diff --git a/content/zh/menu/index.md b/content/zh/menu/index.md index 27bf10c436a996ad2542ba3702614c0611a350f4..24d619a0bb69e746d13f33cc8018846224064a4c 100644 --- a/content/zh/menu/index.md +++ b/content/zh/menu/index.md @@ -164,6 +164,7 @@ headless: true - [反向全量迁移(openGauss -\> MySQL)]({{< relref "./docs/AboutopenGauss/反向全量迁移.md" >}}) - [数据校验gs_datacheck]({{< relref "./docs/AboutopenGauss/数据校验gs_datacheck.md" >}}) - [openGauss客户端工具DataStudio]({{< relref "./docs/AboutopenGauss/openGauss客户端工具DataStudio.md" >}}) + - [数据库安装流程解除对root用户的依赖]({{< relref "./docs/AboutopenGauss/数据库安装流程解除对root用户的依赖.md" >}}) - [中间件]({{< relref "./docs/AboutopenGauss/中间件.md" >}}) - [分布式数据库能力]({{< relref "./docs/AboutopenGauss/分布式数据库能力.md" >}}) - [使用kubernetes部署分布式数据库]({{< relref "./docs/AboutopenGauss/使用kubernetes部署分布式数据库.md" >}}) @@ -198,6 +199,7 @@ headless: true - [一主一备节点安装]({{< relref "./docs/InstallationGuide/一主一备节点安装.md" >}}) - [容器安装]({{< relref "./docs/InstallationGuide/容器安装.md" >}}) - [单节点安装]({{< relref "./docs/InstallationGuide/单节点安装_容器.md" >}}) + - [CM安装]({{< relref "./docs/InstallationGuide/CM安装_容器.md" >}}) - [RPM安装]({{< relref "./docs/InstallationGuide/RPM安装.md" >}}) - [企业版安装]({{< relref "./docs/InstallationGuide/企业版安装.md" >}}) - [安装准备]({{< relref "./docs/InstallationGuide/安装准备_企业版.md" >}}) @@ -1435,6 +1437,7 @@ headless: true - [使用]({{< relref "./docs/SQLReference/使用_增量物化视图.md" >}}) - [支持和约束]({{< relref "./docs/SQLReference/支持和约束-1.md" >}}) - [游标]({{< relref "./docs/SQLReference/游标.md" >}}) + - [使用游标创建type]({{< relref "./docs/SQLReference/使用游标创建type.md" >}}) - [匿名块]({{< relref "./docs/SQLReference/匿名块.md" >}}) - [存储过程]({{< relref "./docs/SQLReference/存储过程.md" >}}) - [存储过程]({{< relref "./docs/SQLReference/存储过程_SQLReference.md" >}})

ubtbeginscan

diff --git "a/content/zh/docs/SQLReference/\346\225\260\346\215\256\346\215\237\345\235\217\346\243\200\346\265\213\344\277\256\345\244\215\345\207\275\346\225\260.md" "b/content/zh/docs/SQLReference/\346\225\260\346\215\256\346\215\237\345\235\217\346\243\200\346\265\213\344\277\256\345\244\215\345\207\275\346\225\260.md" index 2dc9cead04e0e227a92d5703d54d39812720c23d..8f48d75210160f4bf1121aae3782e35cadbf698c 100644 --- "a/content/zh/docs/SQLReference/\346\225\260\346\215\256\346\215\237\345\235\217\346\243\200\346\265\213\344\277\256\345\244\215\345\207\275\346\225\260.md" +++ "b/content/zh/docs/SQLReference/\346\225\260\346\215\256\346\215\237\345\235\217\346\243\200\346\265\213\344\277\256\345\244\215\345\207\275\346\225\260.md" @@ -12,7 +12,7 @@

检测修复

普通行存表(astore, ustore,包括压缩表),段页式表,不包括索引

+

普通行存表(Astore, Ustore,包括压缩表),段页式表,不包括索引

文件&页面

手动检测手动修复,不支持dcf模式。

普通行存表(astore, ustore,不包括压缩表),索引(btree, ubtree),undo(不包括undo meta,undo只支持CRC校验错误)

+

普通行存表(Astore, Ustore,不包括压缩表),索引(Btree, UBtree),undo(不包括undo meta,undo只支持CRC校验错误)

页面

CheckCurConnCount(检查当前连接数)

检查数据库连接数,如果连接数小于最大连接数的90%则检查项通过,否则检查项不通过。

+

检查数据库连接数,如果连接数大于0并且小于最大连接数的90%则检查项通过,否则检查项不通过。