oracle11g 在azure云中使用rman进行实例迁移
1,開始备份
备份脚本rman_full_backup.sh内容例如以下:
#!/bin/sh
export DATE=`date +%F`
export BACK_DIR='/backupdisk/backup/data'
su - oracle -c "
mkdir -p $BACK_DIR/$DATE
rman log=$BACK_DIR/$DATE/rman_backup.log target / <<EOF
run{
backup as compressed backupset database
format '$BACK_DIR/$DATE/full_%d_%T_%s.bak'
plus archivelog
format '$BACK_DIR/$DATE/arch_%d_%T_%s.bak' delete input;
sql 'alter system archive log current';
}
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt expired archivelog all;
delete noprompt obsolete;
exit
EOF
"
su - oracle -c "
chmod 775 $BACK_DIR/$DATE/*
" #cd /home/pdbcakup/
echo "begin to copy the backup to pd servers." >> /tmp/oracle_fullback.log
#cp -r $BACK_DIR/$DATE /home/pdbcakup
echo "end to copy the backup to pd server." >> /tmp/oracle_fullback.log
备份步骤例如以下所看到的:
[root@test_90 ~]# bash -x /oracle/backup/scripts/rman_full_backup.sh
++ date +%F
+ export DATE=2016-03-17
+ DATE=2016-03-17
+ export BACK_DIR=/oracle/backup/data
+ BACK_DIR=/oracle/backup/data
+ su - oracle -c '
mkdir -p /oracle/backup/data/2016-03-17
rman log=/oracle/backup/data/2016-03-17/rman_backup.log target / <<EOF
run{
backup as compressed backupset database
format '\''/oracle/backup/data/2016-03-17/full_%d_%T_%s.bak'\''
plus archivelog
format '\''/oracle/backup/data/2016-03-17/arch_%d_%T_%s.bak'\'' delete input;
sql '\''alter system archive log current'\'';
}
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt expired archivelog all;
delete noprompt obsolete;
exit
EOF
'
RMAN> 2> 3> 4> 5> 6> 7> RMAN> RMAN> RMAN> RMAN> RMAN> RMAN> + su - oracle -c '
chmod 775 /oracle/backup/data/2016-03-17/*
'
+ echo 'begin to copy the backup to pd servers.'
+ echo 'end to copy the backup to pd server.'
[root@test_90 ~]# ll
2,查看备份的文件文件夹
RMAN> list backup of controlfile; using target database control file instead of recovery catalog List of Backup Sets
=================== BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
6 Full 1.05M DISK 00:00:01 17-MAR-16
BP Key: 6 Status: AVAILABLE Compressed: YES Tag: TAG20160317T202130
Piece Name: /oracle/backup/data/2016-03-17/full_POWERDES_20160317_15.bak
Control File Included: Ckp SCN: 31576216 Ckp time: 17-MAR-16 RMAN> list backup of spfile; List of Backup Sets
=================== BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
6 Full 1.05M DISK 00:00:01 17-MAR-16
BP Key: 6 Status: AVAILABLE Compressed: YES Tag: TAG20160317T202130
Piece Name: /oracle/backup/data/2016-03-17/full_POWERDES_20160317_15.bak
SPFILE Included: Modification time: 17-MAR-16
SPFILE db_unique_name: POWERDES RMAN> [oracle@test_90 ~]$ rlwrap sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Thu Mar 17 21:08:32 2016 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>
SQL> create pfile='/oracle/pfile_20160317.ora' from spfile; File created. SQL>
原blog地址: http://blog.csdn.net/mchdba/article/details/50990181,未经过原作者mchdba(黄杉)允许。谢绝转载。
3,传输
[oracle@test_90 ~]$ scp -P50390 -r /oracle/pfile_20160317.ora 2016-03-17 192.168.237.46:/oracle/backup/
The authenticity of host '[192.168.237.46]:50390 ([192.168.237.46]:50390)' can't be established.
RSA key fingerprint is c0:1c:30:8a:bd:8c:90:b2:af:57:1d:29:ab:1f:90:f9.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.237.46]:50390' (RSA) to the list of known hosts.
oracle@192.168.237.46's password:
pfile_20160317.ora 100% 1008 1.0KB/s 00:00
[oracle@test_90 ~]$
[oracle@test_90 data]$ scp -P50390 -r 2016-03-17 192.168.237.46:/oracle/backup/
oracle@192.168.237.46's password:
full_POWERDES_20160317_14.bak 100% 1914MB 4.7MB/s 06:49
full_POWERDES_20160317_15.bak 100% 1088KB 1.1MB/s 00:00
arch_POWERDES_20160317_16.bak 100% 180KB 179.5KB/s 00:00
rman_backup.log 100% 6331 6.2KB/s 00:00
[oracle@test_90 data]$
4,去目标库上nomount方式启动数据库
SQL> shutdown immediate
ORA-01507: database not mounted ORACLE instance shut down.
SQL> startup nomount pfile='/oracle/backup/pfile_20160317.ora';
ORACLE instance started. Total System Global Area 1603411968 bytes
Fixed Size 2213776 bytes
Variable Size 1023412336 bytes
Database Buffers 570425344 bytes
Redo Buffers 7360512 bytes
SQL>
5,恢复控制文件
RMAN> restore controlfile to '/oracle/app/oracle/orclstu/control01.ctl' from '/oracle/backup/2016-03-17/full_POWERDES_20160317_15.bak'; Starting restore at 17-MAR-16
using channel ORA_DISK_1 channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
Finished restore at 17-MAR-16 RMAN>
6,将数据库状态改成mount:
RMAN> alter database mount
2> ; database mounted
released channel: ORA_DISK_1 RMAN>
7,注冊备份文件
RMAN> catalog start with '/oracle/backup/2016-03-17'; Starting implicit crosscheck backup at 17-MAR-16
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=134 device type=DISK
Crosschecked 4 objects
Finished implicit crosscheck backup at 17-MAR-16 Starting implicit crosscheck copy at 17-MAR-16
using channel ORA_DISK_1
Finished implicit crosscheck copy at 17-MAR-16 searching for all files in the recovery area
cataloging files...
no files cataloged searching for all files that match the pattern /oracle/backup/2016-03-17 List of Files Unknown to the Database
=====================================
File Name: /oracle/backup/2016-03-17/rman_backup.log
File Name: /oracle/backup/2016-03-17/arch_POWERDES_20160317_16.bak
File Name: /oracle/backup/2016-03-17/full_POWERDES_20160317_15.bak
File Name: /oracle/backup/2016-03-17/full_POWERDES_20160317_14.bak Do you really want to catalog the above files (enter YES or NO)? YES
cataloging files...
cataloging done List of Cataloged Files
=======================
File Name: /oracle/backup/2016-03-17/arch_POWERDES_20160317_16.bak
File Name: /oracle/backup/2016-03-17/full_POWERDES_20160317_15.bak
File Name: /oracle/backup/2016-03-17/full_POWERDES_20160317_14.bak List of Files Which Where Not Cataloged
=======================================
File Name: /oracle/backup/2016-03-17/rman_backup.log
RMAN-07517: Reason: The file header is corrupted RMAN>
8。開始运行restore恢复操作。将数据从备份集写入到磁盘上的数据文件中面,还原已经备份的数据文件
RMAN> restore database; Starting restore at 17-MAR-16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=133 device type=DISK channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /data/oracle/orclstu/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /data/oracle/orclstu/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /data/oracle/orclstu/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /data/oracle/orclstu/users01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /data/oracle/orclstu/orclstuk01.dbf
channel ORA_DISK_1: restoring datafile 00006 to /data/oracle/orclstu/plas01.dbf
channel ORA_DISK_1: restoring datafile 00007 to /data/oracle/orclstu/plcrm01.dbf
channel ORA_DISK_1: restoring datafile 00008 to /data/oracle/orclstu/pl01.dbf
channel ORA_DISK_1: restoring datafile 00009 to /data/oracle/orclstu/help01.dbf
channel ORA_DISK_1: reading from backup piece /oracle/backup/2016-03-17/full_POWERDES_20160317_14.bak
channel ORA_DISK_1: piece handle=/oracle/backup/2016-03-17/full_POWERDES_20160317_14.bak tag=TAG20160317T202130
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:14:25
Finished restore at 17-MAR-16 RMAN>
9,应用归档日志恢复数据文件
RMAN> recover database; Starting recover at 17-MAR-16
using channel ORA_DISK_1 starting media recovery channel ORA_DISK_1: starting archived log restore to default destination
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=1428
channel ORA_DISK_1: reading from backup piece /oracle/backup/2016-03-17/arch_POWERDES_20160317_16.bak
channel ORA_DISK_1: piece handle=/oracle/backup/2016-03-17/arch_POWERDES_20160317_16.bak tag=TAG20160317T202918
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:03
archived log file name=/oracle/app/oracle/flash_recovery_area/POWERDES/archivelog/2016_03_17/o1_mf_1_1428_cgog3ons_.arc thread=1 sequence=1428
channel default: deleting archived log(s)
archived log file name=/oracle/app/oracle/flash_recovery_area/POWERDES/archivelog/2016_03_17/o1_mf_1_1428_cgog3ons_.arc RECID=2 STAMP=906760822
unable to find archived log
archived log thread=1 sequence=1429
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 03/17/2016 22:00:29
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 1429 and starting SCN of 31576222 RMAN>
须要将缺失的归档日志从原始备份库copy到微软云azure的oracle服务器上 ,或者直接恢复到SCN点上:
RMAN> recover database until scn 31576222; Starting recover at 17-MAR-16
using channel ORA_DISK_1 starting media recovery
media recovery complete, elapsed time: 00:00:00 Finished recover at 17-MAR-16 RMAN>
10,打开数据库
RMAN> alter database open resetlogs; database opened RMAN>
11,验证数据库
[oracle@yueworldoracle_crm admin]$ more tnsnames.ora
# tnsnames.ora Network Configuration File: /oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools. POWERDES =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orclstu)
)
) CRM390 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.158.3.91)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orclstu)
)
)
[oracle@yueworldoracle_crm admin]$ [oracle@yueworldoracle_crm admin]$ rlwrap sqlplus orclstuk/pa1624390@CRM390; SQL*Plus: Release 11.2.0.1.0 Production on Thu Mar 17 22:15:41 2016 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> create table z_te(id number); Table created. SQL> insert into z_te(id)values(1); 1 row created. SQL> commit; Commit complete. SQL> select * from z_te; ID
----------
1 SQL> drop table z_te; Table dropped. SQL> select * from z_te;
select * from z_te
*
ERROR at line 1:
ORA-00942: table or view does not exist SQL>
oracle11g 在azure云中使用rman进行实例迁移的更多相关文章
- Oracle 单实例 迁移到 RAC 实例 -- 使用RMAN 异机恢复
Oracle 官网有关单实例迁移到RAC的一个步骤说明: How to Convert 10g Single-Instance database to 10g RAC using Manual Con ...
- Rman实现数据库迁移
Rman实现数据库迁移(从库A迁移到库B)环境:服务器A:Oracle10g+AS3服务器B:Oracle10g+AS4准备工作: 1 在数据库B上建立与库A相同的目录结构(若由于磁盘空间等原因可以用 ...
- 网易云 MySQL实例迁移的技术实现
本文由 网易云 发布. 我们把数据库里部分或全部 Schema和数据迁移到另一个实例的行为称为实例迁移,将导出数据的实例称为源实例,导入数据的实例称为目标实例. 根据迁移数据库类型的不同,可以分为同 ...
- 平台支持的从经典部署模型到 Azure Resource Manager 的 IaaS 资源迁移
本文介绍如何才能将基础结构即服务 (IaaS) 资源从经典部署模型迁移到 Resource Manager 部署模型. 用户可以阅读有关 Azure Resource Manager 功能和优点的更多 ...
- redis跨实例迁移 & redis上云
1)redis跨实例迁移--源实例db11迁移至目标实例db30 root@fe2e836e4470:/data# redis-cli -a pwd1 -n 11 keys \* |while rea ...
- Windows Azure虚拟机和云服务实例计费方式更新
在之前的Windows Azure计费账单中,A0,A1,A2,A3,A4系列的虚拟机(云服务实例)都是以A1为基准计费单位的,即: 虚拟机大小 计费单位(小时) A0 A1*0.25 A1 A1*1 ...
- RMAN备份与恢复实例
1. 检查数据库模式: sqlplus /nolog conn /as sysdba archive log list (查看数据库是否处于归档模式中) 若为非归档,则修改数据库归档模式 ...
- Azure 云服务中的实例端点
Azure云服务(cloud Servive)中有三种端点类型(endpoint type):输入端点(input);内部端点(internal);实例端点(InstanceInput) 1.输入端点 ...
- 禁用 Windows Azure 网站中的 ARR 实例关联
编辑人员注释: 本博客文章由 Windows Azure 网站团队的项目经理 Erez Benari 撰写. 在 Windows Azure 网站中设置网站的多个实例是横向扩展网站的绝佳方式,Azur ...
随机推荐
- 设计模式六大原则(二):里氏替换原则(Liskov Substitution Principle)
里氏替换原则(LSP)由来: 最早是在 妖久八八 年, 由麻神理工学院得一个女士所提出来的. 定义: 1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 ...
- js面向对象1----了解构造函数
一.构造函数与实例的区别 1 构造函数 构造函数主要是一种用于生成对象的饼干模具,这些对象具有默认属性和属性方法,它可以创建多个共享特定特性和行为的对象. 构造函数只是一个函数,但当函数遇到了ne ...
- React评论展示案例(包含知识点:state、props、ref、React声明周期、localStorage本地存储等)
本案例在上一篇的案例(React组件之间通过Props传值的技巧(小案例,帮助体会理解props.state.受控组件和非受控组件等))的基础上加强功能和用户体验,但是当然还有很多需要改进的地方,后期 ...
- STL之vector容器的实现框架
说明:本文仅供学习交流,转载请标明出处,欢迎转载. 实现vector容器的思路等同于实现一个动态数组,以下我们參照源代码的相关资料,给出一个vector容器的大致框架,仅仅有声明,没给出详细的实现. ...
- echarts+百度地图+vue 填坑记(一)(百度地图、鼠标移入移出标注,信息框会产生闪烁)
大概七月底开始实习,到现在经历了两个完整的项目(c2b). 因为开发时间紧,任务重,所以在开发过程踩到的坑都没时间去记录. 现在在开发一个某链运输监控系统,到了收尾阶段,有时间写博客了!开心! 一.鼠 ...
- 在 Windows 10 x64 上安装及使用 ab 工具的流程
本文转自:www.shuijingwanwq.com/2017/04/18/1568/ 1.基于AB测试工具进行高并发情形下的模拟测试,打开:http://httpd.apache.org/docs/ ...
- 详解Spring Boot配置文件之多环境配置
一. 多环境配置的好处: 1.不同环境配置可以配置不同的参数~ 2.便于部署,提高效率,减少出错~ 二. properties多环境配置 1. 配置激活选项 spring.profiles.activ ...
- Python内部机制-PyObject对象
PyObject对象机制的基石 学过Python的人应该非常清晰,Python中一切都是对象,全部的对象都有一个共同的基类,对于本篇博文来说,一切皆是对象则是探索Python的对象机制的一个入口点.我 ...
- js进阶 12-17 jquery实现鼠标左键按下拖拽功能
js进阶 12-17 jquery实现鼠标左键按下拖拽功能 一.总结 一句话总结:监听的对象必须是文档,鼠标按下运行mousemove事件,鼠标松开取消mousemove事件的绑定,div的偏移的话是 ...
- C语言18个经典问题答录
原文地址:转载:C语言18个经典问题答录作者:lloo 1.这样的初始化有什么问题?char *p = malloc(10); 编译器提示"非法初始式" 云云. 答:这个声明是静态 ...