首页 > 数据库 > Oracle > oracle 修改数据文件位置(路径)(移动)
select file_name,tablespace_name from dba_data_files;
select name from v$datafile;
show parameter standby_file_management
alter system set standby_file_management='MANUAL' scope=both;
shutdown immediate;
mv xxxx /xxx/xxx/
SQL> startup mount;
select 'ALTER DATABASE RENAME FILE '||''''||name || '''' ||' to ' ||'''' || '/backup/oradata/hisdb_dg' || substr(name,instr(name,'/',-1)) ||'.dbf'|| '''' || ';' from v$datafile;
select 'ALTER DATABASE RENAME FILE '||''''||name || '''' ||' to ' ||'''' || '/backup/oradata/hisdb_dg' || substr(name,instr(name,'/',-1)) ||'.dbf'|| '''' || ';' from v$tempfile;
alter database rename file ……………..
alter database open;
不能动system表空间
select file_name,tablespace_name,online_status from dba_data_files;
1.offline表空间
alter tablespace tablespace_name offline;
2.移动数据文件
mv /oracle/app/orcldata/orcl/ts_mcc_1.dat /data/ts_mcc_1.dat
3.rename数据文件
select 'ALTER DATABASE RENAME FILE '||''''||name || '''' ||' to ' ||'''' || '/backup/oradata/hisdb_dg' || substr(name,instr(name,'/',-1)) ||'.dbf'|| '''' || ';' from v$datafile;
4.online表空间
alter tablespace TS_MCC online;
三、在线修改(停部分数据文件)
1).offline表空间
alter database datafile 7 offline;
2).移动数据文件
mv /aaa/abc.ora to /bbb/abc.ora
3).rename数据文件(改一下,不要后面加.dbf)
select 'ALTER DATABASE RENAME FILE '||''''||name || '''' ||' to ' ||'''' || '/backup/oradata/hisdb_dg' || substr(name,instr(name,'/',-1)) ||'.dbf'|| '''' || ';' from v$datafile;
Alter database rename file '/aaa/abc.ora' to '/bbb/abc.ora';
4).recover
Alter database recover datafile 92;
5).online表空间
alter database datafile 7 online;
12c开始可以用move来在线重命名和移动数据文件(19c适用)
ALTER DATABASE MOVE DATAFILE '/data/ultradb01.dbf' TO '/data/ultradb02.dbf';
加keep参数可以保留原始dbf
ALTER DATABASE MOVE DATAFILE '/data/ultradb01.dbf' TO '/data/ultradb02.dbf' keep;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69980685/viewspace-3002118/ ,如需转载,请注明出处,否则将追究法律责任。