Oracle 冷备迁移步骤

1.查找需备份的文件
(1) 参数文件
9i以下版本 $ORACLE_BASEADMIN$ORACLE_SIDPFILEINIT.ORA
9i或以上版本 $ORACLE_HOMEDATABASEINIT[$ORACLE_SID].ORA 或者 $ORACLE_HOMEDATABASEspfile[$ORACLE_SID].ORA
9i或以上版本需要一份pfile文件(就是init[$ORACLE_SID].ora),因为spfile文件是不能直接用编辑器修改的;
 
注:我的实践证明不要把spfile放到database目录里
 
(2) 控制文件
sql> show parameter control_files
 
(3) 数据文件
9i以下版本
sql> select file_name from dba_data_files;
 
9i或以上版本
sql> select file_name from dba_data_files;
select file_name from dba_temp_files;
 
(4) 日志文件
sql> select member from v$logfile;
 

2 关闭数据库
sqlplus user/pwd@link as sysdba
sql>shutdown immediate -- 必须保证数据库正常的关闭
 
 
 
3 复制文件集
 
4 在新的机器上进行恢复
(1) 安装数据库,必须保证和源数据库版本一致,不创建数据库
(2) 创建一个数据库服务,其中sid 要和源数据库保持一致
> oradim -new -sid $ORACLE_SID -startmode m
(3) 创建监听(可以用net manager ) ,并启动,监听中需指明oracle sid
 
(4) 将启动参数文件放入 $ORACLE_HOMEDATABASE下 ,9i 以下版本放在 $ORACLE_BASEadmin$ORACLE_SIDpfile
修改参数文件中的control_files 到控制文件所在的位置
修改 参数文件中所有需指明路径的参数,修改到你希望的系统位置,并保证指定的路径下有该文件或者文件夹的存在.
注:我的实践证明不要把spfile放到database目录里,如果放进去可能会提示
ORA-02778: Name given for the log directory is invalid
 
(5) 创建本地密码验证文件
> cd $ORACLE_HOMEdatabase
> orapwd file=pwd[$ORACLE_SID].ora password=sys entries=10
 
(6) 启动数据库
  A.启动数据库到mount 状态
  >sqlplus /nolog
  >conn sys/sys as sysdba
  >startup mount
 
  B.如果源数据库中数据文件所在的路径和当前数据库中数据文件所在的路径不同,需修改conctol file中指定数据文件
路径的信息(此修改不包括临时数据文件temp)
sql> alter database rename file
'old_file_dest1',
'old_file_dest2',
....
to
'new_file_dest1',
'new_file_dest2',
...
/
 C.打开数据库
sql> alter database open;
 D.创建新的temp文件
sql> alter tablespace temp add tempfile 'temp_file_name' size XXM;
 E.删除旧的temp文件
sqlplus sys/sys@link as sysdba
sql> shutdown immediate
sql> startup mount
sql> alter database tempfile 'old_temp_file_name' drop;
sql> alter database open;
 F.校验数据库的正确性
SQL> select * from v$recover_file; -- 如果没有内容就没有问题
 

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值