Files
invest-mind-store/packages/design-document/机生文档/PostgreSQL-Mac使用手册.md
2026-02-11 16:01:42 +08:00

1004 lines
21 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# PostgreSQL Mac 端使用手册
## 目录
1. [安装 PostgreSQL](#一安装-postgresql)
2. [连接数据库](#二连接数据库)
3. [查看所有数据库](#三查看所有数据库)
4. [创建数据库](#四创建数据库)
5. [切换数据库](#五切换数据库)
6. [查看表](#六查看表)
7. [创建表](#七创建表)
8. [常用操作命令](#八常用操作命令)
---
## 一、安装 PostgreSQL
### 1.1 使用 Homebrew 安装(推荐)
```bash
# 安装 PostgreSQL推荐使用最新版本
brew install postgresql@18
# 或者安装其他版本
brew install postgresql@18
brew install postgresql@18
```
### 1.2 启动 PostgreSQL 服务
```bash
# 启动服务(开机自启)
brew services start postgresql@18
# 停止服务
brew services stop postgresql@18
# 重启服务
brew services restart postgresql@18
# 查看服务状态
brew services list
```
### 1.3 验证安装
```bash
# 查看版本
psql --version
# 查看 PostgreSQL 是否运行
pg_isready
```
---
## 二、连接数据库
### 2.1 使用 psql 命令行连接
```bash
# 方式1连接到默认数据库使用当前系统用户名
psql
# 方式2连接到指定数据库
psql -d postgres
# 方式3指定用户名和数据库
psql -U postgres -d postgres
# 方式4指定主机、端口、用户名和数据库
psql -h localhost -p 5432 -U postgres -d postgres
# 方式5连接时输入密码推荐用于脚本
PGPASSWORD=your_password psql -U postgres -d postgres
```
### 2.2 连接后的提示符
连接成功后,你会看到类似这样的提示符:
```
postgres=#
```
- `postgres` 是当前连接的数据库名
- `#` 表示你是超级用户(`$` 表示普通用户)
### 2.3 退出连接
```sql
-- 方式1使用命令
\q
-- 方式2使用快捷键
Ctrl + D
```
---
## 三、查看所有数据库
### 3.1 在 psql 中查看
```sql
-- 方式1使用命令推荐
\l
-- 方式2使用详细模式
\l+
-- 方式3使用 SQL 查询
SELECT datname FROM pg_database;
-- 方式4查看数据库详细信息
SELECT
datname AS "数据库名",
pg_size_pretty(pg_database_size(datname)) AS "大小",
datcollate AS "排序规则",
datctype AS "字符集"
FROM pg_database
ORDER BY datname;
```
### 3.2 在命令行中查看(不进入 psql
```bash
# 列出所有数据库
psql -l
# 或者
psql -U postgres -l
```
---
## 四、创建数据库
### 4.1 基本语法
```sql
CREATE DATABASE database_name;
```
### 4.2 创建数据库示例
```sql
-- 示例1创建简单数据库
CREATE DATABASE myapp;
-- 示例2创建数据库指定编码和排序规则
CREATE DATABASE myapp
WITH ENCODING 'UTF8'
LC_COLLATE='en_US.UTF-8'
LC_CTYPE='en_US.UTF-8';
-- 示例3创建数据库指定所有者
CREATE DATABASE myapp OWNER username;
-- 示例4创建数据库指定模板
CREATE DATABASE myapp TEMPLATE template0;
```
### 4.3 创建数据库的完整选项
```sql
CREATE DATABASE database_name
[ [ WITH ] [ OWNER [=] user_name ]
[ TEMPLATE [=] template ]
[ ENCODING [=] encoding ]
[ LC_COLLATE [=] lc_collate ]
[ LC_CTYPE [=] lc_ctype ]
[ TABLESPACE [=] tablespace_name ]
[ ALLOW_CONNECTIONS [=] allowconn ]
[ CONNECTION LIMIT [=] connlimit ]
[ IS_TEMPLATE [=] istemplate ] ];
```
### 4.4 常用参数说明
| 参数 | 说明 | 示例 |
|------|------|------|
| `OWNER` | 数据库所有者 | `OWNER myuser` |
| `TEMPLATE` | 模板数据库 | `TEMPLATE template0` |
| `ENCODING` | 字符编码 | `ENCODING 'UTF8'` |
| `LC_COLLATE` | 排序规则 | `LC_COLLATE='en_US.UTF-8'` |
| `LC_CTYPE` | 字符分类 | `LC_CTYPE='en_US.UTF-8'` |
### 4.5 创建数据库的完整示例
```sql
-- 创建生产环境数据库
CREATE DATABASE vest_mind_prod
WITH
OWNER = postgres
ENCODING = 'UTF8'
LC_COLLATE = 'en_US.UTF-8'
LC_CTYPE = 'en_US.UTF-8'
TEMPLATE = template0
CONNECTION LIMIT = 100;
-- 创建开发环境数据库
CREATE DATABASE vest_mind_dev
WITH
OWNER = postgres
ENCODING = 'UTF8'
TEMPLATE = template0;
```
### 4.6 验证数据库是否创建成功
```sql
-- 方式1查看所有数据库推荐
\l
-- 方式2使用 SQL 查询
SELECT datname FROM pg_database WHERE datname = 'database_name';
-- 方式3查看数据库详细信息
SELECT
datname AS "数据库名",
pg_size_pretty(pg_database_size(datname)) AS "大小",
datcollate AS "排序规则",
datctype AS "字符集"
FROM pg_database
WHERE datname = 'database_name';
```
### 4.7 创建数据库的注意事项
1. **数据库名称规则:**
- 必须以字母开头
- 只能包含字母、数字、下划线和连字符
- 不能使用 PostgreSQL 保留关键字
- 建议使用小写字母和下划线
2. **权限要求:**
- 需要 `CREATEDB` 权限
- 超级用户(如 `postgres`)可以创建任何数据库
3. **模板数据库:**
- `template0`:干净的模板,推荐使用
- `template1`:默认模板,可以修改
- 自定义模板:基于现有数据库创建
4. **字符编码:**
- 推荐使用 `UTF8` 编码
- 确保 `LC_COLLATE``LC_CTYPE` 设置正确
### 4.8 创建数据库后立即使用
```sql
-- 创建数据库
CREATE DATABASE myapp;
-- 切换到新创建的数据库
\c myapp
-- 或者退出后重新连接
\q
psql -d myapp
```
### 4.9 删除数据库
```sql
-- 删除数据库(注意:需要先断开所有连接)
DROP DATABASE database_name;
-- 删除数据库(如果存在)
DROP DATABASE IF EXISTS database_name;
-- 强制删除数据库(终止所有连接后删除)
-- 首先终止所有连接
SELECT pg_terminate_backend(pid)
FROM pg_stat_activity
WHERE datname = 'database_name' AND pid <> pg_backend_pid();
-- 然后删除
DROP DATABASE database_name;
```
### 4.10 重命名数据库
```sql
-- 重命名数据库
ALTER DATABASE old_name RENAME TO new_name;
```
---
## 五、切换数据库
### 5.1 在 psql 中切换
```sql
-- 使用 \c 命令切换数据库
\c database_name
-- 切换到指定数据库并显示连接信息
\c database_name username
-- 查看当前连接的数据库
SELECT current_database();
-- 或者使用命令
\conninfo
```
### 5.2 退出后重新连接
```bash
# 退出当前连接
\q
# 重新连接到指定数据库
psql -d database_name
```
---
## 六、查看表
### 6.1 查看当前数据库中的所有表
```sql
-- 方式1使用命令推荐
\dt
-- 方式2查看详细信息包括大小、描述等
\dt+
-- 方式3使用 SQL 查询
SELECT
schemaname AS "模式",
tablename AS "表名"
FROM pg_tables
WHERE schemaname = 'public'
ORDER BY tablename;
-- 方式4查看所有表包括系统表
\dt *.*
```
### 6.2 查看表结构
```sql
-- 方式1查看表结构推荐
\d table_name
-- 方式2查看详细信息包括索引、约束等
\d+ table_name
-- 方式3只查看列信息
\d table_name
-- 方式4使用 SQL 查询列信息
SELECT
column_name AS "列名",
data_type AS "数据类型",
character_maximum_length AS "最大长度",
is_nullable AS "可空",
column_default AS "默认值"
FROM information_schema.columns
WHERE table_name = 'table_name'
ORDER BY ordinal_position;
```
### 6.3 查看表的索引
```sql
-- 查看表的所有索引
\d table_name
-- 或者使用 SQL
SELECT
indexname AS "索引名",
indexdef AS "索引定义"
FROM pg_indexes
WHERE tablename = 'table_name';
```
### 6.4 查看表的约束
```sql
-- 查看表的所有约束
\d table_name
-- 或者使用 SQL
SELECT
conname AS "约束名",
contype AS "约束类型",
pg_get_constraintdef(oid) AS "约束定义"
FROM pg_constraint
WHERE conrelid = 'table_name'::regclass;
```
---
## 七、创建表
### 7.1 基本语法
```sql
CREATE TABLE table_name (
column1_name data_type [constraints],
column2_name data_type [constraints],
...
);
```
### 7.2 创建表示例
```sql
-- 示例1创建用户表
CREATE TABLE users (
user_id BIGSERIAL PRIMARY KEY,
username VARCHAR(100) NOT NULL UNIQUE,
email VARCHAR(100) UNIQUE,
password_hash VARCHAR(255) NOT NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-- 示例2创建订单表带外键
CREATE TABLE orders (
order_id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
total_amount DECIMAL(10, 2) NOT NULL,
status VARCHAR(20) NOT NULL DEFAULT 'pending',
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE
);
-- 示例3创建带检查约束的表
CREATE TABLE products (
product_id BIGSERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
price DECIMAL(10, 2) NOT NULL CHECK (price > 0),
stock INTEGER NOT NULL DEFAULT 0 CHECK (stock >= 0),
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
```
### 7.3 常用数据类型
| 数据类型 | 说明 | 示例 |
|---------|------|------|
| `BIGSERIAL` | 自增整数64位 | `user_id BIGSERIAL PRIMARY KEY` |
| `BIGINT` | 大整数64位 | `user_id BIGINT` |
| `INTEGER` | 整数32位 | `age INTEGER` |
| `VARCHAR(n)` | 可变长度字符串 | `username VARCHAR(100)` |
| `TEXT` | 长文本 | `description TEXT` |
| `DECIMAL(p,s)` | 精确小数 | `price DECIMAL(10, 2)` |
| `BOOLEAN` | 布尔值 | `is_active BOOLEAN` |
| `DATE` | 日期 | `birthday DATE` |
| `TIMESTAMP` | 时间戳 | `created_at TIMESTAMP` |
| `JSONB` | JSON 二进制 | `metadata JSONB` |
### 7.4 常用约束
```sql
-- PRIMARY KEY主键
user_id BIGSERIAL PRIMARY KEY
-- NOT NULL非空
username VARCHAR(100) NOT NULL
-- UNIQUE唯一
email VARCHAR(100) UNIQUE
-- DEFAULT默认值
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
-- CHECK检查约束
price DECIMAL(10, 2) CHECK (price > 0)
-- FOREIGN KEY外键
user_id BIGINT REFERENCES users(user_id)
-- 组合约束
CONSTRAINT pk_user PRIMARY KEY (user_id),
CONSTRAINT uk_email UNIQUE (email),
CONSTRAINT fk_order_user FOREIGN KEY (user_id) REFERENCES users(user_id)
```
### 7.5 验证表是否创建成功
```sql
-- 查看所有表
\dt
-- 查看表结构
\d table_name
-- 查看表是否存在
SELECT EXISTS (
SELECT FROM information_schema.tables
WHERE table_name = 'table_name'
);
```
---
## 八、常用操作命令
### 8.1 数据库操作
```sql
-- 创建数据库
CREATE DATABASE database_name;
-- 创建数据库(指定编码)
CREATE DATABASE database_name
WITH ENCODING 'UTF8'
LC_COLLATE='en_US.UTF-8'
LC_CTYPE='en_US.UTF-8';
-- 删除数据库
DROP DATABASE database_name;
-- 重命名数据库
ALTER DATABASE old_name RENAME TO new_name;
```
### 8.2 表操作
```sql
-- 删除表
DROP TABLE table_name;
-- 删除表(如果存在)
DROP TABLE IF EXISTS table_name;
-- 清空表数据(保留表结构)
TRUNCATE TABLE table_name;
-- 重命名表
ALTER TABLE old_name RENAME TO new_name;
-- 添加列
ALTER TABLE table_name ADD COLUMN column_name data_type;
-- 删除列
ALTER TABLE table_name DROP COLUMN column_name;
-- 修改列类型
ALTER TABLE table_name ALTER COLUMN column_name TYPE new_type;
-- 添加约束
ALTER TABLE table_name ADD CONSTRAINT constraint_name CHECK (condition);
```
### 8.3 数据操作CRUD
```sql
-- 插入数据
INSERT INTO users (username, email, password_hash)
VALUES ('john', 'john@example.com', 'hashed_password');
-- 查询数据
SELECT * FROM users;
SELECT username, email FROM users WHERE user_id = 1;
-- 更新数据
UPDATE users SET email = 'newemail@example.com' WHERE user_id = 1;
-- 删除数据
DELETE FROM users WHERE user_id = 1;
```
### 8.4 psql 常用命令
```sql
-- 帮助命令
\? -- 查看所有命令
\h -- SQL 命令帮助
\h CREATE TABLE -- 查看特定 SQL 命令帮助
-- 数据库相关
\l -- 列出所有数据库
\c dbname -- 连接到数据库
\conninfo -- 显示当前连接信息
-- 表相关
\dt -- 列出所有表
\d table -- 查看表结构
\d+ table -- 查看表详细信息
-- 其他
\q -- 退出
\du -- 列出所有用户
\dn -- 列出所有模式schema
\df -- 列出所有函数
\timing -- 开启/关闭执行时间显示
\x -- 开启/关闭扩展显示(用于宽表)
```
### 8.5 查看执行计划
```sql
-- 查看查询执行计划
EXPLAIN SELECT * FROM users WHERE user_id = 1;
-- 查看详细执行计划(包含实际执行时间)
EXPLAIN ANALYZE SELECT * FROM users WHERE user_id = 1;
```
---
## 九、实用技巧
### 9.1 设置用户名和密码
#### 9.1.1 为现有用户设置密码
```sql
-- 为 postgres 用户设置密码
ALTER USER postgres WITH PASSWORD 'your_password';
-- 为当前用户设置密码
ALTER USER current_user WITH PASSWORD 'your_password';
-- 查看当前用户
SELECT current_user;
```
#### 9.1.2 创建新用户并设置密码
```sql
-- 创建新用户并设置密码
CREATE USER username WITH PASSWORD 'your_password';
-- 创建用户并指定更多选项
CREATE USER username
WITH PASSWORD 'your_password'
CREATEDB -- 允许创建数据库
CREATEROLE; -- 允许创建角色
-- 查看所有用户
\du
```
#### 9.1.3 为用户授予数据库权限
```sql
-- 授予数据库的所有权限
GRANT ALL PRIVILEGES ON DATABASE database_name TO username;
-- 授予特定权限
GRANT CONNECT ON DATABASE database_name TO username;
GRANT CREATE ON DATABASE database_name TO username;
-- 授予表的权限(需要先连接到数据库)
\c database_name
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO username;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO username;
-- 授予未来创建的表和序列的权限
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT ALL ON TABLES TO username;
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT ALL ON SEQUENCES TO username;
```
#### 9.1.4 完整示例:为新数据库设置用户和密码
```sql
-- 1. 连接到 PostgreSQL使用超级用户
psql -d postgres
-- 2. 创建新用户
CREATE USER vest_mind_user WITH PASSWORD 'your_secure_password';
-- 3. 授予数据库权限
GRANT ALL PRIVILEGES ON DATABASE vest_mind TO vest_mind_user;
-- 4. 切换到目标数据库
\c vest_mind
-- 5. 授予 schema 权限
GRANT ALL ON SCHEMA public TO vest_mind_user;
-- 6. 授予现有表的权限
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO vest_mind_user;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO vest_mind_user;
-- 7. 授予未来创建的表和序列的权限
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT ALL ON TABLES TO vest_mind_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA public
GRANT ALL ON SEQUENCES TO vest_mind_user;
-- 8. 验证权限
\du vest_mind_user
```
#### 9.1.5 使用新用户连接数据库
```bash
# 方式1使用密码连接
psql -U vest_mind_user -d vest_mind
# 方式2使用环境变量用于脚本
PGPASSWORD=your_secure_password psql -U vest_mind_user -d vest_mind
# 方式3在连接字符串中指定
psql "postgresql://vest_mind_user:your_secure_password@localhost:5432/vest_mind"
```
#### 9.1.6 修改用户密码
```sql
-- 修改用户密码
ALTER USER username WITH PASSWORD 'new_password';
-- 强制用户下次登录时修改密码
ALTER USER username WITH PASSWORD 'new_password' VALID UNTIL '2025-12-31';
```
#### 9.1.7 删除用户
```sql
-- 删除用户(如果用户拥有对象,需要先转移所有权)
DROP USER username;
-- 或者先转移所有权再删除
REASSIGN OWNED BY username TO postgres;
DROP OWNED BY username;
DROP USER username;
```
#### 9.1.8 配置 PostgreSQL 认证方式(可选)
如果需要强制使用密码认证,可以编辑 PostgreSQL 配置文件:
```bash
# 找到配置文件位置Homebrew 安装)
# 通常在:/opt/homebrew/var/postgresql@18/pg_hba.conf
# 或:/usr/local/var/postgresql@18/pg_hba.conf
# 编辑配置文件
nano /opt/homebrew/var/postgresql@18/pg_hba.conf
```
`pg_hba.conf` 文件中,找到类似这样的行:
```
# TYPE DATABASE USER ADDRESS METHOD
local all all trust
host all all 127.0.0.1/32 trust
```
修改为需要密码认证:
```
# TYPE DATABASE USER ADDRESS METHOD
local all all md5
host all all 127.0.0.1/32 md5
```
然后重启 PostgreSQL 服务:
```bash
brew services restart postgresql@18
```
**认证方式说明:**
- `trust`:无需密码(当前默认)
- `md5`:使用 MD5 加密的密码
- `password`:使用明文密码(不推荐)
- `scram-sha-256`:使用 SCRAM-SHA-256 加密推荐PostgreSQL 10+
### 9.2 导出和导入数据
```bash
# 导出数据库
pg_dump -U postgres -d database_name > backup.sql
# 导入数据库
psql -U postgres -d database_name < backup.sql
# 导出表
pg_dump -U postgres -d database_name -t table_name > table_backup.sql
# 导出为 CSV
psql -U postgres -d database_name -c "COPY table_name TO STDOUT WITH CSV HEADER" > data.csv
```
### 9.3 查看数据库大小
```sql
-- 查看当前数据库大小
SELECT pg_size_pretty(pg_database_size(current_database()));
-- 查看所有数据库大小
SELECT
datname AS "数据库名",
pg_size_pretty(pg_database_size(datname)) AS "大小"
FROM pg_database
ORDER BY pg_database_size(datname) DESC;
-- 查看表大小
SELECT
schemaname AS "模式",
tablename AS "表名",
pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename)) AS "大小"
FROM pg_tables
WHERE schemaname = 'public'
ORDER BY pg_total_relation_size(schemaname||'.'||tablename) DESC;
```
### 9.4 查看连接信息
```sql
-- 查看当前连接
\conninfo
-- 查看所有活动连接
SELECT
pid,
usename,
datname,
client_addr,
state,
query
FROM pg_stat_activity
WHERE datname IS NOT NULL;
```
### 9.5 环境变量配置(可选)
`~/.zshrc``~/.bash_profile` 中添加:
```bash
# PostgreSQL 路径配置
export PATH="/opt/homebrew/opt/postgresql@18/bin:$PATH"
export LDFLAGS="-L/opt/homebrew/opt/postgresql@18/lib"
export CPPFLAGS="-I/opt/homebrew/opt/postgresql@18/include"
# PostgreSQL 连接别名(可选)
alias pgstart='brew services start postgresql@18'
alias pgstop='brew services stop postgresql@18'
alias pgrestart='brew services restart postgresql@18'
alias pgstatus='brew services list | grep postgresql'
```
---
## 十、快速参考
### 10.1 常用连接方式
```bash
# 最简单的方式
psql
# 指定数据库
psql -d mydb
# 指定用户和数据库
psql -U postgres -d mydb
# 带密码连接(用于脚本)
PGPASSWORD=password psql -U postgres -d mydb
```
### 10.2 常用 SQL 命令速查
```sql
-- 数据库
CREATE DATABASE dbname;
DROP DATABASE dbname;
\l
-- 表
CREATE TABLE tname (...);
DROP TABLE tname;
\dt
\d tname
-- 数据
INSERT INTO tname VALUES (...);
SELECT * FROM tname;
UPDATE tname SET ... WHERE ...;
DELETE FROM tname WHERE ...;
-- 用户
CREATE USER username WITH PASSWORD 'password';
\du
```
### 10.3 故障排查
```bash
# 检查 PostgreSQL 是否运行
pg_isready
# 查看日志Homebrew 安装)
tail -f /opt/homebrew/var/log/postgresql@18.log
# 或者
tail -f /usr/local/var/log/postgresql@18.log
# 重启服务
brew services restart postgresql@18
```
---
## 十一、示例:完整工作流程
```bash
# 1. 启动 PostgreSQL
brew services start postgresql@18
# 2. 连接到数据库
psql -d postgres
# 3. 创建数据库
CREATE DATABASE myapp;
# 4. 切换到新数据库
\c myapp
# 5. 创建表
CREATE TABLE users (
user_id BIGSERIAL PRIMARY KEY,
username VARCHAR(100) NOT NULL UNIQUE,
email VARCHAR(100) UNIQUE,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
# 6. 查看表
\dt
\d users
# 7. 插入数据
INSERT INTO users (username, email)
VALUES ('john', 'john@example.com');
# 8. 查询数据
SELECT * FROM users;
# 9. 退出
\q
```
---
## 十二、图形化工具推荐
### 12.1 pgAdmin
- 官网https://www.pgadmin.org/
- 功能强大的 PostgreSQL 管理工具
### 12.2 DBeaver
- 官网https://dbeaver.io/
- 免费、跨平台的数据库管理工具
### 12.3 TablePlus
- 官网https://tableplus.com/
- Mac 上优秀的数据库管理工具(付费)
### 12.4 Postico
- 官网https://eggerapps.at/postico/
- Mac 专用的 PostgreSQL 客户端(付费)
---
## 十三、常见问题
### Q1: 连接时提示 "password authentication failed"
**A:** 检查用户名和密码是否正确,或者重置 postgres 用户密码:
```sql
ALTER USER postgres WITH PASSWORD 'new_password';
```
### Q2: 找不到 psql 命令
**A:** 需要将 PostgreSQL 的 bin 目录添加到 PATH
```bash
export PATH="/opt/homebrew/opt/postgresql@18/bin:$PATH"
```
### Q3: 端口 5432 已被占用
**A:** 检查端口占用情况:
```bash
lsof -i :5432
```
### Q4: 如何查看 PostgreSQL 版本
**A:**
```bash
psql --version
# 或者在 psql 中
SELECT version();
```
---
**文档版本:** v1.0
**最后更新:** 2024年