关于Oracle数据库文件迁移

关于Oracle数据库文件迁移

数据文件的迁移目的:因为如果所有的数据文件都放在一个磁盘上,会增加I/O量,这样会影响数据库的效率。所以如果放在不同的盘上,就可以并行传输,这样效率就会提高很多。

一、迁移数据文件的步骤。
1、使用数据字典获取所需的表空间和数据文件的相关信息。
2、关闭数据库系统。
3、使用操作系统命令移动或者复制要移动的数据文件。
4、将数据库置为加载状态。
5、执行alter database rename file命令。
6、打开数据库系统。
7、使用数据字典获取所需的表空间和数据文件的相关信息。
8、如果需要,使用操作系统命令删除无用的数据文件。

二、RedHat下的具体操作步骤。

1、要迁移的目标文件原来是在/u01/app/oracle/oradata/orcl/目录下,要迁移到/u02/orcl/这个目录下面。

2、用oracle用户执行sqlplus / as sysdba,进入sqlplus,查看数据文件列表。
SQL> select name from v$datafile;
然后看到结果:
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/users01.dbf

3、关闭数据库。
SQL> shutdown immediate;

SQL> exit;

4、用oracle用户移动文件。
mv /u01/app/oracle/oradata/orcl/system01.dbf /u02/orcl/system01.dbf
mv /u01/app/oracle/oradata/orcl/undotbs01.dbf /u02/orcl/undotbs01.dbf
mv /u01/app/oracle/oradata/orcl/sysaux01.dbf /u02/orcl/sysaux01.dbf
mv /u01/app/oracle/oradata/orcl/users01.dbf /u02/orcl/users01.dbf

5、拷贝完毕后再执行执行sqlplus / as sysdba,进入sqlplus。
startup mount;
alter database rename file ‘/u01/app/oracle/oradata/orcl/system01.dbf’ to ‘/u02/orcl/system01.dbf’;
alter database rename file ‘/u01/app/oracle/oradata/orcl/undotbs01.dbf’ to ‘/u02/orcl/undotbs01.dbf’;
alter database rename file ‘/u01/app/oracle/oradata/orcl/sysaux01.dbf’ to ‘/u02/orcl/sysaux01.dbf’;
alter database rename file ‘/u01/app/oracle/oradata/orcl/users01.dbf’ to ‘/u02/orcl/users01.dbf’;

select name from v$datafile;
这时候看到的结果:
/u02/orcl/system01.dbf
/u02/orcl/undotbs01.dbf
/u02/orcl/sysaux01.dbf
/u02/orcl/users01.dbf

6、启动数据库,完成任务。
alter database open;

发表回复

您的电子邮箱地址不会被公开。