因为工作需要后续要引入使用人大金仓的数据库,本次先尝试在虚拟机环境完成人大金仓的数据库安装工作,特记录如下。
本次选择使用Ubuntu Server 22.04.2 LTS版本,下载地址如下:
获取Ubuntu服务器版https://cn.ubuntu.com/server
本次采用在Windows10环境下进行试验,首选使用Hyper-V进行安装,默认内存:1024MB,安装步骤不再赘述。
本次选择使用人大金仓的KingbaseES_V008R003C002B0340_Lin64_install.iso,刚好笔者手边有V8-R3的安装介质,就不重复下载了。没有的同学可以访问人大金仓官网下载试用最新版本。
人大金仓https://www.kingbase.com.cn/rjcxxz/index.htm
本次选择使用开发版本的授权文件,同样可以在人大金仓官网进行下载试用。下载之后解压可以看文件名称为:license_27148_0.dat
>sudo apt-get update #获取更新
>sudo apt-get install -y language-pack-zh-hans
>sudo apt-get install -y language-pack-zh-hant
>sudo useradd kingbase #创建用户 kingbase
>sudo usermod -a -G sudo kingbase #为kingbase用户授权sudo权限
本次计划在根下创建/kingbase目录,用于安装介质、数据、应用及授权文件
>mkdir /kingbase
>mkdir /kingbase/cdrom #存放安装介质
>mkdir /kingbase/data #存放数据库数据文件
>mkdir /kingbase/kingbase #存放应用主程序
>mkdir /kingbase/license #存放授权文件
>sudo chown -R kingbase:kingbase /kingbase #更新文件用户属组
>su kingbase #切换到人大金仓用户 kingbase
>cd /home/kingbase #如无相关目录可手动创建 mkdir /home/kingbase
>vi .bashrc #编辑环境变量文件
#输入如下内容
export KINGBASE_HOME=/kingbase/kingbase
export KINGBASE_DATA=/kingbase/data
export LD_LIBRARY_PATH=$PATH:/kingbase/kingbase/Server/lib
export PATH=$PATH:/kingbase/kingbase/Server/bin
export LANG=zh_CN.UTF8
export KINGBASE_PORT=54321
>source .bash_profile #若操作系统没有source命令,可以手工安装
另外,还需要编辑 .profile文件,用于重启后自动执行.bash,文件内容下
vi .profile
#输入如下内容
#if running bash
if [ -n "$BASH_VERSION" ]; then
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
1)在顶部菜单中选择媒体->插入磁盘->选择
KingbaseES_V008R003C002B0340_Lin64_install.iso文件
2)在操作系统中使用如下命令挂载安装介质
>sudo mkdir /mnt/cdrom #创建挂载点
>sudo mount /dev/sr0 /mnt/cdrom #将光驱设备挂载到文件目录
mount: /mnt/cdrom: WARNING: source write-protected, mounted read-only. #提示如下信息
>ls /mnt/cdrom
setup setup.sh #总共两个文件
>sudo mount -o loop KingbaseES_V008R003C002B0340_Lin64_install.iso /mng/cdrom
将license_27148_0.dat文件上传到虚拟机/kingbase/license文件下
>ls /kingbase/license
-rw-rw-r-- 1 kingbase kingbase 3253 May 28 12:52 license_27148_0.dat
>/mnt/cdrom/setup.sh
【选项1-安装新的实例】
【选择Y,一路回车即可】
【选择1,完全安装】
【输入授权文件路径(保护路径和文件名),确认】
【输入计划安装人大金仓应用的目录,本次输入/kingbase/kingbase,确认】
【输入计划存储数据文件的路径,本次输入/kingbase/data,必须确保文件目录下为空】
【采用默认端口,直接回车】
【采用默认用户SYSTEM(注意用名称区分大小字母),密码要妥善保管】
【选择1,UTF8】
【选择2,大小写敏感,回车继续】
【总结,步骤和提升都比较到位,安装比较顺利】
由于本次使用开发版本License文件,需要修改数据库配置文件kingbase.conf,主要修改3处内容:最多连接数的配置信息,将最大连接数max_connections修改为10,将两个保留连接数修改为3
>cd /kingbase/data #进入数据库数据文件目录
>vi kingbase.conf #打开编辑器进行更新
#在文件中更新如下信息
max_connections = 10 # (change requires restart)
superuser_reserved_connections = 3 # (change requires restart)
super_manager_reserved_connections = 3 # (change requires restart)
在安装应用路径下,进入 Scripts 目录,本次命令需要切换使用root用户
>su root #切换使用root用户
>cd /kingbase/kingbase/Scripts #本示例数据库应用安装目录为 /kingbase/kingbase
>./root.sh #执行root.sh脚本将金仓数据库应用加入到系统服务中,可实现自启动
可使用系统服务操作命令进行启动、停止数据库应用
>systemctl start kingbase8d #启动数据库实例,其中kingbase8d是名称是root.sh中创建服务时配置的服务名称
>systemctl stop kingbase8d #停止数据库实例
>systemctl status kingbase8d #查看数据库应用运行状态
(一)创建测试数据库
本次使用createdb命令创建一个测试数据库,该命令文件在安装目录下 Server/bin中
>cd /kingbase/kingbase/Server/bin #其中 /kingbase/kingbase 为数据库安装目录
>./createdb -USYSTEM test #使用SYSTEM用户创建一个test的数据库,注意用户名SYSTEM为大写
(二)使用KSQL验证基本操作
本次使用ksql命令在test库中,创建一张数据库表
>cd /kingbase/kingbase/Server/bin #其中 /kingbase/kingbase 为数据库安装目录
>./ksql -USYSTEM test #使用SYSTEM连接test数据库,注意用户名SYSTEM为大写
>test=# #数据交互命令提示符
>test=# create table student (id int,name varchar(20)); #创建一张数据库表student
(三)客户端验证
本次使用dbeaver通用数据库客户端工具建立连接,进行验证。如有需要的同学可以从官网进行下载,DBeaver Community | Free Universal Database Tool
1、安装DBeaver并添加人大金仓数据库jdbc驱动
2、创建连接并验证测试
本示例参考如下连接信息,使用SYSTEM用户连接到test数据库
【连接信息如上图】
【验证信息如上图】
本次将在Ubuntu环境下安装人大金仓数据库做了记录,瑾供参考,如有疏漏之处,敬请见谅。