1、删除表空间数据(如果数据无效了);
2、删除用户数据(如果存在多个用户数据冗余了,删除旧的数据);
3、增加表空间文件(推荐)。

删除数据前一定要考虑清楚和做好备份。

// 2021年12月24日更新
看了上面的内容,感觉当时唯唯诺诺的,果然小白就是这样。

表空间满了肯定是得加表空间。
方法一:加表空间文件
表空间满32G肯定是不能够再扩展了的,不用想别的,直接指定表空间增加表空间文件就好了。

-- 查看表空间文件
SELECT * FROM dba_data_files;
-- 创建表空间
CREATE TABLESPACE DATA01 
DATAFILE 'D:\app\data01.dbf' SIZE 100M AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ;  
-- 增加指定表空间文件
ALTER TABLESPACE DATA01 
ADD DATAFILE 'D:\app\data01_ex1.dbf' SIZE 100M AUTOEXTEND ON NEXT 50M  ;

方法二:创建 bigfile 大表空间文件
把表空间导出备份,删除原来的表空间,创建一个bigfile 大表空间文件,再把数据导入;
或者把表空间导出备份,创建另一个 bigfile 大表空间文件再把数据导入。

-- 导出表空间
expdp system/sys123@orcl 
tablespaces=testspace directory=dump_dir dumpfile=testspace.dmp logfile=testspace .log
-- 创建大表空间
CREATE BIGFILE TABLESPACE TESTDAY01 
DATAFILE 'E:\oracle\testday01.dbf' SIZE 100M AUTOEXTEND ON NEXT 50M ;
-- 导入表空间
IMPDP system/sys123@orcl 
remap_tablespace=testspace:TESTDAY01 dumpfile=daoru-2021-12-24.dmp logfile=albaba-daoru-2021-12-24.log directory= dumpbak 
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐