现象
Oracle 常用的账号无法登录,持续显示如下错误:
排除
起初认为密码被修改,但尝试其它账号都无法登录。
最后,使用sysdba账号登录成功。
检查全部账号状态
SELECTusername,account_status,lock_date,expiry_dateFROMdba_usersORDERBYusername;发现常用账号状态都正常
检查表状态
SELECT a.tablespace_name, ROUND(a.total_gb,2)AS total_gb, ROUND(a.total_gb - b.used_gb,2)AS free_gb, ROUND((a.total_gb - b.used_gb)/ a.total_gb *100,2)AS free_percent, ROUND(b.used_gb / a.total_gb *100,2)AS used_percent, a.autoextensible FROM(SELECT tablespace_name, SUM(bytes)/1024/1024/1024 AS total_gb, MAX(autoextensible)AS autoextensible FROM dba_data_files GROUP BY tablespace_name)a,(SELECT tablespace_name, SUM(bytes)/1024/1024/1024 AS used_gb FROM dba_segments GROUP BY tablespace_name)b WHERE a.tablespace_name=b.tablespace_name(+)ORDER BY free_percent ASC;所有表正常,但是发现SYSAUX表,被用掉99.96%的空间。
检查表文件
SELECT file_id, file_name, bytes/1024/1024/1024 AS size_gb, maxbytes/1024/1024/1024 AS maxsize_gb, autoextensible FROM dba_data_files WHERE tablespace_name='SYSAUX';目前发现这个表只有一个数据库文件,接下来准备扩展这个表。
为表添加空间
ALTER TABLESPACE SYSAUX ADD DATAFILE'D:\APP\ADMINISTRATOR\ORADATA\GDLISNET\SYSAUX02.DBF'SIZE 10240M AUTOEXTEND ON NEXT 512M MAXSIZE UNLIMITED;测试
全部账号可以正常登录,问题排查结束。