摘要:本文面向银河麒麟 V10/SP1/SP2(64 位)环境,完整梳理人大金仓 KingbaseES V8R3 的安装流程,覆盖 x86_64 与 ARM(飞腾/鲲鹏)架构、桌面版与服务器版。内容从系统环境检查、系统参数优化、专用用户创建,到 ISO/tar.gz 安装包处理、命令行与图形化安装、数据库初始化、系统服务注册、连接验证以及常见问题排查,帮助读者一次性完成部署并跑通数据库。

一、安装前核心准备(必做)

安装前先确认系统版本、CPU 架构、内存、磁盘和依赖包是否满足要求,再完成系统配置优化与专用用户创建,可以避免后续安装过程中出现权限、端口和性能类问题。

1. 系统环境检查

检查项要求命令/操作
系统版本银河麒麟 V10/SP1/SP2(64 位)cat /etc/*release
CPU 架构x86_64/ARM(飞腾/鲲鹏)uname -m
内存≥4GB(推荐 8GB+)free -h
磁盘安装目录 ≥10GB,数据目录 ≥20GBdf -h
依赖包glibc ≥2.17、libstdc++、libuuid 等yum install -y glibc libstdc++ libuuid

2. 系统配置优化(root 执行)

(1)关闭防火墙(避免端口限制)

sudo systemctl stop firewalld
sudo systemctl disable firewalld  # 永久关闭

(2)关闭 SELinux(临时 + 永久)

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

(3)关闭透明大页(数据库性能优化)

echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag

3. 创建专用安装用户(禁止 root 安装)

sudo groupadd kingbase  # 创建用户组
sudo useradd -m -g kingbase kingbase  # 创建用户并加入组
sudo passwd kingbase  # 设置密码(如 kingbase@123)

4. 准备安装包与授权文件

  • 上传安装包(ISO/tar.gz)到麒麟系统,建议路径:/opt/kingbase_install。
  • 准备授权文件 license.dat(联系人大金仓获取),存放路径:/home/kingbase。

二、安装包处理(ISO/tar.gz 两种方式)

方式 1:ISO 镜像安装(推荐)

# 1. 创建挂载目录
sudo mkdir -p /mnt/kingbase_iso
# 2. 挂载 ISO(替换为实际路径)
sudo mount -o loop /opt/kingbase_install/KingbaseES_V008R003Cxxx_Lin64_install.iso /mnt/kingbase_iso
# 3. 授权给 kingbase 用户
sudo chown -R kingbase:kingbase /mnt/kingbase_iso

方式 2:tar.gz 压缩包安装

# 1. 解压到安装目录
sudo tar -zxf /opt/kingbase_install/KingbaseES_V008R003Cxxx.tar.gz -C /opt/kingbase_install
# 2. 授权
sudo chown -R kingbase:kingbase /opt/kingbase_install

三、命令行安装(服务器版首选,稳定无图形依赖)

1. 切换用户并启动安装

su - kingbase  # 切换到 kingbase 用户
cd /mnt/kingbase_iso  # 进入安装目录(tar 包解压则进入对应解压目录)
./setup.sh -i console  # 启动命令行安装模式

2. 交互式配置步骤(按提示操作)

步骤操作推荐值
1许可协议:按 Enter 阅读,输入确认指令yes
2安装集选择:输入对应数字1(完全安装)
3授权文件:输入文件路径/home/kingbase/license.dat
4安装目录:输入自定义路径或默认/opt/Kingbase/ES/V8
5数据目录:输入独立路径/opt/Kingbase/ES/V8/data(独立磁盘更佳)
6端口:输入数据库端口号54321(默认,避免冲突)
7SYSTEM 密码:设置管理员密码Kingbase@123(强密码)
8字符集:输入字符集类型UTF-8
9兼容模式:输入对应模式ORACLE 或 PG
10大小写敏感:输入 y/ny

3. 安装完成验证

安装成功会提示:KingbaseES V8R3 installation completed successfully.

四、图形界面安装(桌面版首选,直观易用)

  1. 以 kingbase 用户登录麒麟桌面,打开终端。
  2. 进入安装目录(ISO 挂载目录或 tar 包解压目录)。
  3. 执行命令启动图形向导:./setup.sh(无需添加参数)。
  4. 按向导提示完成配置,步骤与命令行一致(许可协议 → 授权文件 → 安装目录 → 端口 → 密码等)。
  5. 点击“完成”按钮,安装自动结束。

五、初始化与服务配置(关键步骤)

1. 配置环境变量(kingbase 用户执行)

echo 'export PATH=$PATH:/opt/Kingbase/ES/V8/Server/bin' >> ~/.bashrc
source ~/.bashrc  # 使环境变量立即生效

2. 注册系统服务(root 用户执行,实现开机自启)

# 1. 复制服务脚本到系统服务目录
sudo cp /opt/Kingbase/ES/V8/Server/bin/sys_service.sh /etc/init.d/kingbase
# 2. 添加服务并设置开机自启
sudo chkconfig --add kingbase
sudo systemctl enable kingbase

3. 服务启动/停止/状态查看命令

sudo systemctl start kingbase  # 启动服务
sudo systemctl stop kingbase   # 停止服务
sudo systemctl status kingbase # 查看服务状态

六、安装验证(确保数据库正常运行)

1. 本地连接测试(kingbase 用户执行)

ksql -U system -d test -p 54321  # 连接 test 数据库(替换为实际端口)
# 输入密码后,出现“test=#”提示符,执行以下 SQL 验证
select version();  # 查看数据库版本
\q  # 退出连接

2. 远程连接配置(允许外部设备访问)

(1)修改 pg_hba.conf 文件,添加远程 IP 授权

sudo vim /opt/Kingbase/ES/V8/data/pg_hba.conf
# 添加内容:host all all 192.168.1.0/24 md5(允许 192.168.1 网段所有 IP 访问,按需修改网段)

(2)修改 kingbase.conf 文件,设置监听所有 IP

sudo vim /opt/Kingbase/ES/V8/data/kingbase.conf
# 找到 listen_addresses 参数,修改为:
listen_addresses = '*'  # 默认为 localhost,仅允许本地访问

(3)重启服务使配置生效

sudo systemctl restart kingbase

七、常见问题排查(90% 安装问题解决)

问题 1:安装时提示“权限不足”

原因:使用 root 用户安装,或安装目录权限归属错误。

解决:切换到 kingbase 用户,重新授权目录。

su - kingbase
sudo chown -R kingbase:kingbase /opt/Kingbase  # 若已创建安装目录则授权,未创建可忽略

问题 2:启动服务失败,日志提示“端口被占用”

原因:默认 54321 端口被其他进程占用。

解决:查找并终止占用进程,或修改数据库端口。

sudo lsof -i:54321  # 查找占用 54321 端口的进程,记录 PID
sudo kill -9 [PID]  # 替换 [PID] 为实际进程 ID,终止进程
# 若需修改端口,编辑 kingbase.conf 文件,修改 port 参数后重启服务

问题 3:远程连接失败(能 ping 通虚拟机/服务器,无法连接数据库)

原因:防火墙未关闭、pg_hba.conf 未授权远程 IP、listen_addresses 限制本地访问。

解决:关闭防火墙,检查并修正 pg_hba.conf 和 kingbase.conf 配置,重启服务。

问题 4:授权文件无效(提示 license 错误)

原因:授权文件与数据库版本、CPU 架构不匹配。

解决:联系人大金仓获取对应版本(V8R3)、对应架构(x86_64/ARM)的授权文件。

八、安装完成后常用操作

操作命令
启动数据库服务sudo systemctl start kingbase
停止数据库服务sudo systemctl stop kingbase
重启数据库服务sudo systemctl restart kingbase
查看服务状态sudo systemctl status kingbase
本地连接数据库ksql -U system -d test -p 54321
查看数据库日志tail -f /opt/Kingbase/ES/V8/data/sys_log/kingbase.log
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐