当前位置:数据库 > Oracle >>

oracle常用移动文件的方法

oracle常用移动文件的方法
 
--- 移动表空间文件 
1、查询表空间的文件名称 
SQL> select d.name from v$datafile d join v$tablespace t using(ts#) where name ='XPORT'; 
2、关闭数据库 
SQL> shutdown immediate; 
3、转移数据文件 
SQL> ! mv /u04/oradata/xport.dbf /u06/oradata; 
4、启动数据库 
SQL> startup mount; 
5、改变控制文件中的路径引用名称,指向新的路径 
SQL> alter database rename file '/u04/oradata/xport.dbf' to '/u06/oradata/xport.dbf'; 
6、打开数据库 
SQL> alter database open; 
7、建立更新过的控制文件备份副本 
SQL> alter database backup controlfile to trace; 
 
-- 移动联机日志 
1、查询联机日志 
SQL> select group#,member from v$logfile order by group#,member; 
2、关闭数据库 
SQL> shutdown immediate; 
3、移动文件 
SQL> ! mv /u01/app/oracle/oradata/redo0[1-3].log /u04/data 
SQL> startup mount 
4、rename 
SQL> alter database rename file '/u01/app/oracle/oradata/redo01.log' to '/u04/data/redo01.log'; 
SQL> alter database rename file '/u01/app/oracle/oradata/redo02.log' to '/u04/data/redo02.log'; 
SQL> alter database rename file '/u01/app/oracle/oradata/redo03.log' to '/u04/data/redo03.log'; 
5、打开数据库 
SQL> alter databse open; 
 
-- 移动控制文件 
SQL> select name,value from v$spparameter where name='control_files'; 
SQL> show parameter control_files; 
SQL> alter system set control_files = '/u02/oradata/control01.ctl', '/u03/oradata/control02.ctl', '/u04/oradata/control03.ctl' scope = spfile; 
SQL> shutdown immediate; 
SQL> ! mv /u01/app/oracle/oradata/control01.ctl /u02/oradata; 
SQL> ! mv /u01/app/oracle/oradata/control02.ctl /u03/oradata; 
SQL> ! mv /u01/app/oracle/oradata/control03.ctl /u04/oradata; 
SQL> startup; 
SQL> select name, value from v$spparameter where name = 'control_files'; 
 
从别的书上看来的,目前移动dbf文件自己跑过了没啥问题,其他的没测试过 
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,