ORACLE系统表空间SYSTEM占满无法扩充表空间问题解决过程

ORACLE系统表空间SYSTEM占满无法扩充表空间问题解决过程


数据库连接问题解决过程
ORA-02002
ORA-00604
ORA-01653


ERROR at line 1:
ORA-01119: error in creating database file '+DATADG/'
ORA-17502: ksfdcre:4 Failed to create file +DATADG/
ORA-15041: diskgroup "DATADG" space exhausted


2018年3月26日早上,登录数据库发现无法连接,报错内容截图如下:


 



解决过程:
1.分析:分析确定问题:根据报错初步确定是系统表空间占用率过高导致无法正常连接使用数据库


2.登录:无法通过PLSQL登录,使用XShell远程连接服务器,使用sqlplus登录sys用户的sysdba
sqlplus sys/password@10.0.0.0:1521/DBNAME as sysdba


2.查询:通过查询表空间发现SYSTEM表空间占用99.99%,空闲空间剩余0M
表空间使用率查询SQL
select f.tablespace_name tablespace_name,
       round((d.sumbytes / 1024 / 1024 / 1024), 2) total_g,
       round(f.sumbytes / 1024 / 1024 / 1024, 2) free_g,
       round((d.sumbytes - f.sumbytes) / 1024 / 1024 / 1024, 2) used_g,
       round((d.sumbytes - f.sumbytes) * 100 / d.sumbytes, 2) used_percent
  from (select tablespace_name, sum(bytes) sumbytes
          from dba_free_space
         group by tablespace_name) f,
       (select tablespace_name, sum(bytes) sumbytes
          from dba_data_files 
          where tablespace_name in  ('SYSTEM')
         group by tablespace_name) d
 where f.tablespace_name = d.tablespace_name     
 order by used_percent desc,d.tablespace_name;




3.扩充表空间容量
 通过增加数据库系统表空间数据问题件大小alter tablespace SYSTEM add datafile '+DATADG/' size 1024m,报错内容为
ERROR at line 1:
ORA-01119: error in creating database file '+DATADG/'
ORA-17502: ksfdcre:4 Failed to create file +DATADG/
ORA-15041: diskgroup "DATADG" space exhausted


根据提示,确定存储容量不足,无法创建1024M大小的文件,修改扩充容量大小后执行报错,截图如下:
 


查询存储容量大小
 
发现存储Free_MB剩余96M(此处是存储设备,相当于硬盘剩余容量)
由此,明确问题主要原因是系统表空间SYSTEM占满,扩充表空间无法扩充是由于存储容量不足,表空间无法扩充。


既然如此,解决办法有两种:
方法一:通过释放其他表空间占用资源腾出存储空闲空间,再扩充SYSTEM表空间
方法二:通过删除SYSTEM表空间内数据释放SYSTEM本身的空间


本次解决采用方法二,删除SYS.AUD$表,即执行truncate table SYS.SUD$
SYS.SUD$表存储的是系统审计信息,一般用不到,直接删除即可。


删除后,查看表空间占用率只有16.17%
 


登录数据库测试,正常登录,问题解决。


由此,问题已解决。但并非长久之计,需及时扩充存储硬件资源,扩充容量,防止该问题再次发生。
  • 0
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DOCKER007

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值