Linux 服务器安装 KingbaseES V8R6
参考官方文档:[安装与升级]基于Linux系统的数据库软件安装指南.pdf
一、安装包准备
官方文档要求
准备需要安装的金仓数据库管理系统 KingbaseES |version| 安装程序和 jdk1.8 及以上的 jdk 环境。
说明: 首先确认服务器的架构,根据架构准备相应的安装包文件。否则会在安装过程中出现 “无法执行二进制文件: 可执行文件格式错误” 的问题。
查看系统配置: 查看CPU处理器信息:
lscpu
不光是数据库,JDK也需要准备相应版本的安装包。
准备好了安装包和授权文件,再进行以下操作。
二、预安装工作
1.创建安装用户
官方文档要求
安装数据库时,安装用户对于安装路径需有“读”、“写”、“执行”的权限。
在 Linux 系统中,要以非 root 用户执行安装程序,且该用户要有标准的 home 目录。
groupadd kingbase
useradd kingbase -m -g kingbase
passwd kingbase
输入密码、确认密码
新建用户后会在 home 文件夹下创建 kingbase 目录。 后续可将文件上传到此目录 /home/kingbase ,可以避免在安装过程中出现权限问题(例如证书文件的访问权限,反正安装完成后都是要删除的)。
2. 安装目录
官方文档要求
金仓数据库管理系统 KingbaseES 安装过程中有默认的安装目录 /opt/Kingbase/ES/V8,如果直接使用 kingbase 用户安装,安装过程中将会提示没有权限。 因此,建议在正式安装之前,将安装目录的权限赋予 kingbase 用户: chown -R kingbase:kingbase /opt/Kingbase/ES/V8
mkdir -pv /opt/Kingbase/ES/V8
chown -R kingbase:kingbase /opt/Kingbase/ES/V8
3. 准备安装程序
官方文档要求
iso 格式的安装程序包需要先挂载才能使用。挂载 iso 文件需要使用 root 用户。挂载后在目录下可以看到 setup 目录和 setup.sh 脚本。
在 mnt 文件夹下创建挂载目录 kingbase
mkdir -pv /mnt/kingbase
使用 root 用户挂载 iso 格式安装包(安装包文件和目录以实际为准)
mount -o loop /home/kingbase/KingbaseES_V008R006C006B0013PS003_Lin64_install.iso /mnt/kingbase
三、安装
1. 控制台安装
切换 kingbase 用户安装
su kingbase
cd /mnt/kingbase
sh setup.sh -i console
2. 大小写敏感设置
在安装过程中大部分都可以直接 Enter ,但是在大小写敏感项的时候,需要设置为 No。
3. 执行 root.sh
安装完成,但并没有真正完整结束 根据提示将 Kingbase 注册为系统服务,执行 /opt/Kingbase/ES/V8/install/script/root.sh
官方文档要求
对于 linux 系统,金仓数据库管理系统 KingbaseES V8R6 安装完成后,需执行 root.sh,具体步骤如下: 打开新终端;
切换到 root 用户;
运行 < 安装目录 >/install/script/root.sh 。
Note: linux 中执行 root.sh 成功后,安装过程才真正完整结束。
切换 root 用户,执行 root.sh
su root
sh /opt/Kingbase/ES/V8/install/script/root.sh
四、测试连接
cd /opt/Kingbase/ES/V8/Server/bin
./ksql -U system -d test
\l
五、逻辑还原
1. 创建数据库
create database zasirmp_0824;
退出数据库
\q
2. dmp 文件还原数据库
可在 bin 目录下执行 sys_restore --help ,查看 sys_restore 用法
cd /opt/Kingbase/ES/V8/Server/bin
./sys_restore -U system -d zasirmp_0824 /home/kingbase/DB_2022-08-25_16_08_33.dmp
切换数据库,查看导入表表名
./ksql -U system -d zasirmp_0824
SELECT table_name FROM information_schema.tables WHERE table_schema = 'public';
六、其他
1. ora_input_emptystr_isnull
打开 /opt/Kingbase/ES/V8/data/kingbase.conf 文件
vi /opt/Kingbase/ES/V8/data/kingbase.conf
拉到最最最下面,将参数
ora_input_emptystr_isnull = on
改为
ora_input_emptystr_isnull = off
改完之后保存,重启
2. 查看服务状态
systemctl status kingbase8d.service
3. 重启服务
service kingbase8d restart