Ubuntu 服务器安装 KingbaseES V009R002C012 数据库指南
记录了在 Ubuntu 24.04.2 系统上安装 KingbaseES V009R002C012 数据库的全过程。内容包括环境准备、依赖安装、创建专用用户、挂载镜像、执行安装脚本、配置授权文件及初始化数据库等关键步骤。文章提供了命令行操作示例、常见问题排查方法以及版本验证方式,适用于需要从 Oracle 迁移或部署国产数据库的技术人员参考。

记录了在 Ubuntu 24.04.2 系统上安装 KingbaseES V009R002C012 数据库的全过程。内容包括环境准备、依赖安装、创建专用用户、挂载镜像、执行安装脚本、配置授权文件及初始化数据库等关键步骤。文章提供了命令行操作示例、常见问题排查方法以及版本验证方式,适用于需要从 Oracle 迁移或部署国产数据库的技术人员参考。

电科金仓数据库管理系统 KingbaseES 是一款具有自主知识产权的国产关系型数据库,由中电科金仓(北京)科技股份有限公司开发。作为国产数据库领域的领军企业,电科金仓深度参与了多个重点行业和关键领域的信息化建设,其产品以高性能、高安全性、高可用性著称,累计部署已超过 100 万套。KingbaseES V009R002C012 版本是其最新发布的一个重要更新,该版本在原有产品能力基础上,显著增强了对 Oracle 数据库的兼容能力,覆盖了 SQL 语法、PL/SQL 功能、客户端接口等多个维度。
该版本不仅在性能表现和功能完善度上进行了持续优化,还为用户提供了更加平滑的迁移体验和更稳定高效的数据库服务。无论是从 Oracle 还是其他数据库迁移,新版本都提供了更为便捷的迁移工具和兼容性支持,大大降低了用户的学习成本和迁移难度。本文将详细介绍如何在 Ubuntu 服务器上安装、配置和体验这一强大的国产数据库系统。
在开始安装 KingbaseES 之前,我们需要确保 Ubuntu 服务器环境满足安装要求并完成必要的准备工作。这一阶段的仔细准备将为后续的顺利安装奠定基础。
KingbaseES 支持在 x86_64 架构以及国产鲲鹏、飞腾等处理器上运行。对于测试环境,建议至少配置 4 核 CPU、8GB 内存和 50GB 存储空间。如果是生产环境,应根据实际业务负载适当提高配置——建议不低于 8 核 CPU、16GB 内存,并采用 SSD 存储以保证 I/O 性能。操作系统方面,Ubuntu Server 18.04 LTS 或更高版本均可良好支持,本文以 Ubuntu 24.04.2 LTS 为例进行说明。
KingbaseES 支持通用 X86_64、飞腾、鲲鹏、龙芯、申威等国产 CPU 硬件体系架构。KingbaseES 支持主流的 64 位 Linux 操作系统,如银河麒麟、中标麒麟、统信、欧拉、凝思、Deepin、中科方德、CentOS、Ubuntu 等。
查看内存:
free -m
查看磁盘空间大小:
df -hl
首先需要更新系统并安装必要的依赖包,这可以确保系统具备运行 KingbaseES 所需的基础环境:
# 更新系统软件包列表
sudo apt-get update
# 安装必要的依赖库和工具
sudo apt-get install -y language-pack-zh-hans language-pack-zh-hant libaio1
在安装 KingbaseES 时,安装用户对于安装路径需有'读'、'写'、'执行'的权限。在 Linux 系统中,需要以非 root 用户执行安装程序,且该用户要有标准的 home 目录。
因此,建议在正式安装前,新建 kingbase 用户作为 KingbaseES 专用的系统用户,您可以先使用 root 用户运行如下命令创建 kingbase 用户:
useradd -m kingbase
然后设置用户密码:
passwd kingbase
KingbaseES 默认的安装目录是 /opt/Kingbase/ES/V9。如果不存在,您需要使用 root 用户先创建该目录,并赋予 kingbase 用户对该目录的读写权限。
# 创建主安装目录
sudo mkdir -p /opt/Kingbase/ES/V9
# 创建数据存储目录
sudo mkdir -p /kingbase/data
# 设置目录所有者为 kingbase 用户
sudo chown -R kingbase:kingbase /opt/Kingbase
sudo chown -R kingbase:kingbase /kingbase
完成环境准备后,我们就可以开始正式安装 KingbaseES 数据库了。本文将详细介绍从获取安装包到初始化配置的完整过程。
访问电科金仓官网,KingbaseEs 数据库安装包 (Oracle 兼容)-->V9R2C12(Oracle 兼容版) --> X64 Linux-->下载 KingbaseES_V009R002C012B0003_Lin64_install.iso 镜像。
下载完成之后上传到自己要安装的服务器上。
对于下载的文件,建议进行完整性校验,以确保文件在传输过程中没有损坏:
# 计算下载文件的 MD5 校验和
md5sum /mnt/tools/kingbase/KingbaseES_V009R002C012B0003_Lin64_install.iso
# 计算下载文件的 SHA1 校验和
sha1sum /mnt/tools/kingbase/KingbaseES_V009R002C012B0003_Lin64_install.iso
将计算结果与官网提供的校验值进行比对,确保完全一致后再进行后续操作。
ISO 格式的安装包需要先挂载才能访问其中的安装文件:
cd /mnt/tools/kingbase
mount KingbaseES_V009R002C012B0003_Lin64_install.iso ./KingbaseESV9
如上图所示,挂载安装包报错了,不用慌,是因为没有创建 KingbaseEsv9 目录,创建之后重新执行即可。
mkdir -p ./KingbaseEsv9
命令行安装支持中文和英文的文字提示。根据操作系统的语言设置会显示对应语言的提示信息。您可以执行如下命令查看操作系统的语言设置:
echo $LANG
如果系统显示值包含'zh_CN',则为中文语言,安装程序会显示中文内容。否则,您可以执行如下命令修改语言设置为中文:
# 中文 UTF-8
export LANG=zh_CN.UTF-8
# 英文 UTF-8
export LANG=en_US.UTF-8
特别注意:这里一定要查看自己系统的编码,不然后面安装的时候选择这个字符串没有,快安装完了提示报错。我这里的系统 ubuntu,我这里设置 en_US.UTF-8 比较合适,因为中文有乱码不太适合,根据自己服务器情况选择。
进入到对应目录,开始运行安装:
# 进入您挂载的安装包目录
cd /mnt/tools/kingbase/KingbaseESV9
# 再次执行安装命令
./setup.sh -i console
这里又报错了,遇到了一个常见的安装问题:KingbaseES 安装程序要求使用非 root 用户运行。这是出于安全和管理权限的考虑。别担心,这个问题很容易解决。
# 创建用户组
groupadd kingbase
# 创建用户并指定主组,同时创建家目录
useradd -g kingbase -m kingbase
# 为 kingbase 用户设置密码(请使用强密码)
passwd kingbase
系统会提示您输入并确认新密码,对应着操作即可。
kingbase 用户,确保该用户有足够的权限进行安装和写入数据。# 假设您计划的安装目录是 /opt/Kingbase/ES/V9,数据目录是 /kingbase/data
mkdir -p /opt/Kingbase/ES/V9
mkdir -p /kingbase/data
# 更改目录所有者
chown -R kingbase:kingbase /opt/Kingbase
chown -R kingbase:kingbase /kingbase
# 切换到 kingbase 用户,'-' 表示同时切换环境变量
su - kingbase
kingbase 用户后,再次进入安装脚本所在目录并执行安装命令。# 进入您挂载的安装包目录
cd /mnt/tools/kingbase/KingbaseESV9
# 再次执行安装命令
./setup.sh -i console
输入 quit,按退出安装; 输入 back,按返回前一屏幕; 直接按进行下一步操作。 若无特殊说明,以下各步骤皆与此相同。
看自己情况选择,新手推荐安装全部。
如上图所示,又遇到问题了,这是安装 KingbaseES V9 时遇到了许可证(license)文件路径的问题。错误信息表明安装程序期望一个具体的 license 文件,但您提供的 /opt/Kingbase/ES/V9 是一个目录路径。
回到官网这里下载对应的授权文件,然后上传到自己服务器对应的目录。
然后继续执行,注意这里要指定 bat 文件,不能只到文件文件夹,如下图所示:
/opt/Kingbase/ES/V9/license.dat
第一次是上面命令,我这里第二次安装文件是:/data/Kingbase/ES/V9/license.dat
数据存储目录设置:注意这个目录一定要是空文件夹,我第一次安装目录是/kingbase/data 我重新安装目录是:/data/Kingbase/data
默认端口:54321(可自定义) 默认账户为:system(可自定义) 密码(自定义) 默认字符集编码为:UTF8(可选 default、GBK、GB2312、GB18030)
区域,可选值将随字符集编码选项发生变动。
默认大小写敏感为:是(可选否)
默认数据块大小为:8k(可选 16k、32k)
默认身份认证方法为 scram-sha-256(可选 scram-sm3,sm4,sm3)
自定义参数(自定义),可自由输入任何值,作为初始化数据库的参数有关数据库初始化参数,详情可见《KingbaseES 服务器应用参考手册》第 2 章自定义特殊参数:(如果输入值包含以下某一项,请注意特殊情况)
出现以下字眼:successfully 恭喜您,安装成功!会得到一个启动 root.sh 命令。
查看数据目录,会新增了很多文件。 同理,安装目录也会多了很多文件。
如果想注册数据库服务为系统服务,您可以在安装并初始化数据库成功后,执行 root.sh 脚本来注册并启动数据库服务,具体步骤如下:
运行${安装目录}/install/script/root.sh。
/opt/Kingbase/ES/V9/install/script/root.sh
如果想启动或停止数据库服务,进入${安装目录}/Server/bin 目录执行如下命令:
# 启动服务
sys_ctl -w start -D /data/Kingbase/data -l "/data/Kingbase/data/sys_log/startup.log"
# 停止服务
sys_ctl stop -m fast -w -D /data/Kingbase/data
进入${安装目录}/Server/bin 目录,执行
cd /kingbase/data/KESRealPro/V009R002C012/Server/bin
./kingbase -V;
可以看到 kingbase (KingbaseES) V009R002C012,说明安装跟我们下载的版本一致!
这个是安装整个流程总结,更多请查看官方文档:4. 安装 KingbaseES — KingbaseES(Oracle 兼容版)产品手册
完成安装数据库后,我们就可以开始正式使用 KingbaseES 数据库了。
# 切换到 kingbase 用户
su - kingbase
# 连接数据库
ksql -U SYSTEM -d test -p 54321
# 在数据库提示符下执行测试命令
SELECT version();
CREATE TABLE test_table(id INT, name VARCHAR(50));
INSERT INTO test_table VALUES(1, 'KingbaseES Test');
SELECT * FROM test_table;
上面如果没设置系统 ksql 命令,可以指定到安装目录执行
/kingbase/data/KESRealPro/V009R002C012/Server/bin/ksql -U SYSTEM -d test -p 54321
其中,/kingbase/data/KESRealPro/V009R002C012 是安装的目录,每个人的安装目录可能不一样,大家根据自己情况设置。
如果安装过程中遇到其他问题,可以检查以下内容:
手动启动数据库(如果服务启动失败):
su - kingbase
/opt/Kingbase/ES/V9/Server/bin/sys_ctl -D /kingbase/data start
检查依赖库:
ldd /opt/Kingbase/ES/V9/Server/bin/kingbase
查看安装日志:
tail -f /tmp/setup.log
检查端口占用:
netstat -tlnp | grep 54321
检查磁盘空间:
df -h
按照以上步骤操作,您应该能够成功安装 KingbaseES 数据库。如果在某个具体步骤遇到问题,请查阅官方文档或社区支持。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
在线格式化和美化您的 SQL 查询(它支持各种 SQL 方言)。 在线工具,SQL 美化和格式化在线工具,online
解析 INSERT 等受限 SQL,导出为 CSV、JSON、XML、YAML、HTML 表格(见页内语法说明)。 在线工具,SQL转CSV/JSON/XML在线工具,online
CSV 与 JSON/XML/HTML/TSV/SQL 等互转,单页多 Tab。 在线工具,CSV 工具包在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online