本文主要是介绍Oracle报错SYSTEM系统表空间满解决办法:ORA-01653: unable to extend table SYS.AUD$ by 8192 in tablespace,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天连接plsql突然报错,字面意思是说无法为审计表分配空间。如下图:
解决步骤
1.第一步:查询表空间的使用比,来确定是谁占用的比较多,sql语句为
select a.tablespace_name as "表空间名", a.bytes / 1024 / 1024 as "表空间大小(M)", (a.bytes - b.bytes) / 1024 / 1024 as "已使用空间(M)", b.bytes / 1024 / 1024 "空闲空间(M)" , round(((a.bytes - b.bytes) / a.bytes) * 100, 2) "使用比" 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;
2.第二步:确定是SYSTEM后,为其扩展表空间,自动增加5000M并且没有限制sql语句为
alter database datafile 'D:\app\Administrator\oradata\SGBGT\system01.dbf' autoextend on next 5000M maxsize unlimited;
还可用其它语句扩展表空间:
给表空间增加数据文件,并允许自动增长:
ALTER TABLESPACE SYSTEM ADD DATAFILE 'D:\app\Administrator\oradata\SGBGT\system03.dbf' SIZE5000M AUTOEXTEND ON NEXT 5000M MAXSIZE 20000M;
手工改变已存在数据文件大小
alter database datafile 'D:\app\Administrator\oradata\SGBGT\system01.dbf' resize 40000M;
修改表空间数据文件大小为不限制的语句为:
alter databasedatafile 'D:\app\Administrator\oradata\SGBGT\system01.dbf' autoextend on maxsize unlimited;
创建表空间数据文件大小为不限制的语句为:
create tablespacedemo2 datafile 'D:\app\Administrator\oradata\SGBGT\system03.dbf' size 1000M autoextend on maxsizeunlimited;
其它原因
如果扩展表空间后没有效果,请查看表空间所在磁盘是否已满
这篇关于Oracle报错SYSTEM系统表空间满解决办法:ORA-01653: unable to extend table SYS.AUD$ by 8192 in tablespace的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!