修改数据库文件为自动扩展以达到表空间自动扩展的目的

avatar
作者
筋斗云
阅读量:9



表空间自动扩展

1.数据文件自动扩展的好处

1)不会出现因为没有剩余空间可以利用到数据无法写入

2)尽量减少人为的维护

3)可以用于重要级别不是很大的数据库中,如测试数据库等

2.数据文件自动扩展的弊端

1)如果任其扩大,在数据量不断变大的过程中会导致某个数据文件异常的大

2)没有人管理的数据库是非常危险的

3.查询当前数据库中所有数据文件是否为自动扩展

sec@orcl> select tablespace_name,file_name,autoextensible from dba_data_files where tablespace_name = 'SEC_D';

TABLESPACE_NAME FILE_NAME AUT

----------------- ----------------------------------------- ---

SEC_D /u01/app/oracle/oradata/orcl/sec_d01.dbf NO

4.通过修改SEC_D的数据文件为自动扩展达到表空间SEC_D为自动扩展的目的

sec@orcl> alter databasedatafile'/u01/app/oracle/oradata/orcl/sec_d01.dbf' autoextend on;

Database altered.

5.确认是否已经修改成功

sec@orcl> select tablespace_name,file_name,autoextensible from dba_data_files where tablespace_name = 'SEC_D';

TABLESPACE_NAME FILE_NAME AUT

----------------- ----------------------------------------- ---

SEC_D /u01/app/oracle/oradata/orcl/sec_d01.dbf YES

6.总结修改语句语法

开启自动扩展功能语法:

alter database datafile '对应的数据文件路径信息' autoextend on;

关闭自动扩展功能语法:

alter database datafile '对应的数据文件路径信息' autoextend off;

-- The End --

SQL> select tablespace_name,file_name,autoextensible from dba_data_files where tablespace_name ='USERS';

TABLESPACE_NAME FILE_NAME AUTOEXTENSIBLE

------------------------------ -------------------------------------------------------------------------------- --------------

USERS +DATA/oracle/users01.dbf YES

USERS +DATA/oracle/users02.dbf NO

SQL> alter database datafile '+DATA/oracle/users02.dbf' autoextend on;

Database altered

SQL> select tablespace_name,file_name,autoextensible from dba_data_files where tablespace_name ='USERS';

TABLESPACE_NAME FILE_NAME AUTOEXTENSIBLE

------------------------------ -------------------------------------------------------------------------------- --------------

USERS +DATA/oracle/users01.dbf YES

USERS +DATA/oracle/users02.dbf YES

有时设置了自动增长,但是还是会出现ORA-01659的错误,这个一般是dmp的create table语句的初始化空间太大了。只能先把这些表在目标库建立好,然后增加IGNORE=y参数导入数据就可以了。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!