下载地址
https://www.kingbase.com.cn/xzzx/index.htm
安装指南
https://bbs.kingbase.com.cn/documentGuide?recId=d16e9a1be637c8fe4644c2c82fe16444
介绍
金仓数据库管理系统[简称:KingbaseES]是北京人大金仓信息技术股份有限公司(简称人大金仓)自主研发的、具有自主知识产权的商用关系型数据库管理系统(DBMS)。该产品面向事务处理类应用,兼顾各类数据分析类应用,可用做信息管理系统、业务及生产系统、决策支持系统、全文检索、地理信息系统等的承载数据库。
KingbaseES支持多种操作系统和硬件平台:支持Linux、Windows、国产Kylin等数十个操作系统产品版本,支持通用x86_64及国产龙芯、飞腾、申威等CPU硬件体系架构。
针对不同类型的客户需求,KingbaseES提供标准版、企业版、专业版、开发版等多种版本。这些版本构建于同一数据库引擎上,不同平台版本完全兼容。
KingbaseES软件能够提供一主一备以及一主多备的高可用集群架构,实现数据及实例级 (异地) 故障容灾,也能够提供多节点并行服务,内存融合及存储共享,实现高并发性能利用最大化,结合读写分离或备份使用同步实现数据保护最大化。
开发版:
面向感兴趣的个人学习和实验使用。Windows平台开发版不提供高可用性管理、性 能、安全、读写分离集群等高级特性。除Windows以外的平台提供全部功能。免费 使用,限制10个连接。
License说明
数据库license是KingbaseES提供的授权文件,其中会对数据库有效日期、发布类型、最大并发连接数、mac地址、ip等信息进行设置。如果在license文件中信息与安装环境中相关信息不匹配,数据库将无法启动。
硬件环境要求
KingbaseES支持通用X86_64、龙芯、飞腾、鲲鹏等国产CPU硬件体系架构。
● CPU:X86、龙芯、飞腾、鲲鹏
● 内存:512MB以上
● 硬盘:11GB以上空闲空间
软件环境要求
KingbaseES支持各种主流的Linux操作系统64位发行版本,包括CentOS、中标麒麟、银河麒麟、统信UOS、Deepin、凝思、中科方德、欧拉等操作系统。
安装包准备
您可以通过人大金仓官网下载对应平台的安装程序,也可以通过人大金仓的销售人员、售后支持人员或代理商获取安装程序。
假设拿到的安装包文件是KingbaseES_V009R001C001B0030_Lin64_install.iso,查看其MD5值:
md5sum KingbaseES_V009R001C001B0030_Lin64_install.iso
注意: /tmp目录需要至少10G空间。如果安装过程中出现存储空间不足的情况,请先释放足够的磁盘空间,再执行安装程序。如果硬件配置不满足要求,需要更换满足要求的硬件设备再进行安装。
配置内核参数
您可以参考内核参数查看命令(最新的系统,需参考系统的用户手册)检查内核参数。
若内核参数与参考值不一致,您可通过编辑/etc/sysctl.conf文件修改参数
cat <<-EOF>>/etc/sysctl.conf
fs.aio-max-nr= 1048576
fs.file-max= 6815744
kernel.shmall= 2097152
kernel.shmmax= 7008067574
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
EOF
## 生效配置
sysctl -p
资源配置
限制用户可使用的资源数量对系统的稳定性非常重要,可以通过调整资源限制数量改进系统性能:
cat <<-EOF>>/etc/security/limits.conf
kingbase soft nofile 65536
kingbase hard nofile 65536
kingbase soft nproc 65536
kingbase hard nproc 65536
kingbase soft core unlimited
kingbase hard core unlimited
EOF
查看操作系统
cat /etc/os-release
创建用户
建议在所有服务器上创建 KES 产品的安装用户 kingbase,而非使用 root 身份执行安装部署:
useradd -d /home/kingbase -m kingbase
echo "kingbase:Admin@2024" | chpasswd
id kingbase
用户id=1001(kingbase) 组id=1001(kingbase) 组=1001(kingbase)
创建目录
为了利于数据库的日常运维、持续使用、存储扩容等,我们在安装前必须做好选项、存储目录规划:
目录 安装软件存储目录: /KingbaseES/install
备份目录: /KingbaseES/backup
归档目录: /KingbaseES/archive
数据存储目录: /KingbaseES/V9/data
KES 安装目录: /KingbaseES/V9
端口 54321
SYSTEM 密码 Admin@2024
数据库编码格式 UTF8
创建安装所需目录并且授权:
mkdir -p /KingbaseES/V9 /KingbaseES/V9/data /KingbaseES/backup /KingbaseES/archive /KingbaseES/install
chown -R kingbase:kingbase /KingbaseES
chmod -R 775 /KingbaseES
## 注意:DATA 目录这里必须要授权 700,否则后续数据库无法启动
chmod -R 700 /KingbaseES/V9/data
配置环境变量(可选)
cat <<-\EOF>>/home/kingbase/.bash_profile
export KES_HOME=/KingbaseES/V9/Server
export LD_LIBRARY_PATH=$KES_HOME/lib:/lib:/usr/lib
export PATH=$KES_HOME/bin:/usr/sbin:$PATH
export PS1="[`whoami`@`hostname`:"'$PWD]$ '
EOF
安装包的挂载与取消
iso格式的安装程序包需要先挂载才能使用。挂载iso文件需要使用root用户。比如挂载的目录是iso文件同级目录KingbaseES,您可以运行如下命令进行挂载:
su
mount KingbaseES_V009R001C001B0030_Lin64_install.iso ./KingbaseESV8
## 将挂载出来的安装文件拷贝到 /install 目录下
[root@kes install]# cp -r /root/KingbaseESV8/* /KingbaseES/install
[root@kes install]# ll
-rw-r--r-- 1 root root 2502940672 9月 24 21:23 KingbaseES_V009R001C001B0030_Lin64_install.iso
dr-xr-xr-x 2 root root 91 9月 24 21:24 setup
-r-xr-xr-x 1 root root 3932 9月 24 21:25 setup.sh
赋予kingbase权限
chown -R kingbase:kingbase install/
启动安装程序(命令行)
图形化安装支持中文和英文的安装界面。根据操作系统的语言设置会显示对应语言的安装界面。您可以执行如下命令查看操作系统的语言设置:
echo $LANG
如果系统显示值包含“zh_CN”,则为中文语言,安装程序会显示中文内容。否则,您可以执行如下命令修改语言设置为中文:
注意需要在kingbase用户下执行
export LANG=zh_CN.UTF-8
查看一下 setup.sh 的帮助命令
su - kingbase
cd /KingbaseES/install/
./setup.sh -i silent -h
检查 /tmp 目录
KES 安装对于 /tmp 目录有一定要求,至少需要 10G 空间,否则安装时会报警并使用 kingbase 用户家目录作为替代:
[kingbase@localhost.localdomain:/KingbaseES/install]$ ./setup.sh -i silent -h
Now launch installer...
警告:/tmp 磁盘空间不足!正在尝试将 /home/kingbase 用于安装基础和 tmp dir。
.Usage: install [-f <path_to_installer_properties_file> | -options]
(to execute the installer)
手动挂载 /tmp 目录空间:
cat<<-EOF>>/etc/fstab
tmpfs /tmp tmpfs size=10G 0 0
EOF
mount -o remount /tmp
df -h | grep /tmp
命令行安装
启动安装程序
接下来开始进行命令行安装过程。您首先进入安装程序中setup.sh所在目录,以kingbase用户执行如下命令:
sh setup.sh -i console
如果不想安装也可以输入 quit
取消。
命令执行后,将会启动安装程序。
回车继续安装,下面这一部分全都是许可协议,一路回车即可:
许可确认 (重点)
安装路径确认
端口和安装数据路径确认
设置用户名和密码
字符集
数据库兼容模式
安装完成
使用 root 用户执行脚本
/KingbaseES/V9/install/script/root.sh
最后启动成功就行。
启动与停止
如果想启动或停止数据库服务,进入${安装目录}/Server/bin目录执行如下命令:
#启动服务
sys_ctl -w start -D ${Data文件目录} -l "${Data文件目录}/sys_log/startup.log"
#停止服务
sys_ctl stop -m fast -w -D ${Data文件目录}
安装后检查
查看安装日志
在${安装目录}/Logs目录下,存在名称为 “install.log” 的日志文件,其中记录了安装过程的所有信息。您可以打开日志文件,查看如下所示安装结果信息判断是否安装正确。
查看已安装数据库的版本信息
[kingbase@localhost.localdomain:/KingbaseES/V9/Server/bin]$ ./kingbase --version
KINGBASE (KingbaseES) V009R001C001B0030
连接数据库(参考)
cd /opt/Kingbase/ES/V8/Server/
登录数据库
./ksql -U system -W test
数据查询
test=#
test=# \l
数据库列表
名称 | 拥有者 | 字元编码 | 校对规则 | Ctype | 存取权限
-----------+--------+----------+-------------+-------------+-------------------
kingbase | system | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
security | system | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
template0 | system | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/system +
| | | | | system=CTc/system
template1 | system | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/system +
| | | | | system=CTc/system
test | system | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
(5 行记录)
test=#
test=#
# 创建数据库
test=# create database shopping;
CREATE DATABASE
test=#
test=#
test=# \c shopping;
口令:
您现在以用户名"system"连接到数据库"shopping"。
shopping=#
shopping=#
# 创建表
shopping=# create table shop(id int ,name varchar(100));
CREATE TABLE
shopping=#
shopping=#
# 查看表
shopping=# \d shop
数据表 "public.shop"
栏位 | 类型 | 校对规则 | 可空的 | 预设
------+-----------------------------+----------+--------+------
id | integer | | |
name | character varying(100 char) | | |
shopping=#
# 写入数据
shopping=#
shopping=# insert into shop values(101, '维达纸巾'),(102, '卫龙辣条');
INSERT 0 2
shopping=#
shopping=#
# 查询数据
shopping=# select * from shop;
id | name
-----+----------
101 | 维达纸巾
102 | 卫龙辣条
(2 行记录)
shopping=#
shopping=#
windows 客户端连接
PostgreSQL客户端:由于Kingbase是基于PostgreSQL开发的,因此可以直接使用PostgreSQL的客户端工具进行连接。用户只需在新建连接时选择PostgreSQL类型,并填入相应的IP地址、默认数据库、用户名和密码即可
dbeaver 安装
dbeaver 是免费开源的连接数据库客户端工具, 在官网 https://dbeaver.io/download/下载
相应操作系统的安装包。