情景描述:

有朋友问,MS SQL SERVER将数据库备份还原到其它机器很方便,基本就是傻瓜式操作,Oracle有控制文件、参数文件一堆东西,觉得还原很复杂;其实不然,我抽出了点时间,简单演示下案例,朋友们,参考下!为了简单快速,我采用RMAN备份和还原。

--说明:

(1).RMAN备份到异机恢复的时候,db_name需要相同。

如果说要想改成其他的实例名,可以在恢复成功后,用nid 命令修改。 实例名的信息会记录到控制文件里,所以如果在恢复的时候,如果实例名不一致,恢复的时候会报错。

(2).恢复的路径和源库不一致时,就需要在restore命令中使用set 命令指定新位置,并且使用switch datafile all将变更信息更新的到控制文件中。

测试环境:

源数据库服务器A,安装在E,备份目录已在E盘; 源数据库服务器B,安装在F盘.

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

一、源数据库准备工作

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

--1. 查询DBID

SQL> select name,dbid from v$database;

NAME DBID

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

ORCL 1320546556

--2. 备份源数据DB

run {

configure retention policy to recovery window of 14 days;

configure controlfile autobackup on; --自动开启控制文件备份

configure controlfile autobackup format for device type disk to 'E:\backup\controlfile\bak_%F';

allocate channel c1 device type disk format 'E:\backup\data\bak_%u';

allocate channel c2 device type disk format 'E:\backup\data\bak_%u';

sql 'alter system archive log current';

backup incremental level=0 database skip inaccessible

plus archivelog filesperset 20

delete all input;

release channel c1;

release channel c2;

}

allocate channel for maintenance device type disk;

crosscheck backupset;

delete noprompt obsolete;

--或

run {

configure retention policy to recovery window of 14 days;

allocate channel c1 device type disk format 'E:\backup\data\bak_%u';

allocate channel c2 device type disk format 'E:\backup\data\bak_%u';

sql 'alter system archive log current';

backup incremental level=0 database skip inaccessible

plus archivelog filesperset 20

delete all input;

--手动直接指明备份文件名和路径

backup current controlfile tag='bak_ctrollfile' format='E:\backup\controlfile\bak_ctl_file_%U_%T';

backup spfile tag='bak_spfile' format='E:\backup\controlfile\bak_spfile_%U_%T';

release channel c1;

release channel c2;

}

allocate channel for maintenance device type disk;

crosscheck backupset;

delete noprompt obsolete;

--3.手动备份spfile

create pfile='E:\backup\inittest.ora' from spfile;

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

二、目标库准备工作:

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

---步骤1. 创建口令文件

--如果有就不需要新建.

orapwd file=F:\app\Administrator\product\11.2.0\dbhome_1\database\PWDorcl.ora password=password

--步骤2.恢复参数文件

--方法1.源数据库spfile并拷贝到B数据库服务器

\\192.168.2.25\e$\backup\inittest.ORA

复制到

E:\bk\inittest.ORA

--步骤3.编辑参数文件中的文件路径

如路径和原来一样,则不需修改

eg:

- *_DUMP_DEST

- LOG_ARCHIVE_DEST*

- CONTROL_FILES

---实例:

orcl.__db_cache_size=939524096

orcl.__java_pool_size=16777216

orcl.__large_pool_size=16777216

orcl.__oracle_base='F:\app\Administrator'#修改路径

orcl.__pga_aggregate_target=855638016

orcl.__sga_target=2550136832

orcl.__shared_io_pool_size=0

orcl.__shared_pool_size=1526726656

orcl.__streams_pool_size=16777216

*.audit_file_dest='F:\app\Administrator\admin\orcl\adump' #修改路径

*.audit_trail='db'

*.compatible='11.2.0.0.0'

#修改路径

*.control_files='F:\app\Administrator\oradata\orcl\control01.ctl','F:\app\Administrator\oradata\orcl\control02.ctl','F:\app\Administrator\oradata\orcl\control03.ctl'

*.db_block_size=8192

*.db_domain=''

*.db_name='orcl'

*.db_recovery_file_dest='F:\arch' #修改路径

*.db_recovery_file_dest_size=6442450944

*.diagnostic_dest='F:\app\Administrator' #修改路径

*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'

*.log_archive_dest_1='location=f:\arch' #修改路径

*.nls_date_format='yyyy-mm-dd hh:mi:ss'

*.open_cursors=300

*.optimizer_capture_sql_plan_baselines=TRUE

*.pga_aggregate_target=845152256

*.processes=150

*.remote_login_passwordfile='EXCLUSIVE'

*.sga_target=2536505344

*.skip_unusable_indexes=TRUE

*.undo_tablespace='UNDOTBS1'

--步骤4.重启实例,使用已编辑好的参数文件

将用pfile将B数据库服务器启动到nomout 状态

rman target /

startup nomount pfile='e:\bk\inittest.ora'

转载于:https://blog.51cto.com/cuug520/1532063

Oracle备份如何到异机还原相关推荐

  1. oracle 如何备份.bak,Oracle备份如何到异机还原

    --步骤5.恢复控制文件,装载数据库 rman target / set dbid 1320546556 restore controlfile from 'e:\bk\controlfile\BAK ...

  2. oracle ora 19698,RMAN异机还原遭遇ORA-19698错误案例

    实验环境: 操作系统    :Oracle Linux Server release 5.7 64 bit 数据库版本:Oracle Database 10g Release 10.2.0.4.0 - ...

  3. oracle ora 19698,RMAN异机还原遭遇ORA-19698错误案例 - 潇湘隐者

    实验环境: 操作系统    :Oracle Linux Server release 5.7 64 bit 数据库版本:Oracle Database 10g Release 10.2.0.4.0 - ...

  4. mysql异机还原_利用RMAN进行异机还原(目录相同)

    利用RMAN进行异机还原(目录相同) 源始库:192.168.201.2目标库:192.168.201.3 --192.168.201.2--rman[Oracle@db01 ~]$ rman tar ...

  5. 明晚8点直播丨 Oracle RMAN 单实例异机迁移恢复(版本:11gR2)

    Oracle RMAN 单实例异机迁移恢复(版本:11GR2)-9月29日20:00 迁移数据库的方法有多种,较为常用的则是使用RMAN.使用RMAN迁移数据库属于数据库的物理备份与恢复范畴,整个过程 ...

  6. 29日直播丨 Oracle RMAN 单实例异机迁移恢复(版本:11GR2)

    Oracle RMAN 单实例异机迁移恢复(版本:11GR2)-9月29日20:00 迁移数据库的方法有多种,较为常用的则是使用RMAN.使用RMAN迁移数据库属于数据库的物理备份与恢复范畴,整个过程 ...

  7. 使用ssms异机还原数据库_使用SSMS 18中的查询优化助手向导进行数据库升级

    使用ssms异机还原数据库 This article will cover managing a SQL Server database upgrade using new features in S ...

  8. mysql异机还原_MySQL innobackupex全量备份恢复

    转自 http://blog.itpub.net/27099995/viewspace-1295099/ 先简单介绍一下这个工具:innobackupex innobackupex比xtarbacku ...

  9. linux下仅仅有rman备份集的异机不同文件夹恢复

    昨天在客户那里做了一次rman异机的恢复,把生产库弄一份给測试库用,总库大概80G,总共花费了2个小时,当时客户的环境是windows 11.2.0.3,今天早晨在linux下又一次測试了一下,记录下 ...

最新文章

  1. utf8 连接 mysql_mysql配置为支持utf8的连接方式只要改client就可以了吗
  2. WEB免费打印控件推荐
  3. 怎样用java写一个简单的文件复制程序
  4. 有一台服务器远程失败其他电脑可以_使用闲置电视盒子打造家庭网盘和远程下载器和小型服务器(二)...
  5. QImage QPixmap Mat区别
  6. Chrome保存mht网页文件的方法 – 无需任何插件,完美!
  7. 嬴彻首款L3自动驾驶样车发布:自研全栈系统,满足高速全场景工况
  8. java代码使用Get请求或者Post请求获取网络内容
  9. ubuntu安装之后需要做什么
  10. 罗技鼠标驱动怎么下载?
  11. 绝对靠谱安全的论文免费安全查重检测重复率网站
  12. excel文件修复工具_psd文件修复工具下载|Recovery Toolbox for ps 最新版v2.3.1.0 下载
  13. 一个dht网络的“磁力链接”搜索python代码
  14. bizhubc226说明书_bizhubc226打印机如何扫描?
  15. 如何解决 img 图片变形
  16. Java基础关键知识点(1)
  17. 在Visual2019中如何添加日历表?这里有答案
  18. DC-DC直流升压模块电源12V升24V(5A)FP5207
  19. 谢处方电磁场与电磁波第4版课后答案
  20. Arduino中LED灯实现256中颜色的渐变

热门文章

  1. charCodeAt()和charAt()的用法
  2. SpringBoot编写sh脚本进行启停
  3. 开发中遇到的bug记录
  4. Golang——error处理及panic、recover使用的正确姿势
  5. android启动其他app的服务器,Android中通过外部程序启动App的三种方法
  6. icmp端口_pingtunnel搭建icmp隧道
  7. MySQL DDL语言笔记
  8. 开发到底喜欢看怎样的需求文档
  9. 2020年豪华车市场洞察
  10. python爬虫小工具——editplus