将移动数据文件到其它目录下的实用方法

问题:如何把d:oracleoradata全部移到另一个目录下面去?

解决方法:
1、创建pfile --这是因为控制文件移动的情况下:

create pfile='D:oracleora92databaseINITtest070715.ORA' from spfile;

2、关闭数据库

3、在操作系统下移动文件到相应的位置

4、修改启动文件INITtest070715.ORA中的控制文件的位置,为新的地址

5、用刚才创建的pfile启动数据库

SQL> startup pfile = 'D:oracleora92databaseINITtest070715.ORA' mount

6、修改控制文件中各文件为正确的位置:

alter database rename file 'e:erp1.dbf' to 'd:erp1.dbf';

此时会验证文件是否无效,如果'd:erp1.dbf'无效,则会报错

7、从pfile建新的spfile

SQL> create spfile from pfile
2 /

8、关闭数据库

9、正常启动数据库SQL> startup

Oracle例程已经启动。

Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。
SQL>