表空间不足的原因以及如何处理
oracle表空间还不够,有 2 原因:
1. 原始表空间太小, 尚未设置为自动扩展;
错误代码: 现在-01653: 无法扩展表
2. 表空间已设置为autoextend并且足够大, 但是数据大小
大于当前表空间的最大大小 (32国标)
我正在尝试将dmp文件导入到专门的表空间, 但dmp文件的大小为217GB.
所以我遇到了一个错误 “现在-01658: 无法为以下细分受众群创建INITIAL范围
表空间字符串” , 如下所示.
有 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
无限大;
结果如下图所示
继续导入数据
附件:
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”;