在很多年前有个项目用的金仓数据库,上线稳定后就没在这个项目了,只有公司的开发环境还在维护,已经好多年没有安装过了,重温一下金仓数据库安装,体验一下最新版本,也做一个新版本的试验环境;
- 一、下载软件
软件下载地址:电科金仓-成为世界卓越的数据库产品与服务提供商 (kingbase.com.cn)
本次安装centos所以下载x86,右上角可以选择需要的版本
- 二、安装前准备
1、关闭防火墙和selinux
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
2、修改hosts
host_ip=$(ip addr | grep inet | grep ens33 | awk '{print $2}' | awk -F/ '{print $1}')
echo "$host_ip `hostname`" >> /etc/hosts
3、配置内核参数sysctl.conf
直接计算输出到sysctl.conf
memTotal=$(grep MemTotal /proc/meminfo | awk '{print $2}')
totalMemory=$((memTotal / 2048))
shmall=$((memTotal / 4))
if [ $shmall -lt 2097152 ]; then
shmall=2097152
fi
shmmax=$((memTotal * 1024 - 1))
if [ "$shmmax" -lt 4294967295 ]; then
shmmax=4294967295
fi
cat <<EOF>>/etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = $shmall
kernel.shmmax = $shmmax
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.conf.eth0.rp_filter = 1
net.ipv4.conf.eth1.rp_filter = 2
EOF
4、配置资源参数limits.conf
cat >>/etc/security/limits.conf <<EOF
* soft nofile 65536
* hard nofile 65535
* soft nproc 65536
* hard nproc 65535
* soft core unlimited
* hard core unlimited
EOF
5、创建用户和目录
useradd -m kingbase
echo "king123" | passwd --stdin kingbase
mkdir -p /Kingbase/ES/V9/server
mkdir /Kingbase/ES/V9/data
chown -R kingbase:kingbase /Kingbase
6、配置环境变量
cat >>.bash_profile<<EOF
export PATH=/Kingbase/ES/V9/Server/bin:\$PATH
export KINGBASE_DATA=/Kingbase/ES/V9/data
EOF
- 三、数据库安装
本次采用静默安装,配置好响应文件,不用一直选择
1、挂载介质
mkdir /dvd
mount -r KingbaseES_V009R001C001B0030_Lin64_install.iso /dvd
2、编辑响应文件
cp /dvd/setup/silent.cfg /soft
vi silent.cfg
#修改如下
3、执行安装
cd /dvd
./setup.sh -i silent -f /soft/silent.cfg
日志查看,日志在安装目录/Logs下
cd /Kingbase/ES/V9/install/Logs
安装完后Server等目录都是KESRealPro目录对应的软连接,data目录为真实目录
4、注册服务
#用root执行
/Kingbase/ES/V9/install/script/root.sh
5、连接测试
ksql -p 54321 -U system test
select version()
整体比较顺畅,官网文档感觉稍微有点乱建议整理一下
学而时习之,温故而知新