kingbase

Published on with 0 views and 0 comments

人大金仓KingbaseES V8R6 银河麒麟V10 完整部署操作手册

一、环境信息

操作系统:银河麒麟 Kylin V10 x86_64
数据库版本:KingbaseES V008R006C007B0012
安装方式:ISO镜像 Console 控制台安装(必须License证书)
运行用户:kingbase
软件安装路径:/data/kingbase/ES/V8
实例1:data 目录 / 54321 端口
实例2:data2 目录 / 54322 端口(业务测试、备份主实例)
备份方式:KBBR(sys_rman)物理在线全量热备
定时策略:每日凌晨2点自动全量备份,自动保留最新1份、清理旧备份
License状态:365天官方试用授权

二、系统初始化配置(ROOT执行)

  1. 系统资源限制(生产必配、测试建议配置)
    编辑系统资源限制文件:
vim /etc/security/limits.conf

文件末尾追加:

# kingbase数据库资源限制
kingbase soft nproc 65536
kingbase hard nproc 65536
kingbase soft nofile 65536
kingbase hard nofile 65536
kingbase soft core unlimited
kingbase hard core unlimited

作用:解决数据库并发高、文件句柄不足、进程数不足问题。
2. 创建用户与目录

groupadd kingbase
useradd -m -g kingbase kingbase

mkdir -p /data/kingbase/ES/V8
mkdir -p /data/kingbase/backup

chown -R kingbase:kingbase /data/kingbase

三、ISO镜像挂载(ROOT执行)

提前上传安装镜像与官方试用证书:
ISO:KingbaseES_V008R006C007B0012_Lin64_install.iso
证书:license.dat(官网365天试用版)

mkdir -p /mnt/kes_iso
mount -o loop /tmp/KingbaseES_V008R006C007B0012_Lin64_install.iso /mnt/kes_iso

四、Console控制台安装数据库(KINGBASE用户执行)

该版本无法跳过License,必须填写证书绝对路径

su - kingbase
cd /mnt/kes_iso
sh setup.sh -i console

严格按照以下步骤交互安装:
输入 Y 同意协议
选择 1 完全安装
安装路径填写:/data/kingbase/ES/V8
License路径:填写上传好的 license.dat 绝对路径
是否初始化数据库:输入 N(禁止安装阶段初始化,后续手动建多实例)
等待安装100%完成
安装完成刷新环境变量:

source /data/kingbase/ES/V8/.bashrc

五、手动初始化双实例(54321 / 54322)

  1. 实例1:54321端口 data目录
initdb -D /data/kingbase/ES/V8/data -U system -W
sys_ctl -D /data/kingbase/ES/V8/data start
  1. 实例2:54322端口 data2目录(主测试/备份实例)
initdb -D /data/kingbase/ES/V8/data2 -U system -W

修改配置文件,修改端口+开放所有IP连接:

vim /data/kingbase/ES/V8/data2/kingbase.conf
port = 54322
listen_addresses = '*'

启动54322实例:

sys_ctl -D /data/kingbase/ES/V8/data2 start -o "-p 54322"

设置数据库密码:

ksql -U system -d test -p 54322
ALTER USER system WITH PASSWORD 'Kingbase@123';
\q
  1. 查看双实例监听状态
ss -tulnp | grep kingbase

六、KBBR物理备份环境部署(54322实例)

  1. 创建备份仓库
mkdir -p /data/kingbase/backup/kbbr_repo
chown -R kingbase:kingbase /data/kingbase/backup
  1. 开启数据库归档(核心必做)
    编辑data2实例配置:
vim /data/kingbase/ES/V8/data2/kingbase.conf

写入:

archive_mode = on
archive_command = '/data/kingbase/ES/V8/Server/bin/sys_rman --config=/data/kingbase/backup/kbbr_repo/sys_rman.conf --stanza=kingbase archive-push %p'

⚠️ archive_mode 参数必须重启数据库生效,reload无效

sys_ctl -D /data/kingbase/ES/V8/data2 restart
  1. 手动创建KBBR配置文件(规避securecmdd报错)
vim /data/kingbase/backup/kbbr_repo/sys_rman.conf

完整配置(保留最新1份全量备份):

[kingbase]
kb1-path=/data/kingbase/ES/V8/data2
kb1-port=54322
kb1-user=system
kb1-host-user=kingbase

[global]
repo1-path=/data/kingbase/backup/kbbr_repo
log-path=/data/kingbase/backup/kbbr_repo/log
log-level-file=info
log-level-console=info
repo1-retention-full=1
repo1-retention-archive=1
  1. 初始化备份仓库 + 环境校验
sys_rman --config=/data/kingbase/backup/kbbr_repo/sys_rman.conf --stanza=kingbase stanza-create

sys_rman --config=/data/kingbase/backup/kbbr_repo/sys_rman.conf --stanza=kingbase check

七、手动全量备份命令

  1. 执行在线全量热备
sys_rman \
--config=/data/kingbase/backup/kbbr_repo/sys_rman.conf \
--stanza=kingbase \
--archive-copy \
--type=full backup
  1. 查看备份集
sys_rman --config=/data/kingbase/backup/kbbr_repo/sys_rman.conf --stanza=kingbase info
  1. 自动清理旧备份(仅保留最新1份)
sys_rman --config=/data/kingbase/backup/kbbr_repo/sys_rman.conf --stanza=kingbase expire

八、配置每日凌晨2点自动备份

  1. 创建自动备份脚本
vim /home/kingbase/kbbr_full_backup.sh

脚本完整内容:

#!/bin/bash
export PATH=$PATH:/data/kingbase/ES/V8/Server/bin
CONFIG="/data/kingbase/backup/kbbr_repo/sys_rman.conf"
STANZA="kingbase"
LOG_FILE="/data/kingbase/backup/kbbr_repo/log/backup_cron.log"

# 全量备份
sys_rman \
--config=${CONFIG} \
--stanza=${STANZA} \
--archive-copy \
--type=full backup >> ${LOG_FILE} 2>&1

# 清理旧备份
sys_rman --config=${CONFIG} --stanza=${STANZA} expire >> ${LOG_FILE} 2>&1

# 校验备份完整性
sys_rman --config=${CONFIG} --stanza=${STANZA} verify >> ${LOG_FILE} 2>&1

# 输出备份列表
sys_rman --config=${CONFIG} --stanza=${STANZA} info >> ${LOG_FILE} 2>&1
  1. 授权脚本
chmod +x /home/kingbase/kbbr_full_backup.sh
chown kingbase:kingbase /home/kingbase/kbbr_full_backup.sh
  1. 手动测试脚本
/home/kingbase/kbbr_full_backup.sh
  1. 配置定时任务(kingbase用户)
crontab -e

写入:

0 2 * * * /home/kingbase/kbbr_full_backup.sh

查看定时任务:

crontab -l

九、License证书运维命令

  1. 查看证书剩余有效期
ksql -U system -d test -p 54322
select get_license_validdays();
  1. 在线重载新证书(续期使用)
select sys_reload_license('/data/kingbase/ES/V8/license.dat');
select get_license_validdays();

十、日常运维常用命令汇总

# 启停54322实例
sys_ctl -D /data/kingbase/ES/V8/data2 stop
sys_ctl -D /data/kingbase/ES/V8/data2 start -p 54322

# 登录数据库
ksql -U system -d test -p 54322

# 查看备份日志
tail -f /data/kingbase/backup/kbbr_repo/log/backup_cron.log

# 查看KBBR备份集
sys_rman --config=/data/kingbase/backup/kbbr_repo/sys_rman.conf --stanza=kingbase info

十一、核心重点总结

本版本Console安装必须License,无法跳过
archive_mode=on 必须重启数据库,reload不生效
所有KBBR备份操作必须kingbase用户执行,禁止root
自动备份策略:每日2点全量备份,只保留最新1份,旧备份自动删除
当前License有效期:365天
多实例核心:每个data目录端口唯一,互不冲突


标题:kingbase
作者:zhongts
地址:http://212.64.20.79:8080/articles/2026/09/24/1790240897691.html