记一次oracle表空间不足的错误


今天在和别人对接报文的时候,发现从昨天开始,报文没有接收成功,仔细看日志发现日志报错了:

 <span style="font-size:18px;">Caused by: java.sql.SQLException: ORA-01691: Lob 段 PAY.SYS_LOB0000092436C00015$$ 无法通过 1024 (在表空间 TS_COSCO_DEFAULT 中) 扩展
</span>


查资料原因是:表空间满了。


1.查数据库文件所在位置:

select name from v$datafile;
Select * FROM DBA_DATA_FILES



因为是RAC环境,没找到文件的具体位置。


2.linux服务器上,查看磁盘空间是否满了。



3.查看表空间的是否满了

--查看表空间物理文件的名称及大小 

<span style="font-size:18px;"> SELECT tablespace_name, 
file_id, 
file_name, 
round(bytes / (1024 * 1024), 0) total_space 
FROM dba_data_files 
ORDER BY tablespace_name; </span>


查看表空间的使用情况 
<span style="font-size:18px;">SELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name 
FROM dba_free_space 
GROUP BY tablespace_name; </span>
<span style="font-size:18px;">SELECT a.tablespace_name, 
a.bytes total, 
b.bytes used, 
c.bytes free, 
(b.bytes * 100) / a.bytes "% USED ", 
(c.bytes * 100) / a.bytes "% FREE " </span>
<img src="https://img-blog.csdn.net/20160329121356576?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

4.查看表空间没有满,想不通是什么问题了,再查表空间自动增长值。

select file_id, tablespace_name,autoextensible, increment_by
from dba_data_files where tablespace_name='TS_COSCO_DEFAULT';</span>


    

AUTOEXTENSIBLE为NO, 自动扩展没有开启。

找到问题了,果断开启。

5.开启自动扩展

<span style="font-size:18px;">alter database datafile 6 autoextend on next 20M;</span>

RAC环境下

alter database datafile FILE_ID autoextend on; 默认是 增长8k 多空间。


如果是数据量比较大,扩展的表空间设置大一点,性能会更好一点。

直接设置20M。

开启自动扩展功能语法:
alter database datafile '对应的数据文件路径信息' autoextend on;
关闭自动扩展功能语法:
alter database datafile '对应的数据文件路径信息' autoextend off;


OK, 问题解决.

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值