数据迁移_老RAC_新RAC

数据迁移_老RAC_新RAC

作者:Eric
微信:loveoracle11g

1、把老集群RAC备份的数据远程拷贝到新集群RAC
[[email protected] ~]# cd /backup/rman/orcl
[[email protected] orcl]# ls -l *1119*
[[email protected] orcl]# scp *1119* [email protected]:/backup/rman/orcl
密码:oracle

[[email protected] ~]# su - oracle
[[email protected] ~]$ cd /backup/rman/orcl
[[email protected] orcl]$ ll
total 7357616
-rw-r----- 1 oracle asmadmin  242676224 Nov 16 02:55 arch_5dtiajdc_1_1_20181115.bak
-rw-r----- 1 oracle asmadmin  241586176 Nov 16 02:55 arch_5etiajdc_1_1_20181115.bak
-rw-r----- 1 oracle asmadmin  203652096 Nov 16 02:55 arch_5ftiajdg_1_1_20181115.bak
-rw-r----- 1 oracle asmadmin   19202048 Nov 16 02:55 ctl_file_5gtiajdi_1_1_20181115.bak
-rw-r----- 1 oracle asmadmin 5939224576 Nov 16 02:56 data_level0_59tiajbk_1_1_20181115.bak
-rw-r----- 1 oracle asmadmin  868433920 Nov 16 02:56 data_level0_5atiajbk_1_1_20181115.bak
-rw-r----- 1 oracle asmadmin   19202048 Nov 16 02:56 data_level0_5btiajbr_1_1_20181115.bak
-rw-r----- 1 oracle asmadmin      98304 Nov 16 02:56 data_level0_5ctiajbu_1_1_20181115.bak
-rw-r----- 1 oracle asmadmin      98304 Nov 16 02:56 orcl_spfile_5htiajdl_1_1_20181115.bak

[[email protected] orcl]$ pwd
/backup/rman/orcl

2、新集群要恢复的数据库,要开启归档
# su - grid
# srvctl stop database -d orcl

---------------------------------------->node1
# su - oracle
# export ORACLE_SID=orcl1
# sqlplus / as sysdba
SQL> startup mount ;
SQL> alter database archivelog ;

---------------------------------------->node2
# su - oracle
# export ORACLE_SID=orcl2
# sqlplus / as sysdba
SQL> startup mount ;
SQL> alter database archivelog ;

---------------------------------------->node1
SQL> alter database open ;
---------------------------------------->node2
SQL> alter database open ;

3、停掉要恢复的数据库orcl
直接停掉# srvctl stop database -d orcl
查看# su - grid
    # crs_stat -t -v
    # crsctl stat res -t

	[[email protected] ~]$ export ORACLE_SID=orcl1
	[[email protected] ~]$ sqlplus / as sysdba
	SQL> shutdown immediate ;

	[[email protected] ~]$ export ORACLE_SID=orcl2
	[[email protected] ~]$ sqlplus / as sysdba
	SQL> shutdown immediate ;

[[email protected] orcl]$ rman target /
RMAN> shutdown immediate ;
RMAN> startup mount ;

4、恢复参数文件spfile
RMAN> restore spfile to ‘+DATA/spfileorcl.ora‘ from ‘/backup/rman/orcl/orcl_spfile_5htiajdl_1_1_20181115.bak‘;
RMAN> shutdown immediate ;
RMAN> exit ;

[[email protected] orcl]$ sqlplus / as sysdba

SQL> startup force nomount ;

ALTER SYSTEM SET DB_CREATE_FILE_DEST=‘+DATA‘ SID=‘*‘;
ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=100G SID=‘*‘;
ALTER SYSTEM SET DB_RECOVERY_FILE_DEST=‘+FRA‘ SID=‘*‘;
ALTER SYSTEM SET CONTROL_FILES=‘+DATA‘,‘+FRA‘ SCOPE=SPFILE SID=‘*‘;

5、恢复控制文件controlfile
[[email protected] orcl]$ rman target /

RMAN> startup force nomount ;

RMAN> restore controlfile from  ‘/backup/rman/orcl/ctl_file_5gtiajdi_1_1_20181115.bak‘ ;

RMAN> alter database mount ;

6、恢复数据文件datafile
RMAN> catalog start with ‘/backup/rman/orcl/‘ ;
输入:yes

run {
allocate channel c1 device type DISK;
allocate channel c2 device type DISK;
allocate channel c3 device type DISK;
allocate channel c4 device type DISK;
restore database;
switch datafile all;
switch tempfile all;
recover database delete archivelog;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 11/23/2018 04:04:48
RMAN-06054: media recovery requesting unknown archived log for thread 2 with sequence 1939 and starting SCN of 105650523

run {
allocate channel c1 device type DISK;
allocate channel c2 device type DISK;
allocate channel c3 device type DISK;
allocate channel c4 device type DISK;
set until sequence 1939 thread 2; # 问题在这
restore database;
switch datafile all;
switch tempfile all;
recover database delete archivelog;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}

7、重命名redolog文件
SQL> set linesize 200 ;
SQL> select  ‘alter database rename file ‘‘‘||MEMBER||‘‘‘ to ‘‘‘||‘+data/orcl/onlinelog/‘||regexp_substr(MEMBER,‘[^\/]+‘,1,4)||‘‘‘;‘ from v$logfile;

‘ALTERDATABASERENAMEFILE‘‘‘||MEMBER||‘‘‘TO‘‘‘||‘+DATA/orcl/ONLINELOG/‘||REGEXP_SUBSTR(MEMBER,‘[^\/]+‘,1,4)||‘‘‘;‘
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
alter database rename file ‘+DATADG/orcl/onlinelog/group_1.261.967309327‘ to ‘+data/orcl/onlinelog/group_1.261.967309327‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_1.257.967309327‘ to ‘+data/orcl/onlinelog/group_1.257.967309327‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_2.265.967309327‘ to ‘+data/orcl/onlinelog/group_2.265.967309327‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_2.259.967309329‘ to ‘+data/orcl/onlinelog/group_2.259.967309329‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_3.262.967309409‘ to ‘+data/orcl/onlinelog/group_3.262.967309409‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_3.258.967309409‘ to ‘+data/orcl/onlinelog/group_3.258.967309409‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_4.266.967310049‘ to ‘+data/orcl/onlinelog/group_4.266.967310049‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_4.260.967310049‘ to ‘+data/orcl/onlinelog/group_4.260.967310049‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_5.268.967308939‘ to ‘+data/orcl/onlinelog/group_5.268.967308939‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_5.261.967308939‘ to ‘+data/orcl/onlinelog/group_5.261.967308939‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_6.269.967308939‘ to ‘+data/orcl/onlinelog/group_6.269.967308939‘;

‘ALTERDATABASERENAMEFILE‘‘‘||MEMBER||‘‘‘TO‘‘‘||‘+DATA/orcl/ONLINELOG/‘||REGEXP_SUBSTR(MEMBER,‘[^\/]+‘,1,4)||‘‘‘;‘
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
alter database rename file ‘+FRADG/orcl/onlinelog/group_6.262.967308939‘ to ‘+data/orcl/onlinelog/group_6.262.967308939‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_7.270.967308941‘ to ‘+data/orcl/onlinelog/group_7.270.967308941‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_7.263.967308941‘ to ‘+data/orcl/onlinelog/group_7.263.967308941‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_8.271.967309023‘ to ‘+data/orcl/onlinelog/group_8.271.967309023‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_8.264.967309023‘ to ‘+data/orcl/onlinelog/group_8.264.967309023‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_9.272.967309023‘ to ‘+data/orcl/onlinelog/group_9.272.967309023‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_9.265.967309025‘ to ‘+data/orcl/onlinelog/group_9.265.967309025‘;
alter database rename file ‘+DATADG/orcl/onlinelog/group_10.273.967309025‘ to ‘+data/orcl/onlinelog/group_10.273.967309025‘;
alter database rename file ‘+FRADG/orcl/onlinelog/group_10.266.967309025‘ to ‘+data/orcl/onlinelog/group_10.266.967309025‘;

20 rows selected.
执行上面的输出sql

alter database clear logfile group 1;
alter database clear logfile group 2;
alter database clear logfile group 3;
alter database clear logfile group 4;
alter database clear logfile group 5;
alter database clear logfile group 6;
alter database clear logfile group 7;
alter database clear logfile group 8;
alter database clear logfile group 9;
alter database clear logfile group 10;

SQL> ALTER DATABASE DISABLE BLOCK CHANGE TRACKING ; # 报错不管它

8、打开数据库
SQL> alter database open resetlogs ;

重启数据库
startup force ;

9、检查
检查参数文件spfile
SQL> show parameter spfile ;

检查控制文件controlfile
SQL> select NAME from v$controlfile ;

检查数据文件datafile
SQL> select NAME from v$datafile ;

检查日志文件logfile
SQL> select MEMBER from v$logfile ;

查看字符集
select userenv(‘LANGUAGE‘) FROM DUAL ;

集群实例状态
select instance_name ,status from gv$instance ;

检查集群状态
直接停掉# srvctl status database -d orcl
		# srvctl status instance -d orcl -i orcl1
		# srvctl status instance -d orcl -i orcl2
		# srvctl start database -d orcl
		# srvctl status database -d orcl

查看# su - grid
    # crs_stat -t -v
    # crsctl stat res -t

原文地址:https://www.cnblogs.com/zhouwanchun/p/10682706.html

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

数据迁移_老RAC_新RAC的相关文章

Office365 Groups and OD4B 不同tenant之间数据迁移_经验分享

目前国内很多企业都逐渐借助Microsoft 365的 解决方案为内部员工提供现代化办公环境,不限于可以提高企业分支机构之间的协作办公效率,满足跨平台移动办公需求,同时对企业来说也降低了IT基础架构投入和管理成本.但随着企业业务模型扩增,陆续有很多企业需要更高标准的Office 365 来满足其业务需求,那么就会衍生很多企业有Office 365 Tenant to Tenant的 数据转移的项目发生,但数据迁移并非是件容易的事情,需要考量点的地方比较多,同时利用对来源端的数据结构合理的分析并制

互联网“平滑数据迁移”架构技术实践

一.问题的提出 互联网有很多"数据量较大,并发量较大,业务复杂度较高"的业务场景,其典型系统分层架构如下: 上游是业务层biz,实现个性化的业务逻辑 中游是服务层service,封装相对通用的数据访问 下游是数据层db,存储固化的业务数据 服务化分层架构的好处是,服务层屏蔽下游数据层的复杂性,例如缓存.分库分表.存储引擎等存储细节不需要向调用方暴露,而只向上游提供方便的RPC访问接口.当有一些数据层变化的时候,所有的调用方也不需要升级,只需要服务层升级即可. 互联网架构,很多时候面临着

关于ssdcrm老系统数据迁移到新系统的系列实施办法

由于最近不断有客户提到crm老系统数据迁移的问题,为了切实帮助大家解决这个实际困难.本技术组近期将分批写出处理办法.今天我们先介绍一下5x系统的评论信息如何迁移到7x新系统. 关于老系统评论导入新系统的解决办法 问题描述: 5x系统的各个模块中带的评论信息,保存在ec_modcomments表中(通过phpmyadmin访问).直接导出该表的ec_modcomments.sql文件. 7x系统中的表结构与老系统有区别.主要是crmid的值不同.比如:5x系统中,一条联系记录模块带的评论信息,它对

elasticsearch7.5.0+kibana-7.5.0+cerebro-0.8.5集群生产环境安装配置及通过elasticsearch-migration工具做新老集群数据迁移

一.服务器准备 目前有两台128G内存服务器,故准备每台启动两个es实例,再加一台虚机,共五个节点,保证down一台服务器两个节点数据不受影响. 二.系统初始化 参见我上一篇kafka系统初始化:https://www.cnblogs.com/mkxfs/p/12030331.html 三.安装elasticsearch7.5.0 1.因zookeeper和kafka需要java启动 首先安装jdk1.8环境 yum install java-1.8.0-openjdk-devel.x86_64

Ubuntu中开启MySQL远程访问功能,并将另一个数据库服务器中的数据迁移到新的服务器中

一.开启MyS远程访问功能 1.进入服务器输入netstat -an | grep 3306确认3306是否对外开放,MySQL默认状态下是不对外开放访问功能的.输入以上命令之后如果端口没有被开放就会显示 <strong>显示结果:tcp 0 0 127.0.0.1:3306 0.0.0.0:*LISTEN</strong> 2.从上面的显示结果可以看出,mysql的3306端口只是监听本地的连接,这样就阻碍了外部ip对该数据库的访问,这样就需要修改mysql配置文件, 输入vim

SQL Server数据迁移至MySQL

背景: 我所在公司的官网使用了PHP进行重新开发,抛弃了原有.net开发环境,但需要使用到老官网的一些数据,所以需要进行数据迁移. 环境如下: 老官网:Windows Server 2008 R2, SQL Server 2008 R2 新官网:RedHat 6.5,MySQL,PHP... ====================我是分割线========================= 目前网络上有很多软件声称是可以进行SQL Server-> My SQL的数据迁移,比如OBDB2DB,

【SQLServer】记一次数据迁移-标识重复的简单处理

汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 今天在数据迁移的时候因为手贱遇到一个坑爹问题,发来大家乐乐,也传授新手点经验 迁移惯用就是临时表或者新库,经常用的语法有很多,这次主要说的是这个:select * into 数据库名..表名 from xxx 先不扯了,先看错误: 赶紧看看是不是数据重复~事实证明,木有重复数据... 有人会问,你怎么这样求count?...额,我会的是最基本的方法,常见的两种其实性能一样的,对比图:(

数据迁移实战

第一次接触数据迁移,开始就觉得是件折磨人的事情.从未做过,如何下手,是个头疼的问题. 于是网上各种资料搜罗,最后整理总结了两个要点:黑盒+白盒.这样才能完整地保证测试的有效性. 下面就先说一下黑盒部分 其实黑盒部分要说的不多.主要就是先了解迁移了哪部分内容,然后你才知道着手点.例如,我们的项目只迁移了消息部分内容.那我的目标就比较明确,只要保证消息迁移后各种场景都是可用的,且以前老数据一切正常.可现.可用.简单来说应该就包含以下6点吧. 1.老数据迁移后是否可正常展示,不会丢失: 2.迁移后老数

较复杂情况下小型数据库的数据迁移

虽然在操作之前作过一些测试,但主要考虑脚本的正确与否以及对数据库对象的影响.并没有完全在实际系统上运行.这也成为后来出现的一个问题没有预计到的根源.毕竟比较早的版本我没有用过:).那就是8.0.6的exp工具并支持到处数据到多个文件,file=file1,file2不能使用,而且也不清楚老的hp-unix是32位的时候支持大于2g的文件,而且8.0.6是否可以导出一个大于2G文件.后来出现问题之后经过查证系统支持,此避免使用磁带机或者文件压缩的方式(具体方法网络上有相关资料).   由于考虑到加