oracle 修改数据文件路径

試著忘記壹切 提交于 2020-08-13 07:16:17

一、关库修改文件位置

1.连接到数据库

 [oracle@linux]$ ./sqlplus /nolog

 SQL> conn / as sysdba

 

2. 查看数据文件位置

SQL> select name from v$datafile;

FILE_NAME

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

/oradata/PMPTGDB/users01.dbf

/oradata/PMPTGDB/undotbs01.dbf

/oradata/PMPTGDB/sysaux01.dbf

/oradata/PMPTGDB/system01.dbf

/oradata/PMPTGDB/work.dbf

 

3. 关闭数据库

SQL> shutdown immediate;

 

4. 移动文件到新的位置(比如新的位置为/media/hdd1/oradata/PMPTGDB )

cd /oradata/PMPTGDB/

mv users01.dbf undotbs01.dbf sysaux01.dbf system01.dbf work.dbf /media/hdd1/oradata/PMPTGDB 

 

5. 以mount模式启动数据库

SQL> startup mount;

SQL> alter database rename file   '/oradata/PMPTGDB/users01.dbf'   to   '/media/hdd1/oradata/PMPTGDB/users01.dbf '; 

对每一个要移动的文件重复执行上面的alter database rename file ... to ...

 

6. 打开数据库

SQL> alter database open;

再次查看文件位置,发现已经更该。


二、在线修改

方法1:表空间offline

主要步骤:

      1、offline表空间:alter tablespace tablespace_name offline;

      2、复制数据文件到新的目录;

      3、rename修改表空间,并修改控制文件;

      4、online表空间;

select file_name,tablespace_name,online_status from dba_data_files;
alter tablespace TS_MCC offline;
host mv /oracle/app/orcldata/orcl/ts_mcc_1.dat /data/ts_mcc_1.dat
alter database rename file '/oracle/app/orcldata/orcl/ts_mcc_1.dat' to '/data/ts_mcc_1.dat';
alter tablespace TS_MCC online;
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!