报错截图:
经排查服务器物理空间未沾满,数据库进程正常启动。
分析后得知,登录时会在SYS_AUDIT_USERLOG表中插入数据(记录用户登录信息),此表存在于GLOBAL库,应该是服务长期运行后GLOBAL库数据文件大小已达到16G。
解决方案有三种:
1)单用户进入后台,添加GLOBAL文件(新版本支持),此方法因故障服务器版本低未验证。
./kingbase --single -D /dbdata/data/data/ EMS
backend> ALTER SYSTEM ADD GLOBAL TABLESPACE CATALOG DATAFILE(NAME=GLOBAL FILENAME='GLOBAL.DBF' SIZE=100 MAXSIZE=16000 FILEGROWTH=10);
2)单用户进入后台后,利用函数清理SYS_AUDIT_USERLOG并进行此表的VACUUM。已验证有效。
backend>call sys_del_user_logonlog_by_name();
backend>VACUUM SYS_AUDIT_USERLOG;
3)修改数据库配置参数user_logonlog_level的值为0,相当于关闭记录功能。已验证有效。