在 Linux x86 系统上安装 openGauss 3.1.1,主要有两种方式:一种是简单的单节点安装,适合个人或测试环境;另一种是更灵活的企业版安装,适合生产环境。你可以根据实际需要选择。
🔍 安装前:系统准备(通用)
无论选择哪种方式,都需要先在 root 用户下完成以下准备工作。
* **1. 检查硬件环境**
* **架构**:需要 **x86_64** 架构。
* **内存**:官方推荐 **32GB** 或以上。如果资源有限,可以尝试 2C4G 甚至 2C2G 的极简版或轻量版。
* **硬盘**:至少 1GB 用于安装 openGauss。
* **2. 创建用户(禁止使用 root 安装)**
```bash
groupadd dbgroup
useradd -g dbgroup omm # 安装openGauss的操作系统用户
passwd omm # 为omm用户设置密码
```
* **3. 修改内核信号量参数**
编辑 `/etc/sysctl.conf` 文件,添加以下配置:
```
kernel.sem = 250 32000 100 999
```
然后执行 `sysctl -p` 使配置生效。
* **4. 安装基础依赖**
使用 `yum` 安装所需依赖包:
```bash
yum install -y wget tar flex bison ncurses-devel glibc-devel patch readline-devel libnsl libaio-devel
```
* **5. 关闭防火墙和 SELinux**
```bash
systemctl disable firewalld
systemctl stop firewalld
```
同时,将 `/etc/selinux/config` 文件中的 `SELINUX` 值设为 `disabled`。
* **6. 创建安装目录并授权**
```bash
mkdir -p /opt/software/openGauss
chown -R omm:dbgroup /opt/software/openGauss
```
🛠️ 方法一:极简/轻量版单节点安装(适用于测试环境)
这种方式最简单,适合个人开发者或资源受限的环境。
- **切换用户**
```bash
su - omm
```
- **下载并解压安装包**
根据操作系统,选择对应的下载链接。
* **CentOS 系统**:
```bash
wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.1.1/x86/openGauss-Lite-3.1.1-CentOS-x86_64.tar.gz -O openGauss-Lite-3.1.1.tar.gz
```
* **openEuler 系统**:
```bash
wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.1.1/x86_openEuler/openGauss-Lite-3.1.1-openEuler-x86_64.tar.gz -O openGauss-Lite-3.1.1.tar.gz
```
下载后,将其解压到 `/opt/software/openGauss` 目录:
```bash
tar -xzvf openGauss-Lite-3.1.1.tar.gz -C /opt/software/openGauss
```
- **运行安装脚本**
```bash
cd /opt/software/openGauss
echo "你的数据库密码" | sh ./install.sh --mode single -D ./data -R ./install --start
```
> **注意**:密码需包含**大写字母、小写字母、数字、特殊符号**四类中的三类,且长度至少为 8 位。
- **设置环境变量**
```bash
source ~/.bashrc
```
- **验证安装**
```bash
ps ux | grep gaussdb
gs_ctl query -D /opt/software/openGauss/data
```
看到数据库进程正常运行,即表示安装成功。
⚙️ 方法二:企业版安装(适用于生产环境)
这种方法通过配置文件更精细地控制安装过程,步骤相对多,但更规范。
- **生成 XML 配置文件**
创建一个 `cluster_config.xml` 文件,填入以下内容,其中 `<!-- -->` 部分需替换为实际路径和 IP:
```xml
<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
<CLUSTER>
<PARAM name="clusterName" value="opengauss_cluster" />
<PARAM name="nodeNames" value="node1" />
<PARAM name="gaussdbAppPath" value="/opt/huawei/install/app" />
<PARAM name="gaussdbLogPath" value="/opt/huawei/install/log" />
<PARAM name="tmpMppdbPath" value="/opt/huawei/install/tmp" />
<PARAM name="gaussdbToolPath" value="/opt/huawei/install/tool" />
<PARAM name="corePath" value="/opt/huawei/install/corefile" />
<PARAM name="backIp1s" value="<!-- 你的服务器IP地址 -->"/>
</CLUSTER>
<DEVICELIST>
<DEVICE sn="node1">
<PARAM name="name" value="node1"/>
<PARAM name="azName" value="AZ1"/>
<PARAM name="azPriority" value="1"/>
<PARAM name="backIp1" value="<!-- 你的服务器IP地址 -->"/>
<PARAM name="sshIp1" value="<!-- 你的服务器IP地址 -->"/>
<!-- dn 主节点信息 -->
<PARAM name="dataNum" value="1"/>
<PARAM name="dataPortBase" value="15400"/>
<PARAM name="dataNode1" value="/opt/huawei/install/data/dn"/>
</DEVICE>
</DEVICELIST>
</ROOT>
```
- **执行预安装脚本(需 root 用户)**
```bash
/opt/software/openGauss/script/gs_preinstall -U omm -G dbgroup -X /opt/software/openGauss/cluster_config.xml
```
- **切换至 omm 用户并执行安装**
```bash
su - omm
gs_install -X /opt/software/openGauss/cluster_config.xml
```
- **安装完成后,清理互信文件(可选)**
```bash
rm -rf ~/.ssh
```
🔧 配置与验证
数据库基本操作
* **连接数据库**:
```bash
gsql -d postgres -p 5432
```
> **注意**:omm 用户是管理员用户,默认无法远程连接。如需远程连接,需创建一个新的数据库用户。
* **启动数据库**:
```bash
gs_ctl start -D /opt/software/openGauss/data
```
* **关闭数据库**:
```bash
gs_ctl stop -D /opt/software/openGauss/data
```
配置远程访问
- **编辑 `postgresql.conf`**:
```bash
vi /opt/software/openGauss/data/postgresql.conf
```
修改 `listen_addresses = '*'` 和 `port = 5432`。
- **编辑 `pg_hba.conf`**:
```bash
vi /opt/software/openGauss/data/pg_hba.conf
```
添加以下行以允许所有 IP 连接:
```
host all all 0.0.0.0/0 sha256
```
- **重启数据库使配置生效**:
```bash
gs_ctl restart -D /opt/software/openGauss/data
```
防火墙与端口
如果启用了防火墙,需要开放 5432 端口:
```bash
firewall-cmd --zone=public --add-port=5432/tcp --permanent
firewall-cmd --reload
```
❓ 常见问题
* **内存不足**:官方推荐 32GB 内存,如果系统内存较低,可以尝试使用极简版或轻量版,它们对内存的要求更低(如 2C4G)。
* **密码复杂度不符合要求**:请确保设置的密码至少包含 **8 个字符**,并同时包含大写字母、小写字母、数字和特殊符号中的三类。
* **预安装失败**:请检查 `cluster_config.xml` 配置文件中的路径和 IP 是否正确,以及系统依赖是否已全部安装。
* **安装进程卡住**:可以检查 `/var/log/messages` 或 openGauss 的日志文件,以获取更具体的错误信息。