oracle 表空间tablespace_name 文件满了,扩充方法

当然:还是建议在简历表空间时就让其自动扩充的,代码如下:(注意倒数三行)

create tablespace prmms_log  
logging   
datafile 'C:\app\Administrator\product\11.2.0\dbhome_1\database\prmms_log.dbf'  
size 50m  
autoextend on   
next 50m maxsize 20480m  
extent management local;


好吧,假如你和博主一样给忘了,就跟着博主的步骤来吧:

1、用dba的用户登陆进去

2、查询一下该库表空间情况

SELECT a.tablespace_name "表空间名",
a.bytes / 1024 / 1024 "表空间大小(M)",
(a.bytes - b.bytes) / 1024 / 1024 "已使用空间(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

3、我们会看到表空间prmms_log使用率90%多了,查看一下这个表空间有多少个文件

SELECT file_name,
tablespace_name,
bytes / 1024 / 1024 "bytes MB",
maxbytes / 1024 / 1024 "maxbytes MB"
FROM dba_data_files
WHERE tablespace_name = 'prmms_log';

4、博主的表空间只有一个文件,既然我们的项目都报错了,肯定就是没有允许自动扩展了,但是是查一下为好:

SELECT file_id, file_name, tablespace_name, autoextensible, increment_by
FROM dba_data_files
WHERE tablespace_name = 'prmms_log'
ORDER BY file_id desc;

5、伤心了,当时的确是没有让自动扩展。那怎么办呢?我们要么加文件,要么增加文件大小...博主想了想,还是不加文件了,直接让表空间自动增长吧:

alter database datafile 'C:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\PRMMS_GIS2' autoextend on;

路径是第三步查出来的。

ok,再次插入数据成功了!

把另外两种方法也贴上来吧:

(1):直接增加文件大小

alter database datafile 'C:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\PRMMS_GIS2' resize 1500M;

(2):增加一个文件

alter tablespace prmms_log add datafile 'C:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\PRMMS_GIS2_add' size 5000M
autoextend on maxsize 20G;


转载于:https://my.oschina.net/u/1864532/blog/296895

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值