You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by du...@apache.org on 2022/06/30 08:50:19 UTC

[shardingsphere] branch master updated: Update documents about ShardingSphere adaptors (#18728)

This is an automated email from the ASF dual-hosted git repository.

duanzhengqiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 181f1cf941d Update documents about ShardingSphere adaptors (#18728)
181f1cf941d is described below

commit 181f1cf941d3b7f94ab07917f4e12429b3575535
Author: 吴伟杰 <wu...@apache.org>
AuthorDate: Thu Jun 30 16:50:13 2022 +0800

    Update documents about ShardingSphere adaptors (#18728)
    
    * Update documents about properties of ShardingSphere-Proxy
    
    * Update documents about ShardingSphere-JDBC driver
    
    * Update documents about properties of ShardingSphere-JDBC
    
    * Update documents about starting ShardingSphere-Proxy by binary package
    
    * Revise bin.en.md
    
    * Update documents about starting ShardingSphere-Proxy by Docker
    
    * Update documents about rules of ShardingSphere-Proxy
    
    * Update hyperlinks in English documents
    
    * Update documents about Proxy dev manual
    
    * Revise proxy.en.md
    
    * Revise rules.en.md
---
 docs/document/content/dev-manual/proxy.cn.md       |  35 ++++---
 docs/document/content/dev-manual/proxy.en.md       |  47 ++++++----
 .../shardingsphere-jdbc/jdbc-driver/_index.cn.md   |  46 +++++----
 .../shardingsphere-jdbc/jdbc-driver/_index.en.md   |  50 ++++++----
 .../user-manual/shardingsphere-jdbc/props.cn.md    |  17 +++-
 .../user-manual/shardingsphere-jdbc/props.en.md    |  17 +++-
 .../shardingsphere-proxy/startup/bin.cn.md         |  97 +++++++++++++------
 .../shardingsphere-proxy/startup/bin.en.md         | 104 ++++++++++++++-------
 .../shardingsphere-proxy/startup/docker.cn.md      |  84 +++++++++--------
 .../shardingsphere-proxy/startup/docker.en.md      |  84 +++++++++--------
 .../shardingsphere-proxy/yaml-config/props.cn.md   |  11 ++-
 .../shardingsphere-proxy/yaml-config/props.en.md   |  53 ++++++-----
 .../shardingsphere-proxy/yaml-config/rules.cn.md   |  14 ++-
 .../shardingsphere-proxy/yaml-config/rules.en.md   |  14 ++-
 14 files changed, 433 insertions(+), 240 deletions(-)

diff --git a/docs/document/content/dev-manual/proxy.cn.md b/docs/document/content/dev-manual/proxy.cn.md
index 2e26a4ba5a1..2efed0ed8de 100644
--- a/docs/document/content/dev-manual/proxy.cn.md
+++ b/docs/document/content/dev-manual/proxy.cn.md
@@ -5,25 +5,38 @@ weight = 6
 chapter = true
 +++
 
-## DatabaseProtocolFrontendEngine
+## SPI 接口
+
+### DatabaseProtocolFrontendEngine
+
+全限定类名:[`org.apache.shardingsphere.proxy.frontend.spi.DatabaseProtocolFrontendEngine`](https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-spi/src/main/java/org/apache/shardingsphere/proxy/frontend/spi/DatabaseProtocolFrontendEngine.java)
 
 | *SPI 名称*                       | *详细说明*                                      |
 | ------------------------------- | ---------------------------------------------- |
 | DatabaseProtocolFrontendEngine  | 用于 ShardingSphere-Proxy 解析与适配访问数据库的协议 |
 
-| *已知实现类*               | *详细说明*                      |
-| ------------------------ | ---------------------------- |
-| MySQLFrontendEngine      | 基于 MySQL 的数据库协议实现      |
-| PostgreSQLFrontendEngine | 基于 PostgreSQL 的数据库协议实现 |
-| OpenGaussFrontendEngine  | 基于 openGauss 的数据库协议实现   |
+### AuthorityProvideAlgorithm
 
-## AuthorityProviderAlgorithm
+全限定类名:[`org.apache.shardingsphere.authority.spi.AuthorityProviderAlgorithm`](https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-kernel/shardingsphere-authority/shardingsphere-authority-api/src/main/java/org/apache/shardingsphere/authority/spi/AuthorityProviderAlgorithm.java)
 
 | *SPI 名称*                       | *详细说明*                    |
 | ------------------------------- | ---------------------------- |
 | AuthorityProviderAlgorithm      | 用户权限加载逻辑                |
 
-| *已知实现类*                            | *Type*            | *详细说明*                                                                          |
-|------------------------------------| ----------------  |----------------------------------------------------------------------------------- |
-| AllPermittedProviderAlgorithm      | ALL_PERMITTED     | 默认授予所有权限(不鉴权),不会与实际数据库交互                                            |
-| DatabasePermittedProviderAlgorithm | DATABASE_PERMITTED| 通过属性 user-database-mappings 配置的权限                                               |
+
+## 示例
+
+### DatabaseProtocolFrontendEngine
+
+| *已知实现类*               | *详细说明*                      |
+| ------------------------ | ---------------------------- |
+| [MySQLFrontendEngine](https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-mysql/src/main/java/org/apache/shardingsphere/proxy/frontend/mysql/MySQLFrontendEngine.java)      | 基于 MySQL 的数据库协议实现      |
+| [PostgreSQLFrontendEngine](https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/PostgreSQLFrontendEngine.java) | 基于 PostgreSQL 的数据库协议实现 |
+| [OpenGaussFrontendEngine](https://github.com/apache/shardingsphere/blob/dec5581af372e1e7daa487800867265ef99bb07c/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/OpenGaussFrontendEngine.java)  | 基于 openGauss 的数据库协议实现   |
+
+### AuthorityProvideAlgorithm
+
+| *已知实现类*                                          | *Type*            | *详细说明*                                                                          |
+|-----------------------------------------------------| ----------------  |----------------------------------------------------------------------------------- |
+| [AllPermittedPrivilegesProviderAlgorithm](https://github.com/apache/shardingsphere/blob/dec5581af372e1e7daa487800867265ef99bb07c/shardingsphere-kernel/shardingsphere-authority/shardingsphere-authority-core/src/main/java/org/apache/shardingsphere/authority/provider/simple/AllPermittedPrivilegesProviderAlgorithm.java)             | ALL_PERMITTED     | 默认授予所有权限(不鉴权),不会与实际数据库交互                                            |
+| [DatabasePermittedPrivilegesProviderAlgorithm](https://github.com/apache/shardingsphere/blob/dec5581af372e1e7daa487800867265ef99bb07c/shardingsphere-kernel/shardingsphere-authority/shardingsphere-authority-core/src/main/java/org/apache/shardingsphere/authority/provider/database/DatabasePermittedPrivilegesProviderAlgorithm.java)          | DATABASE_PERMITTED| 通过属性 user-database-mappings 配置的权限                                               |
diff --git a/docs/document/content/dev-manual/proxy.en.md b/docs/document/content/dev-manual/proxy.en.md
index 4754e08c6f5..7f07f7f68d3 100644
--- a/docs/document/content/dev-manual/proxy.en.md
+++ b/docs/document/content/dev-manual/proxy.en.md
@@ -5,25 +5,38 @@ weight = 6
 chapter = true
 +++
 
-## DatabaseProtocolFrontendEngine
+## SPI Interface
 
-| *SPI Name*                       | *Description*                                                                   |
-| -------------------------------- | ------------------------------------------------------------------------------- |
-| DatabaseProtocolFrontendEngine   | Regulate parse and adapter protocol of database access for ShardingSphere-Proxy |
+### DatabaseProtocolFrontendEngine
 
-| *Implementation Class*   | *Description*                        |
-| ------------------------ | ------------------------------------ |
-| MySQLFrontendEngine      | Base on MySQL database protocol      |
-| PostgreSQLFrontendEngine | Base on PostgreSQL database protocol |
-| OpenGaussFrontendEngine  | Base on openGauss database protocol  |
+Fully-qualified class name: [`org.apache.shardingsphere.proxy.frontend.spi.DatabaseProtocolFrontendEngine`](https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-spi/src/main/java/org/apache/shardingsphere/proxy/frontend/spi/DatabaseProtocolFrontendEngine.java)
 
-## AuthorityProviderAlgorithm
+| *SPI Name*                       | *Description*                                      |
+| ------------------------------- | ---------------------------------------------- |
+| DatabaseProtocolFrontendEngine  | Protocols for ShardingSphere-Proxy to parse and adapt for accessing databases |
 
-| *SPI Name*                       | *Description*                  |
-| -------------------------------  | ------------------------------ |
-| AuthorityProviderAlgorithm       | User authority loading logic   |
+### AuthorityProvideAlgorithm
 
-| *Implementation Class*                       | *Type*           | *Description*                                                                                                         |
-|----------------------------------------------| ---------------- | --------------------------------------------------------------------------------------------------------------------- |
-| AllPermittedProviderAlgorithm      | ALL_PERMITTED    | All privileges granted to user by default (No authentication). Will not interact with the actual database             |
-| DatabasePermittedProviderAlgorithm | DATABASE_PERMITTED | Permissions configured through the attribute user-database-mappings                                                     |
+Fully-qualified class name: [`org.apache.shardingsphere.authority.spi.AuthorityProviderAlgorithm`](https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-kernel/shardingsphere-authority/shardingsphere-authority-api/src/main/java/org/apache/shardingsphere/authority/spi/AuthorityProviderAlgorithm.java)
+
+| *SPI Name*                       | *Description*                    |
+| ------------------------------- | ---------------------------- |
+| AuthorityProviderAlgorithm      | Loading logic for user permission|
+
+
+## Example
+
+### DatabaseProtocolFrontendEngine
+
+| *Known implementation class*               | *Description*                      |
+| ------------------------ | ---------------------------- |
+| [MySQLFrontendEngine](https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-mysql/src/main/java/org/apache/shardingsphere/proxy/frontend/mysql/MySQLFrontendEngine.java)      | implementation based on database protocols of MySQL |
+| [PostgreSQLFrontendEngine](https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/PostgreSQLFrontendEngine.java) |  implementation based on database protocols of PostgreSQL |
+| [OpenGaussFrontendEngine](https://github.com/apache/shardingsphere/blob/dec5581af372e1e7daa487800867265ef99bb07c/shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-opengauss/src/main/java/org/apache/shardingsphere/proxy/frontend/opengauss/OpenGaussFrontendEngine.java)  |  implementation based on database protocols of openGauss|
+
+### AuthorityProvideAlgorithm
+
+| *Known implementation class*                                          | *Type*            | *Description*                                                                          |
+|-----------------------------------------------------| ----------------  |----------------------------------------------------------------------------------- |
+| [AllPermittedPrivilegesProviderAlgorithm](https://github.com/apache/shardingsphere/blob/dec5581af372e1e7daa487800867265ef99bb07c/shardingsphere-kernel/shardingsphere-authority/shardingsphere-authority-core/src/main/java/org/apache/shardingsphere/authority/provider/simple/AllPermittedPrivilegesProviderAlgorithm.java)             | ALL_PERMITTED     | Grant all permissions by default (no forensics), no interaction with the actual database |
+| [DatabasePermittedPrivilegesProviderAlgorithm](https://github.com/apache/shardingsphere/blob/dec5581af372e1e7daa487800867265ef99bb07c/shardingsphere-kernel/shardingsphere-authority/shardingsphere-authority-core/src/main/java/org/apache/shardingsphere/authority/provider/database/DatabasePermittedPrivilegesProviderAlgorithm.java)          | DATABASE_PERMITTED| Permissions configured by user-database-mappings |
diff --git a/docs/document/content/user-manual/shardingsphere-jdbc/jdbc-driver/_index.cn.md b/docs/document/content/user-manual/shardingsphere-jdbc/jdbc-driver/_index.cn.md
index 36b59e13c9f..611c9c72290 100644
--- a/docs/document/content/user-manual/shardingsphere-jdbc/jdbc-driver/_index.cn.md
+++ b/docs/document/content/user-manual/shardingsphere-jdbc/jdbc-driver/_index.cn.md
@@ -4,13 +4,27 @@ weight = 3
 chapter = true
 +++
 
-## 简介
+## 背景信息
 
 ShardingSphere-JDBC 提供了 JDBC 驱动,可以仅通过配置变更即可使用,无需改写代码。
 
-## 使用步骤
+## 参数解释
 
-### 引入 Maven 依赖
+### 驱动类名称
+
+`org.apache.shardingsphere.driver.ShardingSphereDriver`
+
+### URL 配置
+
+- 以 `jdbc:shardingsphere:` 为前缀
+- 配置文件:`xxx.yaml`,配置文件格式与 [YAML 配置](/cn/user-manual/shardingsphere-jdbc/yaml-config/)一致
+- 配置文件加载规则:
+  - 无前缀表示从绝对路径加载配置文件
+  - `classpath:` 前缀表示从类路径中加载配置文件
+
+## 操作步骤
+
+1. 引入 Maven 依赖
 
 ```xml
 <dependency>
@@ -20,9 +34,9 @@ ShardingSphere-JDBC 提供了 JDBC 驱动,可以仅通过配置变更即可使
 </dependency>
 ```
 
-### 使用驱动
+2. 使用驱动
 
-#### 使用原生驱动
+* 使用原生驱动:
 
 ```java
 Class.forName("org.apache.shardingsphere.driver.ShardingSphereDriver");
@@ -42,7 +56,7 @@ try (
 }
 ```
 
-#### 使用数据库连接池
+* 使用数据库连接池
 
 ```java
 String driverClassName = "org.apache.shardingsphere.driver.ShardingSphereDriver";
@@ -67,16 +81,14 @@ try (
 }
 ```
 
-### 配置说明
-
-#### 驱动类名称
+## 配置示例
 
-`org.apache.shardingsphere.driver.ShardingSphereDriver`
-
-#### URL 配置说明
+加载 classpath 中 config.yaml 配置文件的 JDBC URL:
+```
+jdbc:shardingsphere:classpath:config.yaml
+```
 
-- 以 `jdbc:shardingsphere:` 为前缀
-- 配置文件:`xxx.yaml`,配置文件格式与 [YAML 配置](/cn/user-manual/yaml-config/)一致
-- 配置文件加载规则:
-  - 无前缀表示从绝对路径加载配置文件  
-  - `classpath:` 前缀表示从类路径中加载配置文件
+加载绝对路径中 config.yaml 配置文件的 JDBC URL:
+```
+jdbc:shardingsphere:/path/to/config.yaml
+```
diff --git a/docs/document/content/user-manual/shardingsphere-jdbc/jdbc-driver/_index.en.md b/docs/document/content/user-manual/shardingsphere-jdbc/jdbc-driver/_index.en.md
index 48c4d610972..d03cea3fbdd 100644
--- a/docs/document/content/user-manual/shardingsphere-jdbc/jdbc-driver/_index.en.md
+++ b/docs/document/content/user-manual/shardingsphere-jdbc/jdbc-driver/_index.en.md
@@ -4,13 +4,27 @@ weight = 3
 chapter = true
 +++
 
-## Overview
+## Background
 
-ShardingSphere-JDBC provides JDBC driver, it permits user using ShardingSphere by configuration updating only, without any code changes.
+ShardingSphere-JDBC provides a JDBC Driver, which can be used only through configuration changes without rewriting the code.
 
-## Usage
+## Parameters
 
-### Import Maven Dependency
+### Driver Class Name
+
+`org.apache.shardingsphere.driver.ShardingSphereDriver`
+
+### URL Configuration
+
+- Use jdbc:shardingsphere: as prefix
+- Configuration file: xxx.yaml, keep consist format with [YAML Configuration](/en/user-manual/shardingsphere-jdbc/yaml-config/)
+- Configuration file loading rule:
+  - No prefix means that the configuration file is loaded from the absolute path
+  - `classpath:` prefix indicates that the configuration file is loaded from the classpath
+
+## Procedure
+
+1. Import Maven Dependency
 
 ```xml
 <dependency>
@@ -20,9 +34,9 @@ ShardingSphere-JDBC provides JDBC driver, it permits user using ShardingSphere b
 </dependency>
 ```
 
-### Driver Usage
+2. Use drive
 
-#### Native Driver Usage
+* Use native drivers:
 
 ```java
 Class.forName("org.apache.shardingsphere.driver.ShardingSphereDriver");
@@ -42,13 +56,13 @@ try (
 }
 ```
 
-#### Database Connection Pool Usage
+* Use database connection pool:
 
 ```java
 String driverClassName = "org.apache.shardingsphere.driver.ShardingSphereDriver";
 String jdbcUrl = "jdbc:shardingsphere:classpath:config.yaml";
 
-// Use HikariCP as sample 
+// Take HikariCP as an example 
 HikariDataSource dataSource = new HikariDataSource();
 dataSource.setDriverClassName(driverClassName);
 dataSource.setJdbcUrl(jdbcUrl);
@@ -67,16 +81,14 @@ try (
 }
 ```
 
-### Configuration Explanation
-
-#### Driver Class Name
+## Sample
 
-`org.apache.shardingsphere.driver.ShardingSphereDriver`
-
-#### URL Configuration Explanation
+Load JDBC URL of config.yaml profile in classpath:
+```
+jdbc:shardingsphere:classpath:config.yaml
+```
 
-- Use `jdbc:shardingsphere:` as prefix
-- Configuration file: `xxx.yaml`, keep consist format with [YAML Configuration](/en/user-manual/yaml-config/)
-- Configuration file loading rule:
-  - No prefix for loading from absolute path
-  - Prefix with `classpath:` for loading from java class path
+Load JDBC URL of config.yaml profile in absolute path
+```
+jdbc:shardingsphere:/path/to/config.yaml
+```
diff --git a/docs/document/content/user-manual/shardingsphere-jdbc/props.cn.md b/docs/document/content/user-manual/shardingsphere-jdbc/props.cn.md
index fee90768999..7fcebb696a5 100644
--- a/docs/document/content/user-manual/shardingsphere-jdbc/props.cn.md
+++ b/docs/document/content/user-manual/shardingsphere-jdbc/props.cn.md
@@ -4,9 +4,11 @@ weight = 6
 chapter = true
 +++
 
+## 背景信息
+
 Apache ShardingSphere 提供属性配置的方式配置系统级配置。
 
-## 配置项说明
+## 参数解释
 
 | *名称*                              | *数据类型*  | *说明*                                                                                                                                                                      | *默认值*  |
 | ---------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
@@ -16,3 +18,16 @@ Apache ShardingSphere 提供属性配置的方式配置系统级配置。
 | max-connections-size-per-query (?) | int        | 一次查询请求在每个数据库实例中所能使用的最大连接数                                                                                                                                   | 1        |
 | check-table-metadata-enabled (?)   | boolean    | 在程序启动和更新时,是否检查分片元数据的结构一致性                                                                                                                                   | false    |
 | sql-federation-enabled (?)         | boolean    | 是否开启联邦查询                                                                                                                                                               | false    |
+
+## 操作步骤
+
+属性配置直接配置在 ShardingSphere-JDBC 所使用的配置文件中,格式如下:
+
+```yaml
+props:
+    sql-show: true
+```
+
+## 配置示例
+
+ShardingSphere 仓库的示例中包含了多种不同场景的属性配置,请参考:<https://github.com/apache/shardingsphere/tree/master/examples/shardingsphere-jdbc-example>
diff --git a/docs/document/content/user-manual/shardingsphere-jdbc/props.en.md b/docs/document/content/user-manual/shardingsphere-jdbc/props.en.md
index 26d96d3552b..950970c46a4 100644
--- a/docs/document/content/user-manual/shardingsphere-jdbc/props.en.md
+++ b/docs/document/content/user-manual/shardingsphere-jdbc/props.en.md
@@ -4,9 +4,11 @@ weight = 6
 chapter = true
 +++
 
+## Background
+
 Apache ShardingSphere provides the way of property configuration to configure system level configuration.
 
-## Configuration Item Explanation
+## Parameters
 
 | *Name*                             | *Data Type* | *Description*                                                                                                                                                                                                                                               | *Default Value* |
 | ---------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------- |
@@ -16,3 +18,16 @@ Apache ShardingSphere provides the way of property configuration to configure sy
 | max-connections-size-per-query (?) | int         | Max opened connection size for each query                                                                                                                                                                                                                   | 1               |
 | check-table-metadata-enabled (?)   | boolean     | Whether validate table meta data consistency when application startup or updated                                                                                                                                                                            | false           |
 | sql-federation-enabled (?)         | boolean     | Whether enable SQL federation                                                                                                                                                                                                                               | false           |
+
+## Procedure
+
+1. Properties configuration is directly configured in the profile used by ShardingSphere-JDBC. The format is as follows:
+
+```yaml
+props:
+    sql-show: true
+```
+
+## Sample
+
+The example of ShardingSphere warehouse contains property configurations of various scenarios. Please refer to: <https://github.com/apache/shardingsphere/tree/master/examples/shardingsphere-jdbc-example>
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/startup/bin.cn.md b/docs/document/content/user-manual/shardingsphere-proxy/startup/bin.cn.md
index c064d248fc5..ce5c53c5491 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/startup/bin.cn.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/startup/bin.cn.md
@@ -3,57 +3,92 @@ title = "使用二进制发布包"
 weight = 1
 +++
 
-## 启动步骤
+## 背景信息
 
-1. 通过[下载页面](https://shardingsphere.apache.org/document/current/cn/downloads/)获取 ShardingSphere-Proxy 安装包。
-2. 解压缩后修改 `conf/server.yaml` 和以 `config-` 前缀开头的文件,如:`conf/config-xxx.yaml` 文件,进行分片规则、读写分离规则配置。配置方式请参考[配置手册](/cn/user-manual/shardingsphere-proxy/yaml-config/)。
-3. Linux 操作系统请运行 `bin/start.sh`,Windows 操作系统请运行 `bin/start.bat` 启动 ShardingSphere-Proxy。如需配置启动端口、配置文件位置,可参考[快速入门](/cn/quick-start/shardingsphere-proxy-quick-start/)。
+本节主要介绍如何通过二进制发布包启动 ShardingSphere-Proxy。
 
-## 选择数据库协议
+## 前提条件
 
-### 使用 PostgreSQL
+使用二进制发布包启动 Proxy,需要环境具备 Java JRE 8 或更高版本。
 
-1. 使用任何 PostgreSQL 的客户端连接。如: `psql -U root -h 127.0.0.1 -p 3307`。
+## 操作步骤
 
-### 使用 MySQL
+1. 获取 ShardingSphere-Proxy 二进制发布包
 
-1. 将 MySQL 的 JDBC 驱动程序复制至目录 `ext-lib/`。
-2. 使用任何 MySQL 的客户端连接。如: `mysql -u root -h 127.0.0.1 -P 3307`。
+在[下载页面](https://shardingsphere.apache.org/document/current/cn/downloads/)获取。
 
-### 使用 openGauss
+2. 配置 `conf/server.yaml`
 
-1. 将以 `org.opengauss` 包名为前缀的 openGauss 的 JDBC 驱动程序复制至目录 `ext-lib/`。
-2. 使用任何 openGauss 的客户端连接。如: `gsql -U root -h 127.0.0.1 -p 3307`。
+ShardingSphere-Proxy 运行模式在 `server.yaml` 中配置,配置格式与 ShardingSphere-JDBC 一致,请参考[模式配置](/cn/user-manual/shardingsphere-jdbc/yaml-config/mode/)。
 
-## 选择元数据持久化仓库
+其他配置项请参考:
+* [权限配置](/cn/user-manual/shardingsphere-proxy/yaml-config/authentication/)
+* [属性配置](/cn/user-manual/shardingsphere-proxy/yaml-config/props/)
 
-### 使用 ZooKeeper
+3. 配置 `conf/config-*.yaml`
 
-默认集成 ZooKeeper Curator 客户端。
+修改 `conf` 目录下以 `config-` 前缀开头的文件,如:`conf/config-sharding.yaml` 文件,进行分片规则、读写分离规则配置。配置方式请参考[配置手册](/cn/user-manual/shardingsphere-proxy/yaml-config/)。`config-*.yaml` 文件的 `*` 部分可以任意命名。
+ShardingSphere-Proxy 支持配置多个逻辑数据源,每个以 `config-` 前缀命名的 YAML 配置文件,即为一个逻辑数据源。
 
-### 使用 Etcd
+4. (可选)引入数据库驱动
 
-1. 将 Etcd 的客户端驱动程序复制至目录 `ext-lib/`。
+如果后端连接 PostgreSQL 数据库,不需要引入额外依赖。
 
-## 使用分布式事务
+如果后端连接 MySQL 数据库,请下载 [mysql-connector-java-5.1.47.jar](https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar) 或者 [mysql-connector-java-8.0.11.jar](https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.11/mysql-connector-java-8.0.11.jar),并将其放入 `ext-lib` 目录。
+
+如果后端连接 openGauss 数据库,请下载 [opengauss-jdbc-3.0.0.jar](https://repo1.maven.org/maven2/org/opengauss/opengauss-jdbc/3.0.0/opengauss-jdbc-3.0.0.jar),并将其放入 `ext-lib` 目录。
+
+5. (可选)引入集群模式所需依赖
+
+ShardingSphere-Proxy 默认集成 ZooKeeper Curator 客户端,集群模式使用 ZooKeeper 无须引入其他依赖。
+
+如果集群模式使用 Etcd,需要将 Etcd 的客户端驱动程序 [jetcd-core 0.5.0](https://repo1.maven.org/maven2/io/etcd/jetcd-core/0.5.0/jetcd-core-0.5.0.jar) 复制至目录 `ext-lib`。
+
+6. (可选)引入分布式事务所需依赖
 
 与 ShardingSphere-JDBC 使用方式相同。
 具体可参考[分布式事务](/cn/user-manual/shardingsphere-jdbc/special-api/transaction/)。
 
-## 使用自定义算法
+7. (可选)引入自定义算法
 
 当用户需要使用自定义的算法类时,可通过以下方式配置使用自定义算法,以分片为例:
 
-1. 实现 `ShardingAlgorithm` 接口定义的算法实现类。
-2. 在项目 `resources` 目录下创建 `META-INF/services` 目录。
-3. 在 `META-INF/services` 目录下新建文件 `org.apache.shardingsphere.sharding.spi.ShardingAlgorithm`
-4. 将实现类的绝对路径写入至文件 `org.apache.shardingsphere.sharding.spi.ShardingAlgorithm`
-5. 将上述 Java 文件打包成 jar 包。
-6. 将上述 jar 包拷贝至 ShardingSphere-Proxy 解压后的 `ext-lib/` 目录。
-7. 将上述自定义算法实现类的 Java 文件引用配置在 YAML 文件中,具体可参考[配置规则](/cn/user-manual/shardingsphere-proxy/yaml-config/)。
+    1. 实现 `ShardingAlgorithm` 接口定义的算法实现类。
+    2. 在项目 `resources` 目录下创建 `META-INF/services` 目录。
+    3. 在 `META-INF/services` 目录下新建文件 `org.apache.shardingsphere.sharding.spi.ShardingAlgorithm`
+    4. 将实现类的全限定类名写入至文件 `org.apache.shardingsphere.sharding.spi.ShardingAlgorithm`
+    5. 将上述 Java 文件打包成 jar 包。
+    6. 将上述 jar 包拷贝至 `ext-lib` 目录。
+    7. 将上述自定义算法实现类的 Java 文件引用配置在 YAML 文件中,具体可参考[配置规则](/cn/user-manual/shardingsphere-proxy/yaml-config/)。
+
+8. 启动 ShardingSphere-Proxy
+
+Linux/macOS 操作系统请运行 `bin/start.sh`,Windows 操作系统请运行 `bin/start.bat` 启动 ShardingSphere-Proxy。默认监听端口 `3307`,默认配置目录为 Proxy 内的 `conf` 目录。启动脚本可以指定监听端口、配置文件所在目录,命令如下:
+
+```bash
+bin/start.sh [port] [/path/to/conf]
+```
+
+9. 使用客户端连接 ShardingSphere-Proxy
+
+执行 MySQL / PostgreSQL / openGauss 的客户端命令直接操作 ShardingSphere-Proxy 即可。
+
+使用 MySQL 客户端连接 ShardingSphere-Proxy:
+```bash
+mysql -h${proxy_host} -P${proxy_port} -u${proxy_username} -p${proxy_password}
+```
+
+使用 PostgreSQL 客户端连接 ShardingSphere-Proxy:
+```bash 
+psql -h ${proxy_host} -p ${proxy_port} -U ${proxy_username}
+```
+
+使用 openGauss 客户端连接 ShardingSphere-Proxy:
+```bash 
+gsql -r -h ${proxy_host} -p ${proxy_port} -U ${proxy_username} -W ${proxy_password}
+```
 
-## 注意事项
+## 配置示例
 
-1. ShardingSphere-Proxy 默认使用 `3307` 端口,可以通过启动脚本追加参数作为启动端口号。如: `bin/start.sh 3308`。
-2. ShardingSphere-Proxy 使用 `conf/server.yaml` 配置注册中心、认证信息以及公用属性。
-3. ShardingSphere-Proxy 支持多逻辑数据源,每个以 `config-` 前缀命名的 YAML 配置文件,即为一个逻辑数据源。
+完整配置请参考 ShardingSphere 仓库中的示例:
+<https://github.com/apache/shardingsphere/tree/master/examples/shardingsphere-proxy-example>
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/startup/bin.en.md b/docs/document/content/user-manual/shardingsphere-proxy/startup/bin.en.md
index ec1daa52834..bcb374a52a3 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/startup/bin.en.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/startup/bin.en.md
@@ -3,57 +3,93 @@ title = "Use Binary Tar"
 weight = 1
 +++
 
-## Startup Steps
+## Background
 
-1. Get ShardingSphere-Proxy binary package from [download page](https://shardingsphere.apache.org/document/current/en/downloads/).
-2. After the decompression, revise `conf/server.yaml` and documents begin with `config-` prefix, `conf/config-xxx.yaml` for example, to configure sharding rules and readwrite-splitting rules. Please refer to [Configuration Manual](/en/user-manual/shardingsphere-proxy/yaml-config/) for the configuration method.
-3. Please run `bin/start.sh` for Linux operating system; run `bin/start.bat` for Windows operating system to start ShardingSphere-Proxy. To configure start port and document location, please refer to [Quick Start](/en/quick-start/shardingsphere-proxy-quick-start/).
+This section describes how to start ShardingSphere-Proxy by binary release packages
 
-## Using database protocol
+## Premise
 
-### Using PostgreSQL
+Start the Proxy with a binary package requires an environment with Java JRE 8 or later.
 
-1. Use any PostgreSQL terminal to connect, such as `psql -U root -h 127.0.0.1 -p 3307`.
+## Steps
 
-### Using MySQL
+1. Obtain the binary release package of ShardingSphere-Proxy
 
-1. Copy MySQL's JDBC driver to folder `ext-lib/`.
-2. Use any MySQL terminal to connect, such as `mysql -u root -h 127.0.0.1 -P 3307`.
+Obtain the binary release package of ShardingSphere-Proxy on the [download page](https://shardingsphere.apache.org/document/current/en/downloads/).
 
-### Using openGauss
+2. Configure `conf/server.yaml`
 
-1. Copy openGauss's JDBC driver whose package prefixed with `org.opengauss` to folder `ext-lib/`.
-2. Use any openGauss terminal to connect, such as `gsql -U root -h 127.0.0.1 -p 3307`.
+ShardingSphere-Proxy's operational mode is configured on `server.yaml`, and its configuration mode is the same with that of ShardingSphere-JDBC. Refer to [mode of configuration](/en/user-manual/shardingsphere-jdbc/yaml-config/mode/).
 
-## Using metadata persist repository
+Please refer to the following links for other configuration items:
+* [Permission configuration](/en/user-manual/shardingsphere-proxy/yaml-config/authentication/)
+* [Property configuration](/en/user-manual/shardingsphere-proxy/yaml-config/props/)
 
-### Using ZooKeeper
+3. Configure `conf/config-*.yaml`
 
-Integrated ZooKeeper Curator client by default.
+Modify files named with the prefix `config-` in the `conf` directory, such as `conf/config-sharding.yaml` file and configure sharding rules and read/write splitting rules. See [Confuguration Mannual](/en/user-manual/shardingsphere-proxy/yaml-config/) for configuration methods. The `*` part of the `config-*.yaml` file can be named whatever you want.
 
-### Using Etcd
+ShardingSphere-Proxy supports multiple logical data sources. Each YAML configuration file named with the prefix `config-` is a logical data source.
 
-1. Copy Etcd's client driver to folder `ext-lib/`.
+4. Introduce database driver (Optional)
 
-## Using Distributed Transaction
+If the backend is connected to a PostgreSQL database, no additional dependencies need to be introduced.
 
-Same with ShardingSphere-JDBC.
-please refer to [Distributed Transaction](/en/user-manual/shardingsphere-jdbc/special-api/transaction/) for more details.
+If the backend is connected to a MySQL database, please download [mysql-connector-java-5.1.47.jar](https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar) or [mysql-connector-java-8.0.11.jar](https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.11/mysql-connector-java-8.0.11.jar), and put it into the `ext-lib` directory.
 
-## Using user-defined algorithm
+If the backend is connected to an openGauss database, please download [opengauss-jdbc-3.0.0.jar](https://repo1.maven.org/maven2/org/opengauss/opengauss-jdbc/3.0.0/opengauss-jdbc-3.0.0.jar) and put it into the `ext-lib` directory.
 
-When developer need to use user-defined algorithm, should use the way below to configure algorithm, use sharding algorithm as example. 
+5. Introduce dependencies required by the cluster mode (Optional)
 
-1. Implement `ShardingAlgorithm` interface.
-2. Create `META-INF/services` directory in the `resources` directory.
-3. Create a new file `org.apache.shardingsphere.sharding.spi.ShardingAlgorithm` in the `META-INF/services` directory.
-4. Absolute path of the implementation class are write to the file `org.apache.shardingsphere.sharding.spi.ShardingAlgorithm`
-5. Package Java file to jar.
-6. Copy jar to ShardingSphere-Proxy's `ext-lib/` folder.
-7. Configure user-defined Java class into YAML file. Please refer to [Configuration Manual](/en/user-manual/shardingsphere-proxy/yaml-config/) for more details.
+ShardingSphere-Proxy integrates the ZooKeeper Curator client by default. ZooKeeper is used in cluster mode without introducing other dependencies.
 
-## Notices
+If the cluster mode uses Etcd, the client drivers of Etcd [jetcd-core 0.5.0](https://repo1.maven.org/maven2/io/etcd/jetcd-core/0.5.0/jetcd-core-0.5.0.jar) need to be copied into the `ext-lib` directory.
 
-1. ShardingSphere-Proxy uses `3307` port in default. Users can start the script parameter as the start port number, like `bin/start.sh 3308`.
-2. ShardingSphere-Proxy uses `conf/server.yaml` to configure the registry center, authentication information and public properties.
-3. ShardingSphere-Proxy supports multi-logic data sources, with each yaml configuration document named by `config-` prefix as a logic data source.
+6. Introduce dependencies required by distributed transactions (Optional)
+
+It is the same with ShardingSphere-JDBC.
+Please refer to [Distributed Transaction](/en/user-manual/shardingsphere-jdbc/special-api/transaction/) for more details.
+
+7. Introduce custom algorithm (Optional)
+
+If you need to use a user-defined algorithm class, you can configure custom algorithm in the following ways:
+
+    1. Implement the algorithm implementation class defined by `ShardingAlgorithm`.
+    2. Create a `META-INF/services` directory under the project `resources` directory.
+    3. Create file `org.apache.shardingsphere.sharding.spi.ShardingAlgorithm` under the directory `META-INF/services`.
+    4. Writes the fully qualified class name of the implementation class to a file `org.apache.shardingsphere.sharding.spi.ShardingAlgorithm`
+    5. Package the above Java files into jar packages.
+    6. Copy the above jar package to the `ext-lib` directory.
+    7. Configure the Java file reference of the above custom algorithm implementation class in a YAML file, see [Configuration rule](/en/user-manual/shardingsphere-proxy/yaml-config/) for more details.
+
+8. Start ShardingSphere-Proxy
+
+In Linux or macOS, run `bin/start.sh`. In Windows, run `bin/start.bat` to start ShardingSphere-Proxy. The default listening port is `3307` and the default configuration directory is the `conf` directory in Proxy. The startup script can specify the listening port and the configuration file directory by running the following command:
+
+```bash
+bin/start.sh [port] [/path/to/conf]
+```
+
+9. Connect ShardingSphere-Proxy with client
+
+Run the MySQL/PostgreSQL/openGauss client command to directly operate ShardingSphere-Proxy.
+
+Connect ShardingSphere-Proxy with MySQL client:
+```bash
+mysql -h${proxy_host} -P${proxy_port} -u${proxy_username} -p${proxy_password}
+```
+
+Connect ShardingSphere-Proxy with PostgreSQL:
+```bash 
+psql -h ${proxy_host} -p ${proxy_port} -U ${proxy_username}
+```
+
+Connect ShardingSphere-Proxy with openGauss client:
+```bash 
+gsql -r -h ${proxy_host} -p ${proxy_port} -U ${proxy_username} -W ${proxy_password}
+```
+
+## Sample
+
+Please refer to samples on ShardingSphere repository for complete configuration:
+<https://github.com/apache/shardingsphere/tree/master/examples/shardingsphere-proxy-example>
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/startup/docker.cn.md b/docs/document/content/user-manual/shardingsphere-proxy/startup/docker.cn.md
index 6119ee3f752..51ada664a48 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/startup/docker.cn.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/startup/docker.cn.md
@@ -3,14 +3,26 @@ title = "使用 Docker"
 weight = 2
 +++
 
-## 拉取官方 Docker 镜像
+## 背景信息
 
+本节主要介绍如何通过 Docker 启动 ShardingSphere-Proxy。
+
+## 注意事项
+
+使用 Docker 启动 ShardingSphere-Proxy 无须额外依赖。
+
+## 操作步骤
+
+1. 获取 Docker 镜像
+
+* 方式一(推荐):从 DockerHub 获取
 ```bash
 docker pull apache/shardingsphere-proxy
 ```
 
-## 手动构建 Docker 镜像(可选)
+* 方式二:获取 master 分支最新镜像:<https://github.com/apache/shardingsphere/pkgs/container/shardingsphere-proxy>
 
+* 方式三:自行构建镜像
 ```bash
 git clone https://github.com/apache/shardingsphere
 mvn clean install
@@ -18,61 +30,53 @@ cd shardingsphere-distribution/shardingsphere-proxy-distribution
 mvn clean package -Prelease,docker
 ```
 
-## 配置 ShardingSphere-Proxy
-
-在 `/${your_work_dir}/conf/` 创建 `server.yaml` 和 `config-xxx.yaml` 文件,进行服务器和分片规则配置。
-配置规则,请参考[配置手册](/cn/user-manual/shardingsphere-proxy/yaml-config/)。
-配置模板,请参考[配置模板](https://github.com/apache/shardingsphere/tree/master/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/resources/conf)
-
-## 运行 Docker
-
-```bash
-docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -e PORT=3308 -p13308:3308 apache/shardingsphere-proxy:latest
+如果遇到以下问题,请确保 Docker daemon 进程已经运行。
+```
+I/O exception (java.io.IOException) caught when processing request to {}->unix://localhost:80: Connection refused?
 ```
 
-**说明**
-
-* 可以自定义端口 `3308` 和 `13308`。`3308` 表示 docker 容器端口, `13308` 表示宿主机端口。
-* 必须挂载配置路径到 `/opt/shardingsphere-proxy/conf`。
+2. 配置 `conf/server.yaml` 和 `conf/config-*.yaml`
 
+可以从 Docker 容器中获取配置文件模板,拷贝到宿主机任意目录中:
 ```bash
-docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -e JVM_OPTS="-Djava.awt.headless=true" -e PORT=3308 -p13308:3308 apache/shardingsphere-proxy:latest
+docker run -d --name tmp --entrypoint=bash apache/shardingsphere-proxy
+docker cp tmp:/opt/shardingsphere-proxy/conf /host/path/to/conf
+docker rm tmp
 ```
 
-**说明**
+由于容器内的网络环境可能与宿主机的网络环境有差异,如果启动时报无法连接到数据库错误等错误,请确保 `conf/config-*.yaml` 配置文件中指定的数据库的 IP 可以被 Docker 容器内部访问到。
 
-* 可以自定义JVM相关参数到环境变量 `JVM_OPTS` 中。
+具体配置请参考 [ShardingSphere-Proxy 启动手册 - 使用二进制发布包](/cn/user-manual/shardingsphere-proxy/startup/bin/)。
 
-```bash
-docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -v /${your_work_dir}/ext-lib:/opt/shardingsphere-proxy/ext-lib -p13308:3308 apache/shardingsphere-proxy:latest
-```
+3. (可选)引入第三方依赖或自定义算法
 
-**说明**
+如果存在以下任意需求:
+* ShardingSphere-Proxy 后端使用 MySQL / openGauss 数据库;
+* 使用自定义算法;
+* 使用 Etcd 作为集群模式的注册中心。
 
-* 如需使用外部 jar 包(例如 MySQL/openGauss JDBC 驱动、自定义算法等),可将其所在目录挂载到 `/opt/shardingsphere-proxy/ext-lib`。
+请在宿主机中任意位置创建 `ext-lib` 目录,并参考 [ShardingSphere-Proxy 启动手册 - 使用二进制发布包](/cn/user-manual/shardingsphere-proxy/startup/bin/)中的对应步骤。
 
-## 访问 ShardingSphere-Proxy
+4. 启动 ShardingSphere-Proxy 容器
 
-与连接 PostgreSQL 的方式相同。
+将宿主机中的 `conf` 与 `ext-lib` 目录挂载到容器中,启动容器:
 
 ```bash
-psql -U ${your_username} -h ${your_host} -p 13308
+docker run -d \
+    -v /host/path/to/conf:/opt/shardingsphere-proxy/conf \
+    -v /host/path/to/ext-lib:/opt/shardingsphere-proxy/ext-lib \
+    -e PORT=3308 -p13308:3308 apache/shardingsphere-proxy:latest
 ```
 
-## FAQ
-
-问题1:I/O exception (java.io.IOException) caught when processing request to {}->unix://localhost:80: Connection refused?
-
-回答:在构建镜像前,请确保 docker daemon 进程已经运行。
-
-问题2:启动时报无法连接到数据库错误?
-
-回答:请确保 `/${your_work_dir}/conf/config-xxx.yaml` 配置文件中指定的 PostgreSQL 数据库的 IP 可以被 Docker 容器内部访问到。
+其中,`ext-lib` 非必需,用户可按需挂载。
+ShardingSphere-Proxy 默认端口 `3307`,可以通过环境变量 `-e PORT` 指定。
+自定义 JVM 相关参数可通过环境变量 `JVM_OPTS` 设置。
 
-问题3:如何使用后端数据库为 MySQL/openGauss 的 ShardingSphere-Proxy?
+5. 使用客户端连接 ShardingSphere-Proxy
 
-回答:将 `mysql-connector.jar` 或 `opengauss-jdbc.jar` 所在目录挂载到 `/opt/shardingsphere-proxy/ext-lib`。
+请参考 [ShardingSphere-Proxy 启动手册 - 使用二进制发布包](/cn/user-manual/shardingsphere-proxy/startup/bin/)。
 
-问题4:如何使用自定义分片算法?
+## 配置示例
 
-回答:实现对应的分片算法接口,将编译出的分片算法 jar 所在目录挂载到 `/opt/shardingsphere-proxy/ext-lib`。
+完整配置请参考 ShardingSphere 仓库中的示例:
+<https://github.com/apache/shardingsphere/tree/master/examples/shardingsphere-proxy-example>
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/startup/docker.en.md b/docs/document/content/user-manual/shardingsphere-proxy/startup/docker.en.md
index 9ff5030eca2..e3a7be7adf3 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/startup/docker.en.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/startup/docker.en.md
@@ -3,14 +3,26 @@ title = "Use Docker"
 weight = 2
 +++
 
-## Pull Official Docker Image
+## Background
 
+This chapter is an introduction about how to start ShardingSphere-Proxy via Docker
+
+## Notice
+
+Using Docker to start ShardingSphere-Proxy does not require additional package supoort.
+
+## Steps
+
+1. Acquire Docker Image
+
+* Method 1 (Recommended): Pull from DockerHub
 ```bash
 docker pull apache/shardingsphere-proxy
 ```
 
-## Build Docker Image Manually (Optional)
+* Method 2: Acquire latest master branch image master: <https://github.com/apache/shardingsphere/pkgs/container/shardingsphere-proxy>
 
+* Method 3: Build your own image
 ```bash
 git clone https://github.com/apache/shardingsphere
 mvn clean install
@@ -18,61 +30,53 @@ cd shardingsphere-distribution/shardingsphere-proxy-distribution
 mvn clean package -Prelease,docker
 ```
 
-## Configure ShardingSphere-Proxy
-
-Create `server.yaml` and `config-xxx.yaml` to configure sharding rules and server rule in `/${your_work_dir}/conf/`. 
-Please refer to [Configuration Manual](/en/user-manual/shardingsphere-proxy/yaml-config/).
-Please refer to [Example](https://github.com/apache/shardingsphere/tree/master/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/resources/conf).
-
-## Run Docker
-
-```bash
-docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -e PORT=3308 -p13308:3308 apache/shardingsphere-proxy:latest
+If the following problems emerge, please make sure Docker daemon Process is running.
+```
+I/O exception (java.io.IOException) caught when processing request to {}->unix://localhost:80: Connection refused?
 ```
 
-**Notice**
-
-* You can define port `3308` and `13308` by yourself. `3308` refers to docker port; `13308` refers to the host port.
-* You have to volume conf dir to `/opt/shardingsphere-proxy/conf`.
+2. Configure `conf/server.yaml` and `conf/config-*.yaml`
 
+Configuration file template can be attained from the Docker container and can be copied to any directory on the host:
 ```bash
-docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -e JVM_OPTS="-Djava.awt.headless=true" -e PORT=3308 -p13308:3308 apache/shardingsphere-proxy:latest
+docker run -d --name tmp --entrypoint=bash apache/shardingsphere-proxy
+docker cp tmp:/opt/shardingsphere-proxy/conf /host/path/to/conf
+docker rm tmp
 ```
 
-**Notice**
+Since the network conditions inside the container may differ from those of the host, if errors such as "cannot connect to the database" occurs, please make sure that the IP of the database specified in the `conf/config-*.yaml` configuration file can be accessed from inside the Docker container.
 
-* You can define JVM related parameters to environment variable `JVM_OPTS`.
+For details, please refer to [ShardingSphere-Proxy quick start manual - binary distribution packages](/en/user-manual/shardingsphere-proxy/startup/bin/).
 
-```bash
-docker run -d -v /${your_work_dir}/conf:/opt/shardingsphere-proxy/conf -v /${your_work_dir}/ext-lib:/opt/shardingsphere-proxy/ext-lib -p13308:3308 apache/shardingsphere-proxy:latest
-```
+3. (Optional) Introduce third-party dependencies or customized algorithms
 
-**Notice**
+If you have any of the following requirements:
+* ShardingSphere-Proxy Backend use MySQL / openGauss Database;
+* Implement customized algorithms;
+* Use Etcd as Registry Center in cluster mode.
 
-* If you need to import external jar packages (such as MySQL/openGauss JDBC driver, custom algorithm, etc.), you may bind mount a volume to `/opt/shardingsphere-proxy/ext-lib`.
+Please create `ext-lib` directory anywhere inside the host and refer to the steps in [ShardingSphere-Proxy quick start manual - binary distribution packages](/en/user-manual/shardingsphere-proxy/startup/bin/).
 
-## Access ShardingSphere-Proxy
+4. Start ShardingSphere-Proxy container
 
-It is in the same way as connecting to PostgreSQL.
+Mount the `conf` and `ext-lib` directories from the host to the container. Start the container:
 
 ```bash
-psql -U ${your_username} -h ${your_host} -p 13308
+docker run -d \
+    -v /host/path/to/conf:/opt/shardingsphere-proxy/conf \
+    -v /host/path/to/ext-lib:/opt/shardingsphere-proxy/ext-lib \
+    -e PORT=3308 -p13308:3308 apache/shardingsphere-proxy:latest
 ```
 
-## FAQ
-
-Question 1: there is I/O exception (`java.io.IOException`) when process request to `{}->unix://localhost:80: Connection` is refused.
-
-Answer: before building image, please make sure docker daemon thread is running.
-
-Question 2: there is error report of being unable to connect to the database.
-
-Answer: please make sure the designated PostgreSQL's IP in `/${your_work_dir}/conf/config-xxx.yaml` configuration is accessible to Docker container.
+`ext-lib` is not necessary during the process. Users can mount it at will.
+ShardingSphere-Proxy default portal `3307` can be designated according to environment variable `-e PORT`
+Customized JVM related parameters can be set according to environment variable `JVM_OPTS`
 
-Question 3:How to start ShardingSphere-Proxy whose backend databases are MySQL or openGauss.
+5. Use Client to connect to ShardingSphere-Proxy
 
-Answer:Mount the directory where `mysql-connector.jar` or `opengauss-jdbc.jar` stores to `/opt/shardingsphere-proxy/ext-lib`.
+Please refer to [ShardingSphere-Proxy quick start manual - binary distribution packages](/en/user-manual/shardingsphere-proxy/startup/bin/).
 
-Question 4:How to import user-defined sharding strategy?
+## Configuration Example
 
-Answer: Volume the directory where `shardingsphere-strategy.jar` stores to `/opt/shardingsphere-proxy/ext-lib`.
+For full configuration, please refer to the examples given in ShardingSphere library:
+<https://github.com/apache/shardingsphere/tree/master/examples/shardingsphere-proxy-example>
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.cn.md b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.cn.md
index 29988ff472e..798ce3547f1 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.cn.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.cn.md
@@ -4,11 +4,11 @@ weight = 2
 chapter = true
 +++
 
-## 简介
+## 背景信息
 
-Apache ShardingSphere 提供属性配置的方式配置系统级配置。
+Apache ShardingSphere 提供属性配置的方式配置系统级配置。本节介绍 `server.yaml` 中的配置项。
 
-## 配置项说明
+## 参数解释
 
 | *名称*                                | *数据类型*  | *说明*                                                                                                                                   | *默认值*    | *动态生效* |             
 |-------------------------------------|---------|----------------------------------------------------------------------------------------------------------------------------------------|----------|--------| 
@@ -21,6 +21,7 @@ Apache ShardingSphere 提供属性配置的方式配置系统级配置。
 | proxy-opentracing-enabled (?)       | boolean | 是否允许在 ShardingSphere-Proxy 中使用 OpenTracing。                                                                                            | false    | 是      |
 | proxy-hint-enabled (?)              | boolean | 是否允许在 ShardingSphere-Proxy 中使用 Hint。使用 Hint 会将 Proxy 的线程处理模型由 IO 多路复用变更为每个请求一个独立的线程,会降低 Proxy 的吞吐量。                                    | false    | 是      |
 | proxy-backend-query-fetch-size (?)  | int     | Proxy 后端与数据库交互的每次获取数据行数(使用游标的情况下)。数值增大可能会增加 ShardingSphere Proxy 的内存使用。默认值为 -1,代表设置为 JDBC 驱动的最小值。                                      | -1       | 是      |
+| check-duplicate-table-enabled (?)   | boolean | 在程序启动和更新时,是否检查重复表。                                                                                                                     | false    | 是      |
 | proxy-frontend-executor-size (?)    | int     | Proxy 前端 Netty 线程池线程数量,默认值 0 代表使用 Netty 默认值。                                                                                           | 0        | 否      |
 | proxy-backend-executor-suitable (?) | String  | 可选选项:OLAP、OLTP。OLTP 选项可能会减少向客户端写入数据包的时间开销,但如果客户端连接数超过 `proxy-frontend-executor-size`,尤其是执行慢 SQL 时,它可能会增加 SQL 执行的延迟甚至阻塞其他客户端的连接。        | OLAP     | 是      |
 | proxy-frontend-max-connections (?)  | int     | 允许连接 Proxy 的最大客户端数量,默认值 0 代表不限制。                                                                                                       | 0        | 是      |
@@ -32,3 +33,7 @@ Apache ShardingSphere 提供属性配置的方式配置系统级配置。
 
 属性配置可以通过 [DistSQL#RAL](/cn/user-manual/shardingsphere-proxy/distsql/syntax/ral/) 修改。
 支持动态修改的属性可以立即生效,不支持动态修改的属性需要重启后生效。
+
+## 配置示例
+
+完整配置示例请参考 ShardingSphere 仓库内的 `server.yaml`:<https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/resources/conf/server.yaml#L71-L93>
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.en.md b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.en.md
index 0030728c5e6..ebb36e79186 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.en.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.en.md
@@ -4,31 +4,36 @@ weight = 2
 chapter = true
 +++
 
-## Introduction
+## Background
 
-Apache ShardingSphere provides the way of property configuration to configure system level configuration.
+Apache ShardingSphere can configure system-level configuration through property configuration. This section describes the configuration items in `server.yaml`.
 
-## Configuration Item Explanation
+## Parameters
 
-| *Name*                              | *Data Type* | *Description*                                                                                                                                                                                                                                                                                                             | *Default Value* | *Dynamic Update* | 
-|-------------------------------------|-------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|------------------| 
-| sql-show (?)                        | boolean     | Whether show SQL or not in log. <br /> Print SQL details can help developers debug easier. The log details include: logic SQL, actual SQL and SQL parse result. <br /> Enable this property will log into log topic `ShardingSphere-SQL`, log level is INFO.                                                              | false           | true             |
-| sql-simple (?)                      | boolean     | Whether show SQL details in simple style.                                                                                                                                                                                                                                                                                 | false           | true             |
-| kernel-executor-size (?)            | int         | The max thread size of worker group to execute SQL. One ShardingSphereDataSource will use a independent thread pool, it does not share thread pool even different data source in same JVM.                                                                                                                                | infinite        | false            |
-| max-connections-size-per-query (?)  | int         | Max opened connection size for each query.                                                                                                                                                                                                                                                                                | 1               | true             |
-| check-table-metadata-enabled (?)    | boolean     | Whether validate table meta data consistency when application startup or updated.                                                                                                                                                                                                                                         | false           | true             |
-| proxy-frontend-flush-threshold (?)  | int         | Flush threshold for every records from databases for ShardingSphere-Proxy.                                                                                                                                                                                                                                                | 128             | true             |
-| proxy-opentracing-enabled (?)       | boolean     | Whether enable opentracing for ShardingSphere-Proxy.                                                                                                                                                                                                                                                                      | false           | true             |
-| proxy-hint-enabled (?)              | boolean     | Whether enable hint for ShardingSphere-Proxy. Using Hint will switch proxy thread mode from IO multiplexing to per connection per thread, which will reduce system throughput.                                                                                                                                            | false           | true             |
-| proxy-backend-query-fetch-size (?)  | int         | Proxy backend query fetch size. A larger value may increase the memory usage of ShardingSphere Proxy. The default value is -1, which means set the minimum value for different JDBC drivers.                                                                                                                              | -1              | true             |
-| proxy-frontend-executor-size (?)    | int         | Proxy frontend Netty executor size. The default value is 0, which means let Netty decide.                                                                                                                                                                                                                                 | 0               | false            |
-| proxy-backend-executor-suitable (?) | String      | Available options of proxy backend executor suitable: OLAP(default), OLTP. The OLTP option may reduce time cost of writing packets to client, but it may increase the latency of SQL execution and block other clients if client connections are more than `proxy-frontend-executor-size`, especially executing slow SQL. | OLAP            | true             |
-| proxy-frontend-max-connections (?)  | int         | The maximum permitted number of client connections to Proxy. The default value is 0 and less than or equal to 0 means no limitation.                                                                                                                                                                                      | 0               | true             |
-| sql-federation-enabled (?)          | boolean     | Whether enable sql federation.                                                                                                                                                                                                                                                                                            | false           | true             |
-| show-process-list-enabled (?)       | boolean     | Whether enable show process list, and it only take effect when mode is Cluster. This function is similar as MySQL show processlist. It just apply on DDL and DML statements currently.                                                                                                                                    | false           | true             |
-| proxy-mysql-default-version (?)     | String      | Proxy specifies MySQL server version. The default value is 5.7.22.                                                                                                                                                                                                                                                        | 5.7.22          | false            |
-| proxy-default-port (?)              | String      | Proxy specifies the default port through the configuration file.                                                                                                                                                                                                                                                          | 3307            | false            |
-| proxy-netty-backlog (?)             | int         | Proxy set netty back_log parameter via configuration file.                                                                                                                                                                                                                                                                | 1024            | false            |
+| *Name*                                | *Data Type*  | *Description*                                                                                                                                   | *Default*    | *Dynamic Update* |             
+|-------------------------------------|---------|----------------------------------------------------------------------------------------------------------------------------------------|----------|--------| 
+| sql-show (?)                        | boolean | Whether to print SQL in logs. <br /> Printing SQL can help developers quickly locate system problems. Logs contain the following contents: logical SQL, authentic SQL and SQL parsing result. <br /> If configuration is enabled,logs will use Topic `ShardingSphere-SQL`,and log level is INFO。 | false    | True      |
+| sql-simple (?)                      | boolean | Whether to print simple SQL in logs.                                                                                                                    | false    | True      |
+| kernel-executor-size (?)            | int     | Set the size of the thread pool for task processing. Each ShardingSphereDataSource uses an independent thread pool,and different data sources on the same JVM do not share thread pools.                                                            | infinite | False      |
+| max-connections-size-per-query (?)  | int     | The maximum number of connections that a query request can use in each database instance.                                                                                                             | 1        | True      |
+| check-table-metadata-enabled (?)    | boolean | Whether shard metadata is checked for structural consistency when the program is started and updated.                                                                                                             | false    | True      |
+| proxy-frontend-flush-threshold (?)  | int     | Set the I/O refresh threshold for the number of transmitted data items in ShardingSphere-Proxy.                                                                                             | 128      | True      |
+| proxy-opentracing-enabled (?)       | boolean | Whether OpenTracing is allowed in ShardingSphere-Proxy.                                                                                            | false    | True      |
+| proxy-hint-enabled (?)              | boolean | Whether Hint is allowed in ShardingSphere-Proxy. Using Hint changes the Proxy's threading model from IO multiplexing to a separate thread per request, reducing Proxy's throughput.                                    | false    | True      |
+| proxy-backend-query-fetch-size (?)  | int     | The number of rows of data obtained when the backend Proxy interacts with databases (using a cursor). A larger number may increase the occupied memory of ShardingSphere-Proxy. The default value of -1 indicates the minimum value for JDBC driver.                                      | -1       | True      |
+| check-duplicate-table-enabled (?)   | boolean | When the program is started and updated, whether to check duplicate tables.                                                                                                                     | false    | True      |
+| proxy-frontend-executor-size (?)    | int     | The number of threads in the Netty thread pool of front-end Proxy.                                                                                           | 0        | False      |
+| proxy-backend-executor-suitable (?) | String  | Options: OLAP and OLTP. The OLTP option may reduce the time overhead when writing packets to the client,but if the number of client connections exceeds `proxy-frontend-executor-size`,especially with slow SQL, it can cause a longer delay to SQL execution and even block connections to other clients.        | OLAP     | True      |
+| proxy-frontend-max-connections (?)  | int     | The maximum number of clients that can be connected to Proxy. The default value of 0 indicates that there's no limit.                                                                                                      | 0        | True      |
+| sql-federation-enabled (?)          | boolean | Whether to enable the federation query.                                                                                                                    | false    | True      |
+| show-process-list-enabled (?)       | boolean | Whether to enable the processlist function only in Cluster mode。Its function is similar to that of MySQL show processlist. Currently, it only applies to DDL and DML statements.                                               | false    | True      |
+| proxy-mysql-default-version (?)     | String  | Proxy specifies the MySQL version through configuration files, and the default verison is 5.7.22.                                                                                               | 5.7.22   | False      |
+| proxy-default-port (?)              | String  | Proxy specifies the default window through configuration files.                                                                                                                 | 3307     | False      |
+| proxy-netty-backlog (?)             | int     | Proxy specifies the default netty back_log parameter through configuration files.                                                                                                     | 1024     | False      |
 
-Properties can be updated by [DistSQL#RAL](/en/user-manual/shardingsphere-proxy/distsql/syntax/ral/).
-Dynamic update can take effect immediately, static update can take effect after restarted.
+Property configuration can be modified according to [DistSQL#RAL](/en/user-manual/shardingsphere-proxy/distsql/syntax/ral/).
+Properties that support dynamic change can take effect immediately. Properties that do not support dynamic change take effect after a restart.
+
+## Sample
+
+For a complete sample, please refer to `server.yaml` in ShardingSphere's repository:<https://github.com/apache/shardingsphere/blob/aac0d3026e00575114701be603ec189a02a45747/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/resources/conf/server.yaml#L71-L93>
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/rules.cn.md b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/rules.cn.md
index 5333c8f38a1..b1bf53ae32e 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/rules.cn.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/rules.cn.md
@@ -3,4 +3,16 @@ title = "规则配置"
 weight = 3
 +++
 
-ShardingSphere-Proxy 的规则配置与 ShardingSphere-JDBC 一致,请参考 [ShardingSphere-JDBC 规则配置](/cn/user-manual/shardingsphere-jdbc/yaml-config/rules/)。
+## 背景信息
+
+本节介绍如何进行 ShardingSphere-Proxy 的规则配置。
+
+## 参数解释
+
+ShardingSphere-Proxy 的规则配置与 ShardingSphere-JDBC 一致,具体规则请参考 [ShardingSphere-JDBC 规则配置](/cn/user-manual/shardingsphere-jdbc/yaml-config/rules/)。
+
+## 注意事项
+
+与 ShardingSphere-JDBC 不同的是,以下规则需要配置在 ShardingSphere-Proxy 的 `server.yaml` 中:
+* [SQL 解析](/cn/user-manual/shardingsphere-jdbc/yaml-config/rules/sql-parser/)
+* [分布式事务](/cn/user-manual/shardingsphere-jdbc/yaml-config/rules/transaction/)
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/rules.en.md b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/rules.en.md
index 3513eb17684..67c58a411b5 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/rules.en.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/rules.en.md
@@ -3,4 +3,16 @@ title = "Rules"
 weight = 3
 +++
 
-The rules of ShardingSphere-Proxy are the same as rules of ShardingSphere-JDBC. Please refer to [rules of ShardingSphere-JDBC](/en/user-manual/shardingsphere-jdbc/yaml-config/rules/)。
+## Background
+
+This section describes how to configure the rules for ShardingSphere-Proxy.
+
+## Parameters Explained
+
+Rules configuration of ShardingSphere-Proxy is the same as that of ShardingSphere-JDBC. For details, please refer to [ShardingSphere-JDBC Rules Configuration](/en/user-manual/shardingsphere-jdbc/yaml-config/rules/).
+
+## Notice
+
+Unlike ShardingSphere-JDBC, the following rules need to be configured in `server.yaml` of ShardingSphere-Proxy:
+* [SQL Parsing](/en/user-manual/shardingsphere-jdbc/yaml-config/rules/sql-parser/)
+* [Distributed Operations](/en/user-manual/shardingsphere-jdbc/yaml-config/rules/transaction/)