由于项目需要,所以使用的人大金仓这个国产库,今天在idea中突然报错显示:致命错误: 对不起, 已经有太多的客户

网上一查原来是之前配置的kingbase.conf配置文件中虽然配置了max_connections=100,但是由于弄的授权文件是开发版,导致最大连接数限制在了最大10(蛋疼)

img

解决办法:去官网下载企业版的授权文件替换并重启kingbase即可解决。

  1. 下载企业版授权文件 - 点我去下载

  2. 替换服务器中的授权文件

  3. 替换配置文件,一般配置文件在ES/V9或者V8/data 目录下 ,记得备份原文件后再进行企业授权文件上传

  4. 给新的授权文件加权限

    1
    2
    chown -R kingbase:kingbase license.dat 
    chmod 751 license.dat
  5. 重启kingbase

  6. 重启后进入sys_log目录下,查看startup.log文件,如果没有出现将max_connect的值设置为10的话,就代表成功替换了企业授权文件。

    img


以下是几个linux命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
查看文件的最新xx条数据
tail -f [log文件名] -n [要查看多少条数据]
-----------------------------------------------------------------------------------------
--查找配置文件
find / -name kingbase.conf
-----------------------------------------------------------------------------------------
--查看最大连接数
cat /opt/Kingbase/ES/V9/data/kingbase.conf|grep connection
-----------------------------------------------------------------------------------------
--查看会话进程
ps -ef | grep kingbase
-----------------------------------------------------------------------------------------
进入命令行:在bin目录下 ./ksql -p 54321 -U system test 后输入密码
停止数据库 service kingbase stop
启动数据库 service kingbase start
重启数据库 service kingbase restart
查看数据库服务状态 service kingbase status

相关sql语句

1
2
3
4
5
6
7
8
9
10
-- 查看最大并发连接量
show max_connections;
-- 查看当前连接数
select connections();
-- 查看连接详情
select * from sys_stat_activity;
-- 关闭空闲连接
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE state='idle';
--查询license有效期
select GET_LICENSE_VALIDDAYS();