oracle表空间不足时的处理方法

我的梦境 提交于 2020-01-11 16:03:49

由于数据文件路径下的空间不足或表空间不足时,需要更换或扩展或新增表空间时,以下简单介绍下几种处理方式(数据文件/opt/oracle/oradata/testdb.dbf,原大小为100M)

一、扩大表空间现有数据文件的大小(当表空间不足,但是数据文件所在目录空间足够时)

1、oracle用户登录数据库服务器,用sysdba连接数据库

>sqlplus / as sysdba

2、扩大现有数据文件的大小

sql>alter database datafile  '/opt/oracle/oradata/testdb.dbf' resize 1000M;

二、增加新的数据文件(表空间不足或数据文件所在目录空间不足时都可使用此方法)

1、oracle用户登录数据库服务器,用sysdba连接数据库

>sqlplus / as sysdba

2、增加新的数据文件

sql>alter tablespace tablespacename add datafile '/opt/oracle/oradata/testdb01.dbf' size  900M autoextend on maxsize 2G;

当数据文件所在目录空间不足,可以在其他路径下增加数据文件,例如

sql>alter tablespace tablespacename add datafile '/home/oracle/data/testdb01.dbf' size  900M autoextend on maxsize 2G;

三、更改数据文件的路径(将数据文件转移到磁盘空间大的目录下)

1、手动拷贝数据文件到新的目录下,例如原数据文件路径为/opt/oracle/oradata/testdb.dbf,拷贝到/home/oracle/data/testdb.dbf

2、oralce用户登录服务器,用sysdba连接数据库

>sqlplus / as sysdba

3、把数据文件testdb.dbf所属的表空间offline

sql>alter tablespace tablespacename offline;

4、修改表空间文件的路径

sql>alter database rename file '/opt/oracle/oradata/testdb.dbf' to '/home/oracle/data/testdb.dbf';

5、关闭数据库

sql>shutdown immediate;

6、启动数据库

sql>startup mount;

sql>recover datafile 'E:\OracleData\GWTABLE42.DBF';

sql>alter database open;

7、把表空间online

sql>alter tablespace GWTABLE online;

8、 查看数据文件和表空间及状态
sql> select file_name,tablespace_name,status from dba_data_files;

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!