登陆oracle客户端,突然报错,无法登陆。报错如图。
问题定位:肯定是表空间满了,扩充或者给已经满的表空间添加新的数据文件。
解决方案:我采用给已满(一般超过32G)的表空间添加新的数据文件。
SELECT A.tablespace_name AS "tableSpaceName",A.bytes / 1024 / 1024 AS "tableSpace(M)",(A.bytes - b.bytes) / 1024 / 1024 AS "UsedSpace(M)",b.bytes / 1024 / 1024 "kongXian(M)", round(((A.bytes - b.bytes) / A.bytes) * 100, 2) "Used Rate" FROM(SELECT tablespace_name,SUM(bytes) bytes FROM dba_data_files GROUP BY tablespace_name)A,(SELECT tablespace_name,SUM (bytes) bytes, MAX(bytes) largest FROM dba_free_space GROUP BY tablespace_name) b WHERE A.tablespace_name = b.tablespace_name ORDER BY ((A.bytes - b.bytes) / A.bytes) DESC; //查看哪个空间满了。 我这里是SYSTEM 满了。
alter TABLESPACE SYSTEM add datafile '/home/oracle/app/oracle/oradata/orcl/system02.dbf' size 32767M;//给表空间SYSTEM 添加新的数据文件system02.dbf
ALTER DATABASE DATAFILE '/home/oracle/app/oracle/oradata/orcl/system02.dbf' AUTOEXTEND ON;//打开自动增长
ALTER DATABASE DATAFILE '/home/oracle/app/oracle/oradata/orcl/system02.dbf' AUTOEXTEND ON NEXT 50M ;//每次自动增长50m
重新登陆,一切正常,搞定!