如何把oracle备份还原到另外一台机器上

说明:

(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;

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

时间: 2024-09-11 06:27:00

如何把oracle备份还原到另外一台机器上的相关文章

WSAD5.1+oracle9i在一台机器上的问题ora-00600-参考

我把WSAD5.1+oracle9i装在一台机器上进行单机调试.首先,在本机安装oracle9i标准版(2.5G);然后,创建测试用数据库 ebank2391 从X.X.X.84上使用TOAD导出ebank数据库的 tables表结构,sequence序列,functions函数,procdure存储过程,packages包2 使用TOAD导出表数据ebankdata.sql文件3 在ebank239数据库创建表空间4 在ebank239上导入tables表结构,sequence序列, func

在同一台机器上运行多个MySQL服务器

    有些情况下你可能想要在同一台机器上运行多个服务器.例如,你可能想要测试一个新的MySQL版本而让你现有生产系统的设置不受到干扰, 或你可能是想要为不同的客户提供独立的MySQL安装一个因特网服务供应商. 如果你想要运行多个服务器,最容易的方法是用不同的TCP/IP端口和套接字文件重新编译服务器,因此他们不是侦听同一个TCP/IP端口或套接字. 假设一个现存服务器配置为缺省端口号和套接字文件, 那么用一个这样configure命令行设置新的服务器: shell> ./configure -

服务器-家里如何在一台机器上布置两个80端口的网站?

问题描述 家里如何在一台机器上布置两个80端口的网站? 机器是Mac Mini 家里如何在一台机器上布置两个80端口的网站? 不想用域名加端口(例如www.aaa.com:8801), 想直接用www.aaa.com 和www.bbb.com 求教!谢谢! 解决方案 域名不一样直接绑定就好了,域名一样才要使用端口区分. 注意你2个域名都要在同一个web服务器上绑定,不要安装了iis,tomcat,分别绑到不同web服务器,80端口只能分配给iis合作tomcat其中一个 解决方案二: 家里 的机

在同一台机器上使用两个不同账号登录出现session问题

问题描述 我们开发了一个系统,我使用admin和test两个账号在同一台机器上登录,出现了一个问题.假设我先用admin登录(不退出),接着用test账号登录,结果admin中session保留的信息变成了test的信息.这个问题怎么解决? 解决方案 很正常啊,登陆信息都是保存在cookie里的.然后,第二个账户登陆的时候,由于cookie的域是一样的,自然会覆盖掉之前的哪个账户.很多网站都是这样.正常情况下,一个用户怎么会同时操作两个账号?有这个需求?如果用户真心希望能够登陆两个账号,那么让他

路径-各位android的高手,请问怎么得到,判断一台机器上usb盘的目录是什么

问题描述 各位android的高手,请问怎么得到,判断一台机器上usb盘的目录是什么 各位android的高手,请问怎么得到,判断一台机器上usb盘的目录是什么 或者怎么判断一个路径是不是usb盘的 一个实例如下(我现在的一个android设备现状): 1,有内部存储器sdcard,具体路径:/mnt/sdcard 2,有tf卡,具体路径:/mnt/ext_sd 3,有u盘,具体路径:/mnt/usbhost1 我可以得到/mnt/usbhost1,并且确定其是u盘的路径 但是其他设备不一定会和

预处理-同一份代码,在同一台机器上编译出来的目标文件大小不一样

问题描述 同一份代码,在同一台机器上编译出来的目标文件大小不一样 1C 我们单位采用统一在一台服务器上开发,只不过给每个人建立一个账号,在不同的目录下有不同的权限.现在我和另外一个同事对同一份代码进行编译,结果编出的目标文件大小不一致.我们找到一个不一致的目标文件的源文件,预处理后的结果是一样的:查看目标文件的elf段信息,发现.rela.text段的offset不一样,后面还有.debug_info和类似的调试段不一样,如果把目标文件strip了之后是一样的.g++版本是样的,链接的库也是一样

一台机器上运行多个ActiveMq 中间件?怎么配置?求详细讲解,谢谢谢了谢了

问题描述 一台机器上运行多个ActiveMq 中间件?怎么配置?求详细讲解,谢谢谢了谢了 一台机器上运行多个ActiveMq 中间件?怎么配置??求详细讲解,谢谢谢了谢了 一台机器上运行多个ActiveMq 中间件?

求助 java socket编程c/s在同一台机器上与c/s在不同机器上的区别

问题描述 socket程序,cs在同一个机器上可以正常传递数据,但cs分别在两个机器上就多出了一些数据这是什么原因.列入程序如下:ClientApp.javaimportjava.net.*;importjava.io.*;importjava.lang.*;publicclassClientApp{publicstaticvoidmain(Stringargs[]){try{//创建通讯并且和主机Rock连接SocketcSocket=newSocket("127.0.0.1",80

同一台机器上需要安装多个tomcat怎么配置?

问题描述 同一台机器上需要安装多个tomcat怎么配置? 我需要在同一个计算机上,安装两个tomcat,虽然我把两个端口更改了,但是开启和关闭时,这两个tomcat还是会有相互影响,各位大侠,有没有同一台机器上,配置多个tomcat的方案教程呢,我网上也找了一些,试了还是有问题 解决方案 当第一个tomcat启动后,后面tomcat的server.xml中的端口不管怎么改,仍然会报端口冲突.后来在dos下运行才发现所有的tomcat都会去找CATALINA_HOME和CATALINA_BASE这