Ubuntu服务器安装与配置KingbaseES国产数据库方法(图文)
作者:正在走向自律
1 KingbaseES数据库简介
电科金仓数据库管理系统KingbaseES是一款具有自主知识产权的国产关系型数据库,由中电科金仓(北京)科技股份有限公司 开发。作为国产数据库领域的领军企业,电科金仓深度参与了多个重点行业和关键领域的信息化建设,其产品以高性能、高安全性、高可用性著称,累计部署已超过100万套35。KingbaseES V009R002C012版本是其最新发布的一个重要更新,该版本在原有产品能力基础上,显著增强了对Oracle数据库的兼容能力,覆盖了SQL语法、PL/SQL功能、客户端接口等多个维度。
该版本不仅在性能表现和功能完善度上进行了持续优化,还为用户提供了更加平滑的迁移体验和更稳定高效的数据库服务。无论是从Oracle还是其他数据库迁移,新版本都提供了更为便捷的迁移工具和兼容性支持,大大降低了用户的学习成本和迁移难度。本文将详细介绍如何在Ubuntu服务器上安装、配置和体验这一强大的国产数据库系统,并通过实际测试展示其核心特性。
2 环境准备阶段
在开始安装KingbaseES之前,我们需要确保Ubuntu服务器环境满足安装要求并完成必要的准备工作。这一阶段的仔细准备将为后续的顺利安装奠定基础。
2.1 系统与硬件要求
KingbaseES支持在x86_64架构以及国产鲲鹏、飞腾等处理器上运行。对于测试环境,建议至少配置4核CPU、8GB内存和50GB存储空间。如果是生产环境,应根据实际业务负载适当提高配置——建议不低于8核CPU、16GB内存,并采用SSD存储以保证I/O性能4。操作系统方面,Ubuntu Server 18.04 LTS或更高版本均可良好支持,本文以Ubuntu 24.04.2 LTS 为例进行说明。
2.3 软件环境要求
KingbaseES支持通用X86_64、飞腾、鲲鹏、龙芯、申威等国产CPU硬件体系架构。 KingbaseES支持主流的64位Linux操作系统,如银河麒麟、中标麒麟、统信、欧拉、凝思、Deepin、中科方德、CentOS、Ubuntu等。
查看内存:free -m
查看磁盘空间大小:df -hl
2.3 安装依赖准备
首先需要更新系统并安装必要的依赖包,这可以确保系统具备运行KingbaseES所需的基础环境:
# 更新系统软件包列表 sudo apt-get update # 安装必要的依赖库和工具 sudo apt-get install -y language-pack-zh-hans language-pack-zh-hant libaio1
2.4 创建安装用户
在安装KingbaseES时,安装用户对于安装路径需有“读”、“写”、“执行”的权限。在Linux系统中,需要以非root用户执行安装程序,且该用户要有标准的home目录。
因此,建议在正式安装前,新建kingbase用户作为KingbaseES专用的系统用户,您可以先使用root用户运行如下命令创建kingbase用户:
useradd -m kingbase
然后设置用户密码:
passwd kingbase
2.5 安装目录和数据存储目录
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
3 安装过程详解
完成环境准备后,我们就可以开始正式安装KingbaseES数据库了。本文将详细介绍从获取安装包到初始化配置的完整过程。
3.1 官方下载linux镜像
访问电科金仓官网(KES-电科金仓官网),KingbaseEs数据库安装包(Oracle兼容)-->V9R2C12(Oracle兼容版) --> X64 Linux-->下载KingbaseES_V009R002C012B0003_Lin64_install.iso镜像,如下所示:
下载完成之后上传到自己要安装的服务器上,我这里的Ubuntu服务器,如下所示:
3.2 授权文件对比
对于下载的文件,建议进行完整性校验,以确保文件在传输过程中没有损坏:
# 计算下载文件的MD5校验和 md5sum /mnt/tools/kingbase/KingbaseES_V009R002C012B0003_Lin64_install.iso # 计算下载文件的SHA1校验和 sha1sum /mnt/tools/kingbase/KingbaseES_V009R002C012B0003_Lin64_install.iso
我这里是md5验证,获取的值:2ce383a9047cf9f8e4d6fe59946ad2ed 跟官网对比
将计算结果与官网提供的校验值进行比对,确保完全一致后再进行后续操作。
3.3 挂载安装包
ISO格式的安装包需要先挂载才能访问其中的安装文件:
cd /mnt/tools/kingbase mount KingbaseES_V009R002C012B0003_Lin64_install.iso ./KingbaseESV9
如上图所示,挂载安装包报错了,不用慌,是因为没有创建 KingbaseEsv9目录,创建之后重新执行即可。
mkdir -p ./KingbaseEsv9
3.4 开始启动安装程序
命令行安装支持中文和英文的文字提示。根据操作系统的语言设置会显示对应语言的提示信息。您可以执行如下命令查看操作系统的语言设置:
echo $LANG
如果系统显示值包含“zh_CN”,则为中文语言,安装程序会显示中文内容。否则,您可以执行如下命令修改语言设置为中文:
# 中文UTF-8 export LANG=zh_CN.UTF-8 # 英文UTF-8 export LANG=zh_US.UTF-8
特别注意:这里一定要查看自己系统的编码,不然后面安装的时候选择这个字符串没有,我亲自体验安装没有这个字符串,快安装完了提示报错(如下图所示),眼泪都要下来了,然后我重头来一次才安装成功。我这里的系统ubuntu,我这里设置伟en_US.UTF-8比较合适,因为中文有乱码不太适合,根据自己服务器情况选择。
进入到对应目录,开始运行安装
# 进入您挂载的安装包目录 cd /mnt/tools/kingbase/KingbaseESV9 # 再次执行安装命令 ./setup.sh -i console
这里又报错了,遇到了一个常见的安装问题:KingbaseES 安装程序要求使用非 root 用户运行。这是出于安全和管理权限的考虑。别担心,这个问题很容易解决。
1、在 Linux 系统上,为数据库服务创建独立的用户是一个好习惯,如果上面已经创建了用户请授权后直接使用。
# 创建用户组 groupadd kingbase # 创建用户并指定主组,同时创建家目录 useradd -g kingbase -m kingbase # 为kingbase用户设置密码(请使用强密码) passwd kingbase
系统会提示您输入并确认新密码,对应着操作即可。
2、将安装目录和数据目录的所有权赋予新创建的 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
3、切换到 kingbase 用户进行安装:
# 切换到 kingbase 用户,'-' 表示同时切换环境变量 su - kingbase
4、切换到 kingbase
用户后,再次进入安装脚本所在目录并执行安装命令。
# 进入您挂载的安装包目录 cd /mnt/tools/kingbase/KingbaseESV9 # 再次执行安装命令 ./setup.sh -i console
3.5接受许可协议
输入quit,按<ENTER>退出安装;
输入back,按<ENTER>返回前一屏幕;
直接按<ENTER>进行下一步操作。
若无特殊说明,以下各步骤皆与此相同。
3.6安装包选择
如下图所示,看自己情况选择,新手推荐安装1全部
3.7安装目录和数据目录设置
如上图所示,又遇到问题了,芭比Q了,不用慌,这是安装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
3.8初始化数据库
默认端口:54321(可自定义)
默认账户为:system(可自定义)
密码(自定义)
默认字符集编码为:UTF8(可选 default、GBK、GB2312、GB18030)
区域,可选值将随字符集编码选项发生变动。
当字符集编码为 default 时,默认区域值为:default(可选 C)
当字符集编码为 UTF8 时,默认区域值为:zh_CN.UTF-8(可选 en_US.UTF-8、C)
当字符集编码为 GBK 时,默认区域值为:zh_CN.GBK(可选 C)
当字符集编码为 GB2312 时,默认区域值为:zh_CN.GB2312(可选 C)
当字符集编码为 GB18030 时,默认区域值为:zh_CN.GB18030(可选 C)
默认大小写敏感为:是(可选否)
默认数据块大小为:8k(可选16k、32k)
默认身份认证方法为scram-sha-256(可选 scram-sm3,sm4,sm3)
自定义参数(自定义),可自由输入任何值,作为初始化数据库的参数
有关数据库初始化参数,详情可见《KingbaseES服务器应用参考手册》第2章
自定义特殊参数:(如果输入值包含以下某一项,请注意特殊情况)
3.9安装完成
出现以下字眼:successfully 恭喜您,安装成功!会得到一个启动root.sh命令
查看数据目录,会新增了很多文件,如下图:
同理,安装目录也会多了很多文件:
3.10执行root.sh
如果想注册数据库服务为系统服务,您可以在安装并初始化数据库成功后,执行root.sh脚本来注册并启动数据库服务,具体步骤如下:
打开新终端;
切换到root用户;
运行${安装目录}/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
3.11查看已安装的版本信息
进入${安装目录}/Server/bin目录,执行
cd /kingbase/data/KESRealPro/V009R002C012/Server/bin ./kingbase -V;
可以看到kingbase (KingbaseES) V009R002C012,说明安装跟我们下载的版本一致!
这个是安装整个流程总结,更多请查看官方文档:4. 安装KingbaseES — KingbaseES(Oracle兼容版)产品手册
4 使用体验
完成安装数据库后,我们就可以开始正式使用KingbaseES数据库了。
4.1 在线使用数据库
# 切换到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 是安装的目录,每个人的安装目录可能不一样,大家根据自己情况设置,
4.2 常见问题排查
如果安装过程中遇到其他问题,可以检查以下内容:
检查磁盘空间:
df -h
检查端口占用:
netstat -tlnp | grep 54321
查看安装日志:
tail -f /tmp/setup.log
检查依赖库:
ldd /opt/Kingbase/ES/V9/Server/bin/kingbase
手动启动数据库(如果服务启动失败):
su - kingbase /opt/Kingbase/ES/V9/Server/bin/sys_ctl -D /kingbase/data start
5 注意事项
依赖管理安装 KingbaseES 时,系统会自动安装所有必要的依赖包。如果出现依赖冲突或安装失败,建议检查系统日志并按照提示修复。
用户权限
创建独立的数据库用户,如 system
,赋予其读、写、执行权限。 对数据库目录和用户目录进行权限设置,确保其拥有最低必要的权限,避免不必要的权限冲突。
许可证配置
确保 license 文件路径正确。 如果出现许可冲突,建议重新下载并验证 license 文件的完整性。
硬件兼容性
硬件兼容性是影响数据库性能的重要因素。建议根据硬件性能选择合适的数据库配置。
数据迁移
数据迁移是用户在使用新版本时的常见操作。建议在迁移前备份重要数据,确保迁移过程中的数据安全。
6 相关拓展
技术参数
KingbaseES 支持多种数据库协议,包括 SQL、PL/SQL、Java JDBC 等。 提供多种性能优化选项,如分区、索引、聚类等,帮助用户提升业务性能。
性能优化
用户可以根据业务需求,调整分区策略、优化索引结构等,进一步提升数据库性能。 KingbaseES 提供详细的性能监控工具,帮助用户深入分析数据库性能问题。
升级支持
官方提供详细的升级文档,帮助用户逐步迁移至新版本,确保数据稳定迁移。 每季度推出新版本,持续优化数据库性能和功能。
技术支持
官方提供 24/7 的技术支持服务,帮助用户解决在使用过程中遇到的问题。 提供详细的文档和社区支持,帮助用户快速解决问题。
7 用户评价
用户对 KingbaseES 的评价普遍较高,主要体现在以下几个方面:
兼容性
用户普遍反映 KingbaseES 在 Oracle 兼容版本下运行顺畅,尤其是 SQL 语法和功能与 Oracle高度兼容。 适合已有 Oracle 数据库迁移的用户。
性能表现
作为国产数据库,KingbaseES 在高并发场景下表现出色,稳定性强。 数据库大小可达 Petabytes 级别,适合大中型企业的数据存储需求。
安全性
KingbaseES 拥有多重安全措施,包括用户认证、权限管理等,确保数据安全。 支持多种安全协议,如 SSH、SSL 等,进一步保障数据安全。
稳定性和可靠性
用户反馈 KingbaseES 在生产环境中的稳定性高,故障率低,维护成本较低。 官方提供完善的技术支持和持续的软件更新,确保数据库长期稳定运行。
8 总结
KingbaseES 是一款国产关系型数据库,以其高性能、高安全性和高可用性著称。通过本次详细的安装和配置指南,用户可以顺利安装和使用 KingbaseES,同时享受其诸多优势。如果在使用过程中遇到问题,建议参考官方文档或联系技术支持团队获取帮助。 KingbaseES 的成功运行将为用户提供一个高效、可靠的数据库解决方案。
到此这篇关于Ubuntu服务器安装与配置KingbaseES国产数据库方法(图文)的文章就介绍到这了,更多相关Ubuntu安装与配置KingbaseES内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!