准备导入一个数据库,大约为33G,开始创建的空库表空间为自增到20G,结果自然不够,然后就开始自动扩展表空间大小
使用的如下语句
--自动扩展表空间大小
ALTER DATABASE DATAFILE 'E:\app\oracle\oradata\ORCL\WORKFLOW01.ora' AUTOEXTEND ON NEXT 200M MAXSIZE 60000M;
然后就提示 ORA-03206,块大小超出范围云云
查了一下说是单个文件最大为32G,这里自增的有将近60G,所以就报错了
看了很多资料,觉得增加数据库文件是个较好的方法,可以为这个表空间增加多个数据文件,每个自增到30G,这样就达到了扩展表空间的目的
首先,建立一个自动扩展的表空间
--创建表空间1
CREATE SMALLFILE
TABLESPACE "WORKFLOW01"
LOGGING
DATAFILE
'E:\app\oracle\oradata\ORCL\WORKFLOW01.ora' SIZE
2048M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
开始大小不必过大,2G即可,太大的话创建起来很耗时
然后将该表空间设置为自增,自动扩展为30G
ALTER DATABASE DATAFILE 'E:\app\oracle\oradata\ORCL\WORKFLOW01.ora' AUTOEXTEND ON NEXT 200M MAXSIZE 30720M;
这样就创建好了一个可自动扩展为30G的表空间,但是这样还不够,要为这个表空间添加数据文件,继续扩容
alter tablespace "WORKFLOW01" add datafile
'E:/app/oracle/oradata/ORCL/WORKFLOW01.dbf'size 128M 注意:是这个“/”,而不是“\”
autoextend on next 200M
maxsize 30720M
这样就为表空间WORKFLOW01.ORA新增了一个数据文件WORKFLOW01.dbf
在文件夹中是下图效果