暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

【金仓数据库产品体验官】KingbaseES(SQLServer兼容版)安装

原创 飞天 2025-09-09
267

KingbaseES(SQLServer兼容版)单机部署

KES 软件下载

https://www.kingbase.com.cn/download.html
image.png

license下载

image.png
image.png

安装前准备

硬件环境要求

KingbaseES支持通用X86_64、飞腾、鲲鹏等国产CPU硬件体系架构。
image.png

软件环境要求

KingbaseES支持各种主流的Linux操作系统64位发行版本,包括CentOS、中标麒麟、银河麒麟、统信UOS、Deepin、凝思、中科方德、欧拉等操作系统。

主机、目录规划

主机名 ip地址 OS版本 内存、CPU 节点角色 数据库端口
node1 192.*.*.60 centos7.9 4G 、 1个双核 主节点 54321

软件包:/soft/KingbaseES_V009R004C012B0006_Lin64_install.iso

#检查安装包的MD5值或者SHA1值是否和官网上的一致,如果不一致,说明安装文件可能不完整,安装过程可能无法正常完成。 md5sum KingbaseES_V009R004C012B0006_Lin64_install.iso sha1sum KingbaseES_V009R004C012B0006_Lin64_install.iso

license文件:/soft/license_V009R002C_oracle.dat
软件安装目录 /opt/kes/v9
数据存放目录 /data

关闭SELINUX

# vi /etc/selinux/config
修改SELINUX=disabled
或者
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

关闭防火墙

# systemctl disable firewalld.service
# systemctl stop firewalld.service
# systemctl status firewalld

关闭RemoveIPC

systemd-logind服务中引入的一个特性,是当一个用户退出系统后,会删除所有有关的IPC对象。该特性由/etc/systemd/logind.conf文件中的RemoveIPC参数控制。某些操作系统会默认打开,会造成程序信号丢失等问题(只有redhat7及以上和一些特殊的国产Linux的版本需要修改,改之前可先查看此项是否为默认yes)。

 (1) 修改/etc/systemd/logind.conf文件中的“RemoveIPC”值为“no”
# cat >> /etc/systemd/logind.conf <<EOF
RemoveIPC=no
EOF

(2) 修改/usr/lib/systemd/system/systemd-logind.service文件中的“RemoveIPC”值为“no”
# cat >> /usr/lib/systemd/system/systemd-logind.service <<EOF
RemoveIPC=no
EOF
(3) 重启服务
systemctl daemon-reload
systemctl restart systemd-logind.service

(4) 结果验证
loginctl show-session | grep RemoveIPC
systemctl show systemd-logind | grep RemoveIPC
说明:没有输出是正常的。

配置sudo权限(可选)

cat  >>/etc/sudoers << EOF
kingbase ALL=(ALL) NOPASSWD:ALL
EOF

设置内核参数

# cat >> /etc/sysctl.conf <<EOF
#added by kingbase
kernel.sem=5010 64128000 50100 1280             # 设置信号量
kernel.shmmni=8192                              # 设置系统级信号资源
fs.file-max=7672460                             # 文件句柄数量上限(系统级)
vm.overcommit_memory=2                          # 设置内存分配策略
vm.overcommit_ratio=90                          # 设置内存分配时的比例
net.ipv4.ip_local_port_range=9000 65500         # 对外连接端口范围
EOF

sysctl -p 生效

设置资源限制

# cat >> /etc/security/limits.conf <<EOF
#added by kingbase
* soft nofile 65536
* hard nofile 65535
* soft nproc 65536
* hard nproc 65535
* soft core unlimited
* hard core unlimited
EOF

创建用户及用户组

# groupadd -g 1101 kingbase
# useradd -g kingbase -u 1101 -m kingbase
# passwd kingbase

创建软件安装目录并授权

# mkdir -p /opt/kes/v9
# chown -R kingbase:kingbase /opt/kes/v9

创建数据目录并授权

数据目录是KingbaseES中存放数据文件的目录,默认是在安装目录下的data目录。也可以与安装目录分开单独设置。本次安装单独设置数据目录/data。

# mkdir -p /data
# chown -R kingbase:kingbase /data

KES安装包挂载

# mount -o loop /soft/KingbaseES_V009R004C012B0006_Lin64_install.iso /mnt/

命令行安装

主要安装过程如下:

# su - kingbase
$ cd /mnt

## 命令行安装
主要安装过程如下:
```language
# su - kingbase
$ cd /mnt
$ ./setup.sh -i console
1、接受许可协议
2、选择安装方式
  ->1- Full
    2- Client
    3- Custom
3、选择license文件:
   File Path: /soft/license_sqlserver.dat
4、选择软件安装文件夹
   ENTER AN ABSOLUTE PATH, OR PRESS <ENTER> TO ACCEPT THE DEFAULT
      : /opt/kes/v9 
5、选择数据目录文件夹
   Data folder (Default: /opt/kes/v9/data): /data
6、输入端口
   Please enter database service listened port, default 54321.
   Port (Default: 54321): 
5、输入数据库管理用户和密码
   Please enter database administrator user name.
   User: (Default: system): 
   Please Enter the Password: Please Enter the Password:******
6、输入服务器字符集编码
   Please enter server character set encoding.
    1- default
  ->2- UTF8
    3- GBK
    4- GB2312
    5- GB18030
ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT: 2
7、输入数据库的区域设置
Please enter the Database Locale.
    1- C
  ->2- zh_CN.UTF-8
    3- en_US.UTF-8
ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT: 2
8、输入数据库模式
Please enter database mode.
  ->1- SQL Server
ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT: 
9、输入数据库block大小
   Please enter block size used in storing data.
  ->1- 8k
    2- 16k
    3- 32k
ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT: 1
10、输入加密方法
   Please enter the encrypt method.
  ->1- scram-sha-256
    2- scram-sm3
    3- sm4
    4- sm3
 ENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT: 1
11、自定义参数
   Please enter database custom parameters.
   Custom (Default:  ): 
12、初始化数据库
   The database will be initialized, which may take some time. Please be patient.
   PRESS <ENTER> TO CONTINUE: 
14、安装完成
Congratulations. KingbaseES V9 has been successfully installed to:
/opt/kes/v9
If you want to register KingbaseES V9 as OS service, please run
    /opt/kes/v9/install/script/root.sh
PRESS <ENTER> TO EXIT THE INSTALLER: 
Complete.
15、root用户注册kingbase服务
root用户执行 /opt/kes/v9/install/script/root.sh

至此数据库安装完成。安装完成后,数据库是启动的。

配置kingbase用户环境变量

cat >>/home/kingbase/.bashrc<<EOF
export KINGBASE_DATA=/data
export PATH=$PATH:/opt/kes/v9/Server/bin
export LANG=zh_CN.UTF8
export KINGBASE_PORT=54321
EOF

环境变量生效:

source /home/kingbase/.bashrc

启停KES服务

# systemctl start kingbased
# systemctl status kingbased
# systemctl stop kingbased

数据库连接测试

ksql连接测试

[kingbase@node1 ~]$ ksql -U system -d test
用户 system 的口令:
Licesen Type: SALES-企业版.
输入 "help" 来获取帮助信息.

test=# 
# 查看数据库连接信息
test=# \conninfo
以用户 "system" 的身份,通过套接字"/tmp"在端口"54321"连接到数据库 "test"

# 查看数据库版本

test=# select version();
         version         
-------------------------
 KingbaseES V009R004C012
(1 行记录)

# 查看数据库兼容模式
test=# show database_mode;
 database_mode 
---------------
 sqlserver
(1 行记录)

test=# 

# 查看数据库列表
test=# \l
                                        数据库列表
   名称    | 拥有者 | 字元编码 |  校对规则   |    Ctype    | Iculocale |     存取权限      
-----------+--------+----------+-------------+-------------+-----------+-------------------
 kingbase  | system | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | ci_x_icu  | 
 master    | system | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | ci_x_icu  | 
 resource  | system | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | ci_x_icu  | 
 security  | system | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | ci_x_icu  | 
 tempdb    | system | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | ci_x_icu  | 
 template0 | system | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | ci_x_icu  | =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 | ci_x_icu  | 
(8 行记录)

test=# 

# 查看数据库自带的用户列表
test=# \du
                             角色列表
 角色名称 |                    属性                    | 成员属于 
----------+--------------------------------------------+----------
 kcluster | 无法登录                                   | {}
 sao      | 没有继承                                   | {}
 sso      | 没有继承                                   | {}
 system   | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {}

test=# 

# 创建表
test=# create table testtab(id int);
CREATE TABLE

# 查看表
test=# \dt
               关联列表
 架构模式 |  名称   |  类型  | 拥有者 
----------+---------+--------+--------
 public   | testtab | 数据表 | system
(1 行记录)

test=# 

卸载KES

kingbase用户登录系统后,进入${安装目录}/Uninstall目录,执行如下命令,启动卸载程序。

sh Uninstaller -i console

关于作者

网名:飞天,墨天轮2024年度优秀原创作者,拥有 Oracle 10g OCM 认证、PGCE认证、MySQL 8.0 OCP认证以及OBCA、KCP、KCSM、ACP、YCP、磐维等众多国产数据库认证证书,目前从事Oracle、Mysql、PostgresSQL、磐维数据库管理运维工作,喜欢结交更多志同道合的朋友,热衷于研究、分享数据库技术。
微信公众号:飞天online
墨天轮:https://www.modb.pro/u/15197
如有任何疑问,欢迎大家留言,共同探讨~~~

最后修改时间:2025-09-09 13:16:15
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论