金仓数据库KingbaseES 控制用户连接时间
关键字:
KingbaseES、控制用户连接时间、人大金仓、KingbaseES
控制用户连接时间
Kingbase支持控制用户单次连接数据库的时间,用户连接一定时间后系统会自动断开连接,释放数据库资源,避免单个连接占用资源时间过长。
使用方法
创建用户时可以设置用户的连接时间,若不进行设置则会默认设置为0,即不进行连接时间的限制。创建完用户后,可以使用alter对指定用户的连接时间进行修改。
系统表sys_authid中rolconntime用于记录用户的连接时间单位为秒,当时间为0时,表示不对该用户的连接时间做限制。不支持将用户连接时间设置为负数,可设置的最大值为1999999。
设置指定用户连接时间后,该用户只要一连接上数据库,系统就会获取表sys_authid中记录的对应用户的连接时间并开始计时,计时到指定时间就会断开用户的连接,释放用户占有的资源。
备份和还原这种需要指定用户连接数据库的操作同样会受到连接时间的影响,所以需要较长时间使用备份还原功能的用户建议设置合适长度的时间,或者不限制连接时间。
- 创建用户并设置连接时间
拥有create role权限的用户在创建新用户时可以通过with选项中的connection time来实现设置新用户的连接时间。若在创建新用户时不指定连接时间限制,系统会将时间默认设置为0,表示不对新用户的连接时间进行限制。不支持将连接时间设置为负数。
例如:create user username with connection time xxx;
2. 修改用户的连接时间
拥有create role权限的用户在使用alter语句修改用户时,可以通过with选项中的connection time来实现修改指定用户的连接时间。修改时用户需要对被修改用户拥有修改权限,例如普通用户无法修改超级用户的连接时间。将时间修改为0表示不对用户进行连接时间的限制,不支持将连接时间设置为负数。
例如:alter user username with connection time xxx;