表空间不足的原因以及如何处理

oracle表空间还不够,有 2 原因

1. 原始表空间太小, 尚未设置为自动扩展;

错误代码: 现在-01653: 无法扩展表

2. 表空间已设置为autoextend并且足够大, 但是数据大小

大于当前表空间的最大大小 (32国标)

我正在尝试将dmp文件导入到专门的表空间, 但dmp文件的大小为217GB.

所以我遇到了一个错误 “现在-01658: 无法为以下细分受众群创建INITIAL范围

表空间字符串” , 如下所示.

tablespace_too_small

 

有 2 解决此问题的解决方案:

由于原因 1 ,我们可以修改表空间的大小.

更改数据库数据文件‘../../tablespace.dbf’ 调整大小2048M;

或者

更改数据库数据文件‘../../tablespace.dbf’ 在下一个自动延伸200m;

 

由于原因 2, 我们可以添加一个新的数据文件来扩展tableapce.

alter tablespace test.dbf添加数据文件‘../../_TEST1’ 在下一个1000M上自动扩展1000M

无限大;

修改表空间test.dbf添加数据文件‘../../_TEST2’ 在下一个1000M上自动扩展1000M

无限大;

………………..

修改表空间test.dbf添加数据文件‘../../_TEST5’ 在下一个1000M上自动扩展1000M

无限大;

结果如下图所示

add_tablespace

继续导入数据

Continue_import

 

附件:

1. 检查表空间的实用性:

设定线 500;

SELECT total.tablespace_name,

圆形的(总MB, 2) AS Total_MB,

圆形的(总MB – 免费, 2) AS Used_MB,

圆形的(( 1 – 免费 / 总MB ) * 100, 2)

|| ‘%’ AS Used_Pct

从 (SELECT tablespace_name,

和(个字节) / 1024 / 1024 AS MB

来自dba_free_space

GROUP BY tablespace_name) 自由,

(SELECT tablespace_name,

和(个字节) / 1024 / 1024 AS MB

来自dba_data_files

GROUP BY tablespace_name) 总

在哪里free.tablespace_name = total.tablespace_name;

 

1. 检查当前用户属于哪个表空间.

选择 * 来自user_users;

2. 检查有关表空间的详细信息

从dba_data_files f中选择f。*,其中f.tablespace_name =“ test.dbf”;

发表评论