GaussDB 基础安装与SQL操作(完整版)

---

课程目标

---

第一部分:GaussDB 相关介绍

---

一、核心特性

GaussDB 是华为自研的企业级分布式关系型数据库,基于 PostgreSQL 内核优化迭代,适配多场景学习与实践。

1.1 核心特性详解

特性说明适用场景
金融级高可用支持主备切换、故障自动恢复银行、证券等对数据一致性和业务连续性要求极高的场景
海量数据处理支持分布式架构,单集群可扩展至千节点,每秒可处理百万级事务互联网、政务大数据等海量数据存储与高并发访问场景
多类型负载适配兼顾 OLTP(在线事务处理)与 OLAP(在线分析处理),无需拆分数据库电商、制造等既有交易型业务又有分析型业务的场景
兼容性强高度兼容 PostgreSQL 语法,同时提供 MySQL 兼容性模式企业原有 PostgreSQL/MySQL 业务的平滑迁移

1.2 信创合规

GaussDB 作为信创体系核心数据库,具有以下特点:

1.3 获取安装包

下载地址: https://opengauss.org/zh/download/?version=lts

下载步骤:

1. 访问 openGauss 开源社区下载页面 2. 选择 "GaussDB 企业版 v6" 对应版本 3. 操作系统筛选 "openEuler 22.03 LTS" 4. 下载安装包

---

第二部分:安装前准备

---

一、环境准备

说明: openGauss 和 openEuler 属于上下游生态,推荐使用 openEuler 进行安装和使用。

二、关闭 SELinux

# 永久关闭并临时关闭
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config && setenforce 0

命令作用:

执行结果:

关键参数:

注意事项:

---


**注意事项:**



---






注意事项:


**注意事项:**

**注意事项:**

注意事项:

注意事项:



| 模式 | 说明 |
|---|---|
| **fast** | 快速停止,等待当前事务完成后停止,不接收新事务 |
| **immediate** | 强制停止,直接终止数据库进程,可能导致数据不一致,仅紧急情况使用 |
| **smart** | 智能停止,等待所有客户端断开连接后停止,适合维护时使用 |




注意事项:

---


**选项说明:**

| 选项 | 说明 |
|---|---|
| `-U` | 指定连接的数据库用户,gauss 默认超级用户 |
| `-d` | 指定连接的数据库,postgres 是默认系统数据库 |
| `-p` | 指定数据库端口,默认端口 5432 |
| `-r` | 可以上下箭头翻查历史,默认为关闭,建议添加上 |

注意事项:


**命令拆解:**

| 命令部分 | 重要程度 | 详细解释 |
|---|---|---|
| `pg_hba.conf` | 【普通】 | 配置文件路径,命令会读取这个文件里的配置。 |

**注意事项:**

**METHOD(方法)参数说明:**

| 方法 | 说明 |
|---|---|
| **sha256** | 密码认证。要求客户端提供用户名和密码,密码通过 SHA-256 算法加密传输 |
| **trust** | 信任认证。无需密码,只要 IP 和用户名匹配即可连接 |

| Member of -----------+------------------------------------------------------------------------------------------------------- -----------+----------- | {}

jdbc:opengauss://192.168.88.162:5432/postgres

---

---

参考文档:

\c



\conninfo

\q



\l

\d



\du

\x

类别数据类型说明与适用场景
数值型INT / INTEGER4字节整数,范围约 -21亿 到 +21亿。最常用
BIGINT8字节整数,用于超大数值(如雪花算法生成的 ID、订单号)
SERIAL自增整数(底层是 INT + SEQUENCE)。常用于 PRIMARY KEY(主键)
NUMERIC(p, s)精确数值,p 为总位数,s 为小数位数。金额、财务数据必须用此类型,避免浮点数精度丢失
字符型VARCHAR(n)变长字符串,最大长度为 n。最常用,节省空间
CHAR(n)定长字符串,不足 n 会用空格填充。仅适用于长度绝对固定的场景(如身份证号、国家代码)
TEXT无限长变长字符串,适合存储大段文本(如文章正文、备注)
日期时间DATE仅包含日期(年-月-日),如 2026-06-05
TIMESTAMP包含日期和时间(无时区),如 2026-06-05 10:30:00
TIMESTAMPTZ带时区的时间戳,推荐在跨时区业务中使用


);


**注意:更新数据一定要加条件!**

注意:删除数据一定要加条件!

----+------+-----+--------+-------------------------
  1 | 张三 |  18 |  95.50 | 2026-06-05 16:30:00
  2 | 李四 |  20 |  88.00 | 2026-06-05 16:30:00
  3 | 王五 |  19 |  92.75 | 2026-06-05 16:30:00
  4 | 赵六 |  21 |  78.25 | 2026-06-05 16:30:00

---

---

对比项GaussDBPostgreSQLMySQL
开发商华为PostgreSQL 社区Oracle
内核基于 PostgreSQL 优化PostgreSQLMySQL
端口543254323306
命令行工具gsqlpsqlmysql
超级用户gausspostgresroot
适用场景企业级、信创、金融通用、开源生态互联网、轻量级
序号配置项命令说明
1关闭 SELinuxsed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config学习环境
2关闭防火墙systemctl stop firewalld && systemctl disable firewalld学习环境
3创建 gauss 用户useradd -d /gauss gauss专用数据库用户
4修改监听地址listen_addresses = '*'允许远程连接
5配置 HBA添加 host all all 0.0.0.0/0 sha256允许密码认证
6创建远程账号create user xxx with password 'xxx' sysadmin远程登录使用