KingbaseES V9R1C10 版本安装指南

大家好,这里是公众号 DBA学习之路,分享一些学习国产数据库路上的知识和经验。

@TOC

前言

金仓 V9R1C10 版本面向全市场发布,具备 Oracle、MySQL、SQL Server、PostgreSQL 四种兼容模式,在保留 V9R1C2B14 版本能力基础上,持续增强 SQLServer 能力兼容。

该版本全面兼容 SQL Server 的常用数据类型、语法及功能,优化 PLSQL 开发能力,兼容 SQL Server 事务管理(BEGIN/COMMIT/ROLLBACK)及嵌套事务,强化触发器、游标操作和元数据管理能力,有效提升开发效率,可轻松应对各类复杂业务场景。

本文主要记录人大金仓 KES V9 V9R1C10 版的安装步骤以及经验总结,让大家更容易安装 KingbaseES,安装过程很丝滑。

环境准备

本文演示环境为:

主机名 版本 CPU 内存 硬盘
kes 银河麒麟V10 x86 16G 100G

系统安装建议不要使用最小化,可能确实必要命令(ifconfig,unzip 等),对新手不是很友好。

安装包下载

金仓官网提供安装软件介质,直接访问:下载中心

选择对应版本以及系统类型下载即可,下载完成后建议进行版本校验认证:

bash 复制代码
$ md5sum KingbaseES_V009R001C010B0004_Lin64_install.iso
9b39aaceb8611b1bbc587274cb58f126  KingbaseES_V009R001C010B0004_Lin64_install.iso

## 官方 MD5 校验码
9B39AACEB8611B1BBC587274CB58F126

如不是从官方渠道下载,则必须要与官方提供的校验码需保持一致,校验无误后,则可以放心使用。

安装前配置

检查操作系统版本

检查操作系统版本信息:

bash 复制代码
[root@kesv9 ~]# cat /etc/os-release
NAME="Kylin Linux Advanced Server"
VERSION="V10 (Lance)"
ID="kylin"
VERSION_ID="V10"
PRETTY_NAME="Kylin Linux Advanced Server V10 (Lance)"
ANSI_COLOR="0;31"

关闭防火墙

数据库安装均建议关闭防火墙:

bash 复制代码
[root@kesv9 ~]# systemctl stop firewalld
[root@kesv9 ~]# systemctl disable firewalld
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

创建用户

如果有密码复杂性要求,不想设置密码太复杂的话,可以取消密码复杂度:

bash 复制代码
[root@kesv9 ~]# sed -i 's/^password\+[[:space:]]\+requisite[[:space:]]\+pam_pwquality.so/#&/g' /etc/pam.d/system-auth
[root@kesv9 ~]# sed -i 's/use_authtok$//' /etc/pam.d/system-auth

建议在所有服务器上创建 KES 产品的安装用户 kingbase,而非使用 root 身份执行安装部署:

bash 复制代码
[root@kesv9 ~]# useradd -d /home/kingbase -m kingbase
[root@kesv9 ~]# echo "kingbase:kingbase" | chpasswd
[root@kesv9 ~]# id kingbase
用户id=1001(kingbase) 组id=1001(kingbase) 组=1001(kingbase)

创建目录

为了利于数据库的日常运维、持续使用、存储扩容等,我们在安装前必须做好选项、存储目录规划:

选项 设置
目录 安装软件存储目录: /install 备份目录: /backup 归档目录: /archive 数据存储目录: /data KES 安装目录: /KingbaseES/V9
端口 54321
SYSTEM 密码 kingbase
数据库编码格式 UTF8

创建安装所需目录并且授权:

bash 复制代码
[root@kesv9 ~]# mkdir -p /KingbaseES/V9 /data /backup /archive /install
[root@kesv9 ~]# chown -R kingbase:kingbase {/KingbaseES,/data,/backup,/archive,/install}
[root@kesv9 ~]# chmod -R 775 {/KingbaseES,/backup,/archive,/install}
## 注意:DATA 目录这里必须要授权 700,否则后续数据库无法启动
[root@kesv9 ~]# chmod -R 700 /data

系统参数配置

为了避免在 KingbaseES 安装和使用过程中出现问题,官方建议调整系统内核参数:

bash 复制代码
# 物理内存(KB)
os_memory_total=$(awk '/MemTotal/{print $2}' /proc/meminfo)
# 获取系统页面大小,用于计算内存总量
pagesize=$(getconf PAGE_SIZE)
((shmall = (os_memory_total - 1) * 1024 / pagesize))
((shmmax = os_memory_total * 1024 - 10))
# 如果 shmall 小于 2097152,则将其设为 2097152
((shmall < 2097152)) && shmall=2097152
# 如果 shmmax 小于 4294967295,则将其设为 4294967295
((shmmax < 4294967295)) && shmmax=4294967295

复制以上命令,直接执行即可计算得出这两个参数值:

bash 复制代码
[root@kesv9 ~]# echo $shmall
3775905
[root@kesv9 ~]# echo $shmmax
15466110966

根据官方建议值,配置系统参数文件:

bash 复制代码
[root@kesv9 ~]# 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

## 生效配置
[root@kesv9 ~]# sysctl -p

资源配置

限制用户可使用的资源数量对系统的稳定性非常重要,可以通过调整资源限制数量改进系统性能:

bash 复制代码
[root@kesv9 ~]# 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

配置 RemoveIPC

systemd-logind 服务中引入的一个特性 RemoveIPC,会造成程序信号丢失等问题,只有Redhat7 及以上和一些特殊的国产Linux的版本需要修改,改之前可先查看此项是否为默认yes),需要设置 RemoveIPC=no:

bash 复制代码
[root@kesv9 ~]# sed -i 's/#RemoveIPC=no/RemoveIPC=no/' /etc/systemd/logind.conf
[root@kesv9 ~]# grep RemoveIPC /etc/systemd/logind.conf
RemoveIPC=no
# 重新加载 systemd 守护进程并重启 systemd-logind 服务生效
[root@kesv9 ~]# systemctl daemon-reload
[root@kesv9 ~]# systemctl restart systemd-logind.service

配置环境变量

这一步官方文档没有提到,是以我安装其他数据库的经验添加:

bash 复制代码
[root@kesv9 ~]# cat<<-\EOF>>/home/kingbase/.bash_profile
export KES_HOME=/KingbaseES/V9/Server
export LD_LIBRARY_PATH=$KES_HOME/lib:/lib:/usr/lib:/usr/lib64
export PATH=$KES_HOME/bin:/usr/sbin:$PATH
export PS1="[`whoami`@`hostname`:"'$PWD]$ '
EOF

环境配置方面到这就结束了,没有看到关于 selinux,swap 以及透明大页这些配置的要求,所有也就没有多此一举了。

KES 安装

V9R1C10 版本安装方式跟之前不太一样,安装只是安装 Kingbase 软件,数据库实例通过 kconsole.sh 来管理。

安装 ISO 挂载

KES 的安装包和达梦的类似,都是 iso 格式的,iso 格式的安装包需要先挂载才能使用。

挂载 iso 文件需要使用 root 用户,安装包上传在 /install 目录,挂载到 /mnt 目录下:

bash 复制代码
[root@kesv9 ~]# cd /install/
[root@kesv9 install]# ls
KingbaseES_V009R001C010B0004_Lin64_install.iso
[root@kesv9 install]# mount -o loop KingbaseES_V009R001C010B0004_Lin64_install.iso /mnt/
mount: /mnt: WARNING: source write-protected, mounted read-only.
## 挂载目录下可以看到 setup 目录和 setup.sh 脚本
[root@kesv9 soft]# ll /mnt/
dr-xr-xr-x 3 root root 2048  6月 26  2023 setup
-r-xr-xr-x 1 root root 4299  6月 26  2023 setup.sh
## 将挂载出来的安装文件拷贝到 /install 目录下
[root@kesv9 install]# cp -r /mnt/* /install
[root@kesv9 install]# ll
dr-xr-xr-x 3 kingbase kingbase   65  8月 26 23:59 setup
-r-xr-xr-x 1 kingbase kingbase 4299  8月 26 23:59 setup.sh
## 复制完成后取消安装 iso 的挂载
[root@kesv9 install]# umount /mnt

此时 /mnt 已经和 iso 文件解除挂载关系,在 /mnt 目录下不会再看到安装相关文件。

配置语言环境

图形化安装支持中文和英文的安装界面,根据操作系统的语言设置会显示对应语言的安装界面,可以执行如下命令查看操作系统的语言设置:

bash 复制代码
[root@kesv9 install]# echo $LANG
zh_CN.UTF-8
## 显示值包含"zh_CN",则为中文语言,否则为英文;我安装系统时选的中文,所以是中文环境
## 如何不是也可以手动切换为中文
export LANG=zh_CN.UTF-8

设置好语言环境后,切换为安装用户 kingbase,进入安装程序 setup.sh 所在目录:

bash 复制代码
## 由于之前 root 复制的安装文件权限为 root,所以需要重新授权 kingbase 用户
[root@kesv9 install]# chown -R kingbase:kingbase /install
[root@kesv9 install]# su - kingbase
[kingbase@kesv9 ~]$ cd /install/
[kingbase@kesv9 install]$ ls
KingbaseES_V009R001C010B0004_Lin64_install.iso  setup  setup.sh

查看一下 setup.sh 的帮助命令:

bash 复制代码
[kingbase@kesv9:/install]$ ./setup.sh --help
Usage: setup.sh <options>
<options> may be:
        --help                  show this help, then exit
        -i [ swing | console | silent ] specify the user interface mode for the installer
        -f <file>  specify silent installer properties file

接下来就可以开始进行 KingbaseES 的安装了。

命令行安装

命令行安装与图形化安装其实差不多,大概演示一下安装过程。

启动安装程序

启动安装程序:

bash 复制代码
[kingbase@kesv9:/install]$ ./setup.sh -i console
Java Version: 1.8.0_312
Now launch installer...
Command line arguments: -console -language chn 
================================================================================
欢迎使用KingbaseES安装程序
----
 
欢迎使用本安装程序!

本安装程序旨在为您提供方便快捷的安装体验。
在开始安装之前,请注意以下几点:

退出应用程序:
    在安装过程中,我们建议退出所有正在运行的应用程序,
    以确保安装程序顺利进行,您可以在安装完成后重新打开这些应用程序。

保存文档:
    在继续本次安装之前,请确保您已保存并关闭所有打开的文档。
    这可以防止因安装过程中需要重启电脑而导致数据丢失。

可能需要重启:
    本次安装可能需要重启您的电脑以完成安装过程。
    请不要担心,这是为了确保安装的完整性和稳定性。
    安装程序会在需要重启时提醒您。

安装前准备:
    在继续安装之前,建议您查看安装程序提供的系统要求和注意事项,
    这将有助于您顺利完成安装并获得最佳使用体验。

谢谢您使用KingbaseES,
如果您在安装过程中遇到任何问题或需要帮助,请随时联系我们的技术支持团队。
祝您使用愉快!

按下 [ENTER] 下一步, [Q] 退出程序 [默认: <ENTER>]

================================================================================
许可协议
----

...协议内容省略

请输入 [1]接受, [2]拒绝, [3]重新展示:
1
================================================================================
添加Licence
----
 
不选择授权文件,则使用软件自带试用版授权
提示:请在有效期内及时更换正式授权文件
 
输入授权文件地址: [默认:  ]


输入字母N进入下一步, 输入字母P返回上一步, 输入字母Q退出修改程序 [默认: N]

================================================================================
选择安装路径
----
 
请选择一个安装目录。
您想在哪一个位置安装?  
缺省安装文件夹: /opt/Kingbase/ES/V9
 
输入一个绝对路径,或按ENTER键以接受缺省路径 [默认: /opt/Kingbase/ES/V9]
/KingbaseES/V9
----------------------------------
安装文件夹为:/KingbaseES/V9
  是否正确?(Y/N)

请选择
----------------------------------
输入 Y 是, N 否:  [默认: Y]

输入字母N进入下一步, 输入字母P返回上一步, 输入字母Q退出修改程序 [默认: N]

================================================================================
选择安装集
----
 
  1- 完全安装
    最常用的应用程序功能组件。建议大多数用户采用此选项。

  2- 服务器安装
    只安装数据库服务。

  3- 定制安装
    选择此选项以定制要安装的功能部件。

输入"安装集"的号码,或按ENTER键以接受缺省值 [默认: 1]
1
================================================================================
安装预览
----
 
安装目录:
    /KingbaseES/V9

已安装组件:
    引导组件
    产品手册
    数据库运维工具
    数据库服务器
    高可用组件
    接口
    数据库集群部署工具
    数据库迁移工具
    数据库开发工具(CS)

未安装组件:


磁盘空间信息(用于安装目标)
  所需空间: 3,710.93 MB, 可用空间: 77.51 GB

输入字母N进入下一步, 输入字母P返回上一步, 输入字母Q退出修改程序 [默认: N]

================================================================================
安装进度
----
 
====
开始安装
架构: 6.0.0-SNAPSHOT-b32da3 (kInstaller)
平台: linux,version=4.19.90-52.22.v2207.ky10.x86_64,arch=x64,symbolicName=null,javaVersion=1.8.0_312
[ Starting to unpack ]
[ Processing package: install (1/9) ]
[ Processing package: doc (2/9) ]
[ Processing package: Suptools (3/9) ]
[ Processing package: Server (4/9) ]
[ Processing package: KingbaseHA (5/9) ]
[ Processing package: Interface (6/9) ]
[ Processing package: DeployTool (7/9) ]
[ Processing package: KDTS (8/9) ]
[ Processing package: KStudio (9/9) ]
[ Unpacking finished ]
安装完成
[ Starting processing ]
Starting process modifyexecute (1/3)
Starting process modifyFiles (2/3)
The beginning of Repair File Contents.
Running modifyFilesValue.sh...
Repair deploy.ini...Complete.
Repair File Contents Finish. 


Starting process packtools (3/3)
安装成功 100%
================================================================================
快捷方式
----
 
------
创建快捷方式
------
输入 Y 是, N 否:  [默认: Y]

创建快捷方式属主: 1:当前用户;2:所有用户 [默认: 1]

选择快捷方式的程序组: [默认: KingbaseESV009R001]

================================================================================
恭喜您!安装完成
----
 

  恭喜您!安装完成

  安装目录:
    /KingbaseES/V9

  
    引导组件:/KingbaseES/V9/KESRealPro/V009R001C010/install
    产品手册:/KingbaseES/V9/KESRealPro/V009R001C010/doc
    数据库运维工具:/KingbaseES/V9/KESRealPro/V009R001C010/SupTools
    数据库服务器:/KingbaseES/V9/KESRealPro/V009R001C010/Server
    高可用组件:/KingbaseES/V9/KESRealPro/V009R001C010/KingbaseHA
    接口:/KingbaseES/V9/KESRealPro/V009R001C010/Interface
    数据库集群部署工具:/KingbaseES/V9/KESRealPro/V009R001C010/ClientTools/guitools/DeployTools
    数据库迁移工具:/KingbaseES/V9/KESRealPro/V009R001C010/ClientTools/guitools/KDts
    数据库开发工具(CS):/KingbaseES/V9/KESRealPro/V009R001C010/ClientTools/guitools/KStudio


如需初始化数据库,请启动Kconsole:
/KingbaseES/V9/Server/bin/kconsole.sh
手动初始化数据库:
/KingbaseES/V9/Server/bin/initdb -U "system" -W -D "/KingbaseES/V9/data"
[ Writing the uninstaller data ... ]
[ 命令行安装完成 ]

命令行模式到这就安装结束了,说实话安装过程十分麻烦(吐槽:光是许可协议输出就一堆),不建议使用这种方式。

静默安装(非常建议)

静默安装我感觉是最方便的,只需要配置参数文件之后,一条命令即可完成安装。

静默安装模式下,安装程序通过读取配置文件来安装数据库。安装包 iso 文件挂载后,setup 目录下已存在 silent.cfg 模板文件,需要根据实际安装机器的情况修改参数值。

配置文件的参数可参考:

参数名 默认值 说明
INSTALL_PATH /opt/Kingbase/ES/V9 安装目录绝对路径,必须指定,否则报错退出安装过程。路径分隔符使用/'。
LICENSE_PATH 授权文件的绝对路径,如果指定该参数,就会选择用户指定的license文件;如果未指定,则会使用软件自带试用版授权,请在有效期内及时更换正式授权文件。
COMPONENTS Server,Interface, KingbaseHA, KStudio,KDTS, DeployTool 1) SERVER,服务器 2) INTERFACE,接口 3) KINGBASEHA,高可用组件 4) KSTUDIO,数据库开发管理工具 5) KDTS,数据库迁移工具 6) DEPLOY,数据库部署工具 多值用逗号分隔。大小写不敏感。如果是错误的组件名称则忽略。
CREATE_SHORTCUT yes 是否创建创建方式,yes:创建;no:不创建
SHORTCUT_USER 1 用户范围,1:当前用户;2:所有用户
SHORTCUT_GROUP_NAME KingbaseES V009R001 快捷方式组名,默认:KingbaseESV009R001

查看默认的配置参数文件内容:

bash 复制代码
[kingbase@kesv9:/install]$ grep -v "^\s*\(#\|$\)" /install/setup/silent.cfg 
INSTALL_PATH=/opt/Kingbase/ES/V9
LICENSE_PATH=
COMPONENTS=Server,Interface,KingbaseHA,DeployTool,KDTS,KStudio
CREATE_SHORTCUT=yes
SHORTCUT_USER=1
SHORTCUT_GROUP_NAME=KingbaseESV009R001

根据需求修改对应的参数值:

bash 复制代码
[kingbase@kesv9:/install]$ vi /install/setup/silent.cfg
## 修改以下内容
INSTALL_PATH=/KingbaseES/V9

修改后的配置文件内容:

bash 复制代码
[kingbase@kesv9:/install]$ grep -v "^\s*\(#\|$\)" /install/setup/silent.cfg 
INSTALL_PATH=/KingbaseES/V9
LICENSE_PATH=
COMPONENTS=Server,Interface,KingbaseHA,DeployTool,KDTS,KStudio
CREATE_SHORTCUT=yes
SHORTCUT_USER=1
SHORTCUT_GROUP_NAME=KingbaseESV009R001

修改完配置文件后,进入安装程序所在目录,以 kingbase 用户执行如下命令:

bash 复制代码
## -f 参数指定修改后配置文件的相对或绝对路径,相对路径是指相对 setup/silent.cfg 的相对路径。
[kingbase@kesv9:/install]$ ./setup.sh -i silent -f /install/setup/silent.cfg
Java Version: 1.8.0_312
Now launch installer...
Command line arguments: -options /install/setup/silent.cfg -language chn 
====
开始安装
架构: 6.0.0-SNAPSHOT-b32da3 (kInstaller)
平台: linux,version=4.19.90-52.22.v2207.ky10.x86_64,arch=x64,symbolicName=null,javaVersion=1.8.0_312
[ Starting to unpack ]
[ Processing package: install (1/9) ]
[ Processing package: doc (2/9) ]
[ Processing package: Suptools (3/9) ]
[ Processing package: Server (4/9) ]
[ Processing package: KingbaseHA (5/9) ]
[ Processing package: Interface (6/9) ]
[ Processing package: DeployTool (7/9) ]
[ Processing package: KDTS (8/9) ]
[ Processing package: KStudio (9/9) ]
[ Unpacking finished ]
安装完成
[ Starting processing ]
Starting process modifyexecute (1/3)
Starting process modifyFiles (2/3)
The beginning of Repair File Contents.
Running modifyFilesValue.sh...
Repair deploy.ini...Complete.
Repair File Contents Finish. 


Starting process packtools (3/3)
安装成功 100%
[ Writing the uninstaller data ... ]
[ 命令行安装完成 ]

安装完成。

初始化实例

新版本需要使用 Kconsole 进行初始化数据库实例(需要图形化界面):

高级配置:

数据库实例创建完成。

当然,也还是可以使用 initdb 来创建数据库实例:

bash 复制代码
kingbase@kesv9:/home/kingbase]$ initdb --help
initdb 初始化一个 Kingbase 数据库簇.

使用方法:
  initdb [选项]... [DATADIR]

选项:
  -A, --auth=METHOD               本地连接的默认身份验证方法
      --auth-host=METHOD          本地 TCP/IP 连接的默认身份验证方法
      --auth-local=METHOD         本地套接字连接的默认身份验证方法
  -c, --config-protect            启用加密的配置文件,默认值为 false
 [-D, --kingbase_data=]DATADIR    此数据库集群的位置
  -E, --encoding=ENCODING         为新数据库设置默认编码
  -g, --allow-group-access        允许组读取/执行数据目录
      --locale=LOCALE             为新数据库设置默认区域设置
      --lc-collate=LOCALE, --lc-ctype=LOCALE, --lc-messages=LOCALE
      --lc-monetary=LOCALE, --lc-numeric=LOCALE, --lc-time=LOCALE
                                  在相应的类别中为设置默认语言环境
                                  新数据库(默认从环境中获取)
      --no-locale                 等效于 --locale=C
      --enable-ci                 使用不区分大小写初始化数据库集群
      --enable-file-checksums     初始化数据库集群,启用校验数据文件md5
      --pwfile=FILE               从文件中读取新超级用户的密码
  -T, --text-search-config=CFG
                                  缺省文本搜索配置
  -U, --username=NAME             数据库超级用户名
  -W, --pwprompt                  提示输入新超级用户的密码
  -X, --waldir=WALDIR             预写日志目录的位置
      --wal-segsize=SIZE          WAL 段的大小,以兆字节为单位
  -m, --dbmode=MODE               设置数据库模式(缺省值为 oracle)
  -e, --encrypt-algorithm=METHOD  指定加密方法
      --encrypt-device-lib=DEVLIB 指定加密设备lib
      --encrypt-driver-lib=DRVLIB 指定加密驱动lib
      --encrypt-maxkey-len=KEYLEN 指定加密密钥的最大len
      --encrypt-align-num=ALIGN   指定加密对齐编号
  -t, --aud-tblspc-enc            启用系统审计表空间加密
  -K, --enckey=KEY                指定系统审核表加密密钥
  -M, --passwordcheck             为 initdb 启用用户密码检查
  -I, --identity-pwdexp           启用用户密码过期检查
      --ssoname=NAME              数据库安全性管理员
      --saoname=NAME              数据库审计管理员
      --init-audit-rules          启动初始化审计规则
      --block-size=SIZE           以 kB 为单位设置表块大小,默认为8kB
      --segment-size=SIZE         以MB为单位设置数据文件段大小

非普通使用选项:
  -d, --debug                     生成大量调试输出
  -k, --data-checksums            使用数据页校验和
  -a, --checksum-algorithm=ALOGRITHM
        指定页面校验和算法,crc, sm3或sm3_hmac
  -h, --hmac-key = KEY
        指定 hmac KEY,64 字节 ASCII 字符串.校验和 算法必须是sm3_hmac 
  -L DIRECTORY                    在何处查找输入文件
  -n, --no-clean                  出错后不清理
  -N, --no-sync                   不要等待更改安全地写入磁盘
  -s, --show                      显示内部设置
      --sync-method=METHOD        显示内部设置
  -S, --sync-only                 仅同步数据目录

其它选项:
  -V, --version                   输出版本信息, 然后退出
  -?, --help                      显示此帮助信息, 然后退出

如果没有指定数据目录, 将使用环境变量 KINGBASE_DATA

报告错误至 <kingbase-bugs@kingbase.com.cn>.

这里不过多演示。

连接测试

连接 KES 数据库,查看版本信息:

bash 复制代码
[kingbase@kesv9:/home/kingbase]$ kingbase -V
kingbase (KingbaseES) V009R001C010
[kingbase@kesv9:/home/kingbase]$ ksql test system
授权类型: 企业版.
输入 "help" 来获取帮助信息.

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

test=# show database_mode;
 database_mode 
---------------
 oracle
(1 行记录)

KES 卸载

安装学会了,自然也要知道如何卸载 KES,卸载一般都很简单。

使用静默方式进行卸载(kingbase 用户执行):

bash 复制代码
## 进入安装目录下的 Uninstall 目录下执行
[kingbase@kesv9:/install]$ cd /KingbaseES/V9/Uninstaller/
## 如果是通过静默安装方式安装的,可以不加 -i 参数,否则必须附加 -i 参数
kingbase@kesv9:/KingbaseES/V9/Uninstaller]$ ./startUninstall.sh -i silent
java version "1.8.0_92"
Java(TM) SE Runtime Environment (build 1.8.0_92-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode)

The uninstaller has put a log file: /tmp/kinstaller669521931819492759.log
Uninstaller is launching...

卸载过程没有提示信息,等待卸载过程完成即可。

📢 注意:对于初始化生成的文件或程序运行中生成的文件,卸载过程当中无法自动删除(这个我认为是非常合理的,卸载软件不删除数据,是为了保护数据),需要再退出卸载程序后手动删除。

KES 常用命令

分享一些 KES 常用运维命令:

bash 复制代码
# 停止数据库服务
[kingbase@kesv9:/home/kingbase]$ sys_ctl stop -D /data/
等待服务器进程关闭 .... 完成
服务器进程已经关闭
# 启动数据库服务
[kingbase@kesv9:/home/kingbase]$ sys_ctl start -D /data/
等待服务器进程启动 ....2025-08-27 00:52:49.785 CST [86138] LOG:  请尽快配置有效的归档命令做WAL日志文件的归档
2025-08-27 00:52:49.797 CST [86138] LOG:  sepapower扩展初始化完成
2025-08-27 00:52:49.807 CST [86138] LOG:  正在启动 KingbaseES V009R001C010
2025-08-27 00:52:49.807 CST [86138] LOG:  正在监听IPv4地址"0.0.0.0",端口 54321
2025-08-27 00:52:49.807 CST [86138] LOG:  正在监听IPv6地址"::",端口 54321
2025-08-27 00:52:49.809 CST [86138] LOG:  在Unix套接字 "/tmp/.s.KINGBASE.54321"上侦听
2025-08-27 00:52:49.916 CST [86138] LOG:  日志输出重定向到日志收集进程
2025-08-27 00:52:49.916 CST [86138] HINT:  后续的日志输出将出现在目录 "/data/sys_log"中.
 完成
服务器进程已经启动
# 查看数据库进程
[kingbase@kesv9:/home/kingbase]$ ps -ef | grep kingbase: | grep -v grep
kingbase   85991   85989  0 00:49 ?        00:00:00 kingbase: kes: logger   
kingbase   85993   85989  0 00:49 ?        00:00:00 kingbase: kes: checkpointer   
kingbase   85994   85989  0 00:49 ?        00:00:00 kingbase: kes: background writer   
kingbase   85995   85989  0 00:49 ?        00:00:00 kingbase: kes: walwriter   
kingbase   85996   85989  0 00:49 ?        00:00:00 kingbase: kes: autovacuum launcher   
kingbase   85997   85989  0 00:49 ?        00:00:00 kingbase: kes: archiver   
kingbase   85998   85989  0 00:49 ?        00:00:00 kingbase: kes: stats collector   
kingbase   85999   85989  0 00:49 ?        00:00:00 kingbase: kes: kwr collector   
kingbase   86000   85989  0 00:49 ?        00:00:00 kingbase: kes: ksh writer   
kingbase   86001   85989  0 00:49 ?        00:00:00 kingbase: kes: ksh collector   
kingbase   86002   85989  0 00:49 ?        00:00:00 kingbase: kes: logical replication launcher 

今天的分享到这结束,如果有好的建议或者错误请留言,我会及时纠正,谢谢。


📚 推荐阅读:DBA 学习之路

如果这篇文章对你有帮助,推荐访问我的 Oracle DBA 系统学习站点,涵盖 100 天完整学习路线:

  • 🔧 Oracle 安装部署 · RMAN 备份恢复 · Data Pump 数据迁移
  • 🏗️ RAC 高可用 · DataGuard 容灾 · 多租户架构
  • 🔍 故障排查 · 升级迁移 · GoldenGate 数据同步

👉 立即访问 ora100.com →

相关推荐
Lucifer三思而后行2 小时前
⭐️ LeetCode解题系列 ⭐️ 194. 转置文件(Shell)
后端
Lucifer三思而后行2 小时前
⭐️ LeetCode解题系列 ⭐️ 185. 部门工资前三高的所有员工(Oracle dense_rank函数)
后端
Lucifer三思而后行2 小时前
Linux 配置 Swap 功能
后端
Lucifer三思而后行2 小时前
⭐️ LeetCode解题系列 ⭐️ 177. 第N高的薪水(Oracle dense_rank函数)
后端
Lucifer三思而后行2 小时前
Linux 执行 df -h 卡着不动,HANG 住了,怎么破?
后端
Lucifer三思而后行2 小时前
Linux 多台主机配置 ssh 互信脚本
后端
Lucifer三思而后行2 小时前
【KWDB创作者计划】_KaiwuDB 2.1.0 单节点裸机部署
后端
Lucifer三思而后行2 小时前
KingbaseES V9R1C10 兼容 Oracle 分区表特性
后端
Lucifer三思而后行2 小时前
⭐️ LeetCode解题系列 ⭐️ 178. 分数排名(Oracle dense_rank函数)
后端