Oracle更改数据文件位置

方法一:offline表空间 1、offline表空间:alter tablespace tablespace_name offline; 2、复制数据文件到新的目录; 3、rename修改表空间,并修改控制文件; 4、online表空间; 1、offline表空间zerone SQL select name from v$datafile; NAME ————

方法一:offline表空间

1、offline表空间:alter tablespace tablespace_name offline;
2、复制数据文件到新的目录;
3、rename修改表空间,并修改控制文件;
4、online表空间;

1、offline表空间zerone

SQL> select name from v$datafile;

NAME
——————————————————————————–
C:oraclePRODUCT10.2.0ORADATAORCLSYSTEM01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLSYSAUX01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLUSERS01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF
C:OraclePRODUCT10.2.0ORADATAZERONE01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLRMANTS.DBF
已选择7行。
SQL> alter tablespace zerone offline;
表空间已更改。
2、复制数据文件到新的目录
复制数据文件C:OraclePRODUCT10.2.0ORADATAZERONE01.DBF到C:ORACLEPRODUCT10.2.0ORADATAORCLZERONE01.DBF。
3、rename修改表空间数据文件为新的位置,并修改控制文件

SQL> alter tablespace zerone rename datafile ‘c:Oracleproduct10.2.0oradatazerone01.dbf’ to ‘c:oracleproduct10.2.0oradataorclzerone01.dbf’;
表空间已更改。
4、online表空间

SQL> alter tablespace zerone online;
表空间已更改。
SQL> select name from v$datafile;
NAME
——————————————————————————–
C:OraclePRODUCT10.2.0ORADATAORCLSYSTEM01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLSYSAUX01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLUSERS01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLZERONE01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLRMANTS.DBF
已选择7行。
SQL> select file_name,tablespace_name from dba_data_files where tablespace_name=’ZERONE’;
FILE_NAME             TABLESPACE_NAME
————————————————————————————————
ZERONE C:OraclePRODUCT10.2.0ORADATAORCLZERONE01.DBF

方法二:SQL修改数据文件位置

1、关闭数据库;
2、复制数据文件到新的位置;
3、启动数据库到mount状态;
4、通过SQL修改数据文件位置;
5、打开数据库;

1、关闭数据库

SQL> select name from v$datafile;
NAME
——————————————————————————–
C:OraclePRODUCT10.2.0ORADATAORCLSYSTEM01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLSYSAUX01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLUSERS01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLZERONE01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLRMANTS.DBF
已选择7行。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
Oracle 例程已经关闭。
2、复制数据文件到新的位置;
将数据文件C:OraclePRODUCT10.2.0ORADATAORCLZERONE01.DBF复制到C:ORACLEPRODUCT10.2.0ORADATAZERONE01.DBF。

3、启动数据库到mount状态;

SQL> startup mount
Oracle 例程已经启动。
Total System Global Area 167772160 bytes
Fixed Size                  1247900 bytes
Variable Size              96470372 bytes
Database Buffers           67108864 bytes
Redo Buffers                2945024 bytes
数据库装载完毕。
4、通过SQL修改数据文件位置;

SQL> alter database rename file ‘c:Oracleproduct10.2.0oradataorclzerone01.dbf’ to ‘c:oracleproduct10.2.0oradatazerone01.dbf’;
数据库已更改。
5、打开数据库;

SQL> alter database open;
数据库已更改。
SQL> select name from v$datafile;
NAME
——————————————————————————–
C:OraclePRODUCT10.2.0ORADATAORCLSYSTEM01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLSYSAUX01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLUSERS01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF
C:OraclePRODUCT10.2.0ORADATAZERONE01.DBF
C:OraclePRODUCT10.2.0ORADATAORCLRMANTS.DBF
已选择7行。
SQL> select file_name,tablespace_name from dba_data_files where tablespace_name=’ZERONE’;
FILE_NAME      TABLESPACE_NAME
————————————————————————————————-
ZERONE           C:OraclePRODUCT10.2.0ORADATAZERONE01.DBF

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享