单实例场景下更新license步骤
查进程
确定在运行的kingbase服务是在用的服务,避免因多个kingbase服务混淆
[kingbase@node1 V8]$ ps -ef | grep Kingbase
kingbase 3190 1 0 10:06 ? 00:00:00 /KingbaseES/V8/Server/bin/kingbase -D /data查看license信息
license文件位置:安装目录种Server目录平级下
[root@node1 Server]# cat /KingbaseES/V8/license.dat
***省略***
-------------------BEGIN KINGASE.LICENSE.3.0 PRIVATE KEY-------------------
***省略***
----------------------------------MD5SUM-----------------------------------
***省略***
-------------------END KINGASE.LICENSE.3.0 PRIVATE KEY---------------------
License序列号 --- 启用 --- 74FE7946-4378-11EC-AE8E-000C29CBE49F
生产日期 --- 启用 --- 2021-11-12
产品名称 --- 启用 --- KingbaseES V8
细分版本模板名 --- 启用 --- SALES-开发版 V8R6
产品版本号 --- 启用 --- V008R006C
浮动基准日期 ------ 启用
有效期间 --- 启用 --- 0
用户名称 --- 启用 --- 官方网站试用授权
项目名称 --- 启用 --- 官方网站试用授权
***省略***查询license剩余有效期
[kingbase@node1 ~]$ ksql -Usystem test
ksql (V8.0)
输入 "help" 来获取帮助信息.
test=# select get_license_validdays();
get_license_validdays
-----------------------
-2
(1 行记录)获取新license文件
从公司或者人大金仓方面获取license文件,申请时提供数据库版本号
或
自行在官网下载试用版授权文件:https://www.kingbase.com.cn/xzzx/index.html
查找旧license文件
由于安装数据库时指定了license路径,需要找到旧license.dat文件进行替换
位置:安装目录下
可使用find搜索,license文件地址不固定
--进入安装目录
cd $KINGBASE_HOME
ls -l 即可看到 V8R6及以上版本需要注意:license.dat是个软链接
[root@node1 Server]# find / -name license*
/KingbaseES/V8/license.dat替换license文件
V8R3
将旧license备份或改名,新license放到其同级路径下
如果不更改license.dat的属主和属组,重启后失败
--旧license备份或改名
[kingbase@node1 V8]$ cd /KingbaseES/V8/
[kingbase@node1 V8]$ mv license.dat license.dat_bak_`date +%F`
[root@node1 V8]# ls -l
--上传解压后的license文件至/KingbaseES/V8/目录下,并重命名为license.dat
[root@node1 ~]# cd /KingbaseES/V8/
[root@node1 V8]# mv license_29404_0.dat license.dat
[root@node1 V8]# chown -R kingbase:kingbase license.datV8R6
将旧license备份或改名,新license放到其同级路径下
--进入到安装目录
[kingbase@topnet29 ~]$ cd $KINGBASE_HOME
[kingbase@topnet29 V8]$ ls -l
总用量 36
lrwxrwxrwx 1 kingbase kingbase 61 12月 15 2023 ClientTools -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/ClientTools/
drwx------ 24 kingbase kingbase 4096 10月 10 13:20 data
drwxrwxr-x 24 kingbase kingbase 4096 8月 29 17:29 data_bak_20240426
lrwxrwxrwx 1 kingbase kingbase 53 12月 15 2023 doc -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/doc/
lrwxrwxrwx 1 kingbase kingbase 57 12月 15 2023 install -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/install/
lrwxrwxrwx 1 kingbase kingbase 59 12月 15 2023 Interface -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/Interface/
drwxrwxrwx 3 kingbase kingbase 4096 12月 15 2023 KESRealPro
lrwxrwxrwx 1 kingbase kingbase 60 12月 15 2023 KingbaseHA -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/KingbaseHA/
lrwxrwxrwx 1 root root 60 8月 27 11:07 license.dat -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/license.dat
-rw------- 1 kingbase kingbase 779 8月 19 13:42 logfile
drwx------ 24 kingbase kingbase 4096 10月 10 00:00 oradata
lrwxrwxrwx 1 kingbase kingbase 56 12月 15 2023 Server -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/Server/
lrwxrwxrwx 1 kingbase kingbase 58 12月 15 2023 SupTools -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/SupTools/
drwxrwxrwx 6 kingbase kingbase 4096 2月 22 2024 tablespaces
lrwxrwxrwx 1 kingbase kingbase 59 12月 15 2023 Uninstall -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/Uninstall/
--进入到软链接对应的真实目录
[kingbase@topnet29 V8]$ cd /opt/Kingbase/ES/V8/KESRealPro/V008R006C008B0014/
[kingbase@topnet29 V008R006C008B0014]$ ls -l
总用量 60
drwxrwxrwx 7 kingbase kingbase 4096 12月 15 2023 ClientTools
-rwxrwxrwx 1 kingbase kingbase 154 8月 27 10:27 control.so
drwxrwxrwx 8 kingbase kingbase 4096 12月 15 2023 doc
drwxr-xr-x 2 root root 4096 8月 28 15:20 Downloads
drwxrwxrwx 7 kingbase kingbase 4096 12月 15 2023 install
drwxrwxrwx 17 kingbase kingbase 4096 12月 15 2023 Interface
drwxrwxrwx 15 kingbase kingbase 4096 12月 15 2023 KingbaseHA
-rw-r--r-- 1 kingbase kingbase 3676 10月 10 13:18 license.dat
-rwxrwxrwx 1 kingbase kingbase 3676 5月 8 16:21 license.dat.bak
-rw-r--r-- 1 kingbase kingbase 3454 8月 23 11:23 license.dat_bak20240827
-rw-r--r-- 1 kingbase kingbase 3676 8月 27 11:08 license.dat_bak_20241010
-rw-r--r-- 1 kingbase kingbase 3678 5月 9 11:47 license.dat_kaifa_bak_20240823
drwxrwxrwx 6 kingbase kingbase 4096 12月 15 2023 Server
drwxrwxrwx 7 kingbase kingbase 4096 12月 15 2023 SupTools
drwxrwxrwx 5 kingbase kingbase 4096 12月 15 2023 Uninstall
--旧license备份或改名
[kingbase@topnet29 V008R006C008B0014]$ mv license.dat license.dat_bak_`date +%F`
--上传解压后的license文件至/KingbaseES/V8/目录下,并重命名为license.dat
[root@node1 ~]# cd /KingbaseES/V8/
[root@node1 V8]# mv license_29404_0.dat license.dat
[root@node1 V8]# chown -R kingbase:kingbase license.dat如果不更改license.dat的属主和属组,select pg_reload_conf();动态生效后查询有效期select get_license_validdays();不会发生变化。
授权文件生效办法
法一:动态生效(强烈推荐)
该方式不用重启库,前提是数据库运行中能正常访问。
--动态生效,不用重启库
select sys_reload_conf();
select pg_reload_conf();法二:重启数据库服务(不建议)
不建议采用该办法,如果是测试或开发环境倒无所谓。
--查看进程 如果是一个服务器上多个端口的实例需注意被停错库
[root@node1 ~]# ps -ef | grep Kingbase
kingbase 12139 1 0 15:38 ? 00:00:00 /KingbaseES/V8/Server/bin/kingbase -D /data
--停止数据库服务
su - kingbase
sys_ctl stop -D /data
--启动数据库服务
su - kingbase
sys_ctl start -D /data查询license有效期
[kingbase@node1 ~]$ ksql -Usystem test
ksql (V8.0)
输入 "help" 来获取帮助信息.
test=# select get_license_validdays();
get_license_validdays
-----------------------
365
(1 行记录)问题处理
XX000: License file should have write access mode in floating mode
--问题描述
更换授权文件后启动错误
[kingbase@node1 ~]$ sys_ctl restart -D /data
waiting for server to shut down.... done
server stopped
waiting for server to start....致命错误: XX000: License file should have write access mode in floating mode, or use license generating date as base date.
位置: PostmasterMain, postmaster.c:660
stopped waiting
sys_ctl: could not start server
Examine the log output.
[kingbase@node1 ~]$ exit
登出
[root@node1 V8]# pwd
/KingbaseES/V8
[root@node1 V8]# ls -l
总用量 80
drwxrwxr-x. 5 kingbase kingbase 38 5月 18 2023 ClientTools
-rw-------. 1 kingbase kingbase 108 1月 2 15:43 control.so
drwxr-x---. 2 kingbase kingbase 4096 5月 18 2023 desktops
drwxrwxr-x. 7 kingbase kingbase 4096 5月 18 2023 DtsTools
drwxrwxr-x. 2 kingbase kingbase 8192 5月 18 2023 Help
drwxrwxr-x. 17 kingbase kingbase 4096 5月 18 2023 Interface
drwxr-x---. 6 kingbase kingbase 4096 4月 1 2016 jre
-rw-r--r--. 1 root root 3678 1月 2 15:42 license.dat
-rwxr-x---. 1 kingbase kingbase 3351 5月 18 2023 license.dat_bak
-rwxr-x---. 1 kingbase kingbase 11198 4月 9 2020 LICENSE_EN
-rwxr-x---. 1 kingbase kingbase 10366 4月 9 2020 LICENSE_ZH
drwxrwxr-x. 2 kingbase kingbase 57 5月 18 2023 Logs
drwxrwxr-x. 9 kingbase kingbase 4096 5月 18 2023 ManagerTools
drwxr-x---. 2 kingbase kingbase 4096 5月 18 2023 Scripts
drwxrwxr-x. 5 kingbase kingbase 38 5月 18 2023 Server
drwxr-x---. 5 kingbase kingbase 4096 5月 18 2023 Uninstall
drwxrwxr-x. 6 kingbase kingbase 4096 5月 18 2023 xulrunner
--解决办法
授权文件权限需归属kingbase用户组和kingbase用户
[root@node1 V8]# chown kingbase:kingbase license.dat
[root@node1 V8]# su - kingbase
上一次登录:二 1月 2 15:41:37 CST 2024pts/0 上
[kingbase@node1 ~]$ sys_ctl restart -D /data
sys_ctl: PID file "/data/kingbase.pid" does not exist
Is server running?
trying to start server anyway
waiting for server to start....2024-01-02 07:43:36.017 GMT [3126] 警告: max_connections should be less than or equal than 10 (restricted by license)
2024-01-02 07:43:36.017 GMT [3126] 提示: the value of max_connect is set 10
2024-01-02 07:43:36.017 GMT [3126] 警告: max_connections should be less than or equal than 10 (restricted by license)
2024-01-02 07:43:36.017 GMT [3126] 提示: the value of max_connect is set 10
2024-01-02 15:43:36.019 CST [3126] 日志: sepapower extension initialized
2024-01-02 15:43:36.020 CST [3126] 日志: 太多后台工作进程
2024-01-02 15:43:36.020 CST [3126] 详细信息: 当前设置里最多可以注册2个后台工作进程.
2024-01-02 15:43:36.020 CST [3126] 提示: 考虑增大配置参数 "max_worker_processes"的值.
2024-01-02 15:43:36.020 CST [3126] 日志: 太多后台工作进程
2024-01-02 15:43:36.020 CST [3126] 详细信息: 当前设置里最多可以注册2个后台工作进程.
2024-01-02 15:43:36.020 CST [3126] 提示: 考虑增大配置参数 "max_worker_processes"的值.
2024-01-02 15:43:36.021 CST [3126] 日志: 正在启动 KingbaseES V008R006C005B0023 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-46), 64-bit
2024-01-02 15:43:36.021 CST [3126] 日志: 正在监听IPv4地址"0.0.0.0",端口 54321
2024-01-02 15:43:36.021 CST [3126] 日志: 正在监听IPv6地址"::",端口 54321
2024-01-02 15:43:36.022 CST [3126] 日志: 在Unix套接字 "/tmp/.s.KINGBASE.54321"上侦听
2024-01-02 15:43:36.056 CST [3126] 日志: 日志输出重定向到日志收集进程
2024-01-02 15:43:36.056 CST [3126] 提示: 后续的日志输出将出现在目录 "sys_log"中.
done
server started
参考链接:https://blog.csdn.net/weixin_43859729/article/details/121820964
主备集群替换license
需要主备分别替换,替换方式同单实例,无顺序之分。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




