RMAN_RMAN备份标准过程(案例)

2014-12-23 Created By 鲍新建

一、摘要



RMAN是Oracle提供的恢复和备份工具,是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。

与传统工具相比,RMAN具有独特的优势:跳过未使用的数据块。

当备份一个RMAN备份集时,RMAN不会备份从未被写入的数据块,而传统的方式无法获知那些是未被使用的数据块。

RMAN使用Oracle特有的二进制压缩模式,与传统备份的压缩方式相比,能够最大程度地压缩数据块中的一些典型数据

二、备份 - Backup



Step1. 确认一个新的目录是否够大 - Check new filesystem for backup

[[email protected] backup]$ pwd
/data/oracle/odellprod/backup
[[email protected] backup]$ df -k /data/oracle/odellprod/backup
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda2             38352124  18196724  18175792  51% /

Step2. 将数据库odellprod切换成Mount模式 - Mount database odellprod

[[email protected] backup]$ . oraenv
ORACLE_SID = [odellprod] ? odellprod
The Oracle base for ORACLE_HOME=/opt/oracle/product/11.2.0/odellprod is /opt/oracle
[[email protected] backup]$ sqlplus ‘/as sysdba‘
SQL*Plus: Release 11.2.0.1.0 Production on Tue Dec 23 01:34:36 2014
Copyright (c) 1982, 2009, Oracle.  All rights reserved.
Connected to an idle instance.

SQL> startup mount
ORACLE instance started.
Total System Global Area  422670336 bytes
Fixed Size                  1336960 bytes
Variable Size             318769536 bytes
Database Buffers           96468992 bytes
Redo Buffers                6094848 bytes
Database mounted.

Step3. 备份数据库、日志、控制文件和参数文件 - Backup database, archivelogs, controlfiles and spfile with rman

[[email protected] backup]$ export NLS_DATE_FORMAT=‘YYYY-MM-DD HH24:MI:SS‘
[[email protected] backup]$ rman target /
Recovery Manager: Release 11.2.0.1.0 - Production on Tue Dec 23 01:38:07 2014
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
connected to target database: ODELLPRO (DBID=1328237028, not open)

RMAN> show DEVICE TYPE;
using target database control file instead of recovery catalog
RMAN configuration parameters for database with db_unique_name ODELLPROD are:
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

RMAN> CONFIGURE DEVICE TYPE DISK PARALLELISM 6;
new RMAN configuration parameters:
CONFIGURE DEVICE TYPE DISK PARALLELISM 6 BACKUP TYPE TO BACKUPSET;
new RMAN configuration parameters are successfully stored

RMAN> show DEVICE TYPE;
RMAN configuration parameters for database with db_unique_name ODELLPROD are:
CONFIGURE DEVICE TYPE DISK PARALLELISM 6 BACKUP TYPE TO BACKUPSET;

RMAN> run
{
BACKUP AS COMPRESSED BACKUPSET
INCREMENTAL LEVEL = 0 DATABASE
FORMAT = ‘/data/oracle/odellprod/backup/ODELLPROD_DF_%U_%T‘ tag ‘database backup‘
PLUS ARCHIVELOG SKIP INACCESSIBLE
FORMAT=‘/data/oracle/odellprod/backup/ODELLPROD_ARCH_%U_%T‘ tag ‘archive log backup‘;

backup spfile format ‘/data/oracle/odellprod/backup/ODELLPROD_SPFILE‘ tag ‘spfile backup‘;

backup current controlfile format ‘/data/oracle/odellprod/backup/ODELLPROD_CONTROLFILE‘ tag ‘control file backup‘;
}2> 3> 4> 5> 6> 7> 8> 9> 10> 11> 12> 

Starting backup at 2014-12-23 01:39:01
Finished backup at 2014-12-23 01:44:46

RMAN> list backup;

RMAN> exit

三、恢复 - Recovery



Step1. 确认Backup目录是否有效 - Make sure filesystem with backups is mounted

[oracle@odellprod backup]$ df -k /data/oracle/odellprod/backup
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda2             38352124  19588744  16783772  54% /
[oracle@odellprod backup]$ ls -ltr /data/oracle/odellprod/backup
total 1391716
-rw-r----- 1 oracle oinstall 169477120 Dec 23 01:42 ODELLPROD_ARCH_0apqrkto_1_1_20141223
-rw-r----- 1 oracle oinstall 160933376 Dec 23 01:42 ODELLPROD_ARCH_0fpqrktq_1_1_20141223
-rw-r----- 1 oracle oinstall 179330048 Dec 23 01:42 ODELLPROD_ARCH_0bpqrkto_1_1_20141223
-rw-r----- 1 oracle oinstall 190604800 Dec 23 01:42 ODELLPROD_ARCH_0cpqrktp_1_1_20141223
-rw-r----- 1 oracle oinstall 195282944 Dec 23 01:43 ODELLPROD_ARCH_0dpqrktp_1_1_20141223
-rw-r----- 1 oracle oinstall 195831296 Dec 23 01:43 ODELLPROD_ARCH_0epqrktp_1_1_20141223
-rw-r----- 1 oracle oinstall   1441792 Dec 23 01:43 ODELLPROD_DF_0hpqrl5i_1_1_20141223
-rw-r----- 1 oracle oinstall   3637248 Dec 23 01:43 ODELLPROD_DF_0kpqrl5l_1_1_20141223
-rw-r----- 1 oracle oinstall     98304 Dec 23 01:43 ODELLPROD_DF_0mpqrl66_1_1_20141223
-rw-r----- 1 oracle oinstall   1114112 Dec 23 01:43 ODELLPROD_DF_0lpqrl5m_1_1_20141223
-rw-r----- 1 oracle oinstall  22978560 Dec 23 01:43 ODELLPROD_DF_0jpqrl5j_1_1_20141223
-rw-r----- 1 oracle oinstall  93609984 Dec 23 01:44 ODELLPROD_DF_0ipqrl5i_1_1_20141223
-rw-r----- 1 oracle oinstall 199303168 Dec 23 01:44 ODELLPROD_DF_0gpqrl5h_1_1_20141223
-rw-r----- 1 oracle oinstall     98304 Dec 23 01:44 ODELLPROD_SPFILE
-rw-r----- 1 oracle oinstall   9895936 Dec 23 01:44 ODELLPROD_CONTROLFILE

Step2. 从备份中恢复参数文件 - Restore spfile from backups

[oracle@odellprod dbs]$ . oraenv
ORACLE_SID = [odellprod] ? odellprod
The Oracle base for ORACLE_HOME=/opt/oracle/product/11.2.0/odellprod is /opt/oracle
[oracle@odellprod dbs]$ export NLS_DATE_FORMAT=‘YYYY-MM-DD HH24:MI:SS‘
[oracle@odellprod dbs]$ rman target /
Recovery Manager: Release 11.2.0.1.0 - Production on Tue Dec 23 01:57:55 2014
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
connected to target database (not started)

RMAN> startup nomount
Oracle instance started
Total System Global Area     422670336 bytes
Fixed Size                     1336960 bytes
Variable Size                318769536 bytes
Database Buffers              96468992 bytes
Redo Buffers                   6094848 bytes

RMAN> restore spfile to ‘$ORACLE_HOME/dbs/spfileodellprod.ora‘ from ‘/data/oracle/odellprod/backup/ODELLPROD_SPFILE‘;

RMAN> shutdown immediate
Oracle instance shut down

Step3. 从备份中恢复控制文件 - Restore controlfiles from backups and mount database

RMAN> startup nomount
connected to target database (not started)
startup failed: ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file ‘/opt/oracle/product/11.2.0/odellprod/dbs/initodellprod.ora‘
starting Oracle instance without parameter file for retrieval of spfile
Oracle instance started
Total System Global Area     159019008 bytes
Fixed Size                     1335192 bytes
Variable Size                 75497576 bytes
Database Buffers              79691776 bytes
Redo Buffers                   2494464 bytes

RMAN> restore controlfile from ‘/data/oracle/odellprod/backup/ODELLPROD_CONTROLFILE‘;
Starting restore at 2014-12-23 02:03:52
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=18 device type=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/opt/oracle/product/11.2.0/odellprod/dbs/cntrlodellprod.dbf
Finished restore at 2014-12-23 02:03:53

RMAN> alter database mount;
database mounted
released channel: ORA_DISK_1

Step4. 从备份中恢复数据文件 - Restore database from backups

RMAN> restore database;
Starting restore at 2014-12-23 02:04:35
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=18 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=19 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=21 device type=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: SID=22 device type=DISK
allocated channel: ORA_DISK_5
channel ORA_DISK_5: SID=23 device type=DISK
allocated channel: ORA_DISK_6
channel ORA_DISK_6: SID=24 device type=DISK
skipping datafile 1; already restored to file /opt/oracle/oradata/odellprod/system01.dbf
skipping datafile 2; already restored to file /opt/oracle/oradata/odellprod/sysaux01.dbf
skipping datafile 3; already restored to file /opt/oracle/oradata/odellprod/undotbs01.dbf
skipping datafile 4; already restored to file /opt/oracle/oradata/odellprod/users01.dbf
skipping datafile 5; already restored to file /opt/oracle/oradata/odellprod/example01.dbf
restore not done; all files read only, offline, or already restored
Finished restore at 2014-12-23 02:04:37

Step5. 还原数据库 - Recover database

RMAN> recover database;
Starting recover at 2014-12-23 02:05:15
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6
starting media recovery
archived log for thread 1 with sequence 103 is already on disk as file /opt/oracle/oradata/odellprod/redo01.log
archived log file name=/opt/oracle/oradata/odellprod/redo01.log thread=1 sequence=103
media recovery complete, elapsed time: 00:00:00
Finished recover at 2014-12-23 02:05:16

Step6. 打开数据 - Open database

RMAN> alter database open resetlogs;
database opened

时间: 2024-10-12 11:48:48

RMAN_RMAN备份标准过程(案例)的相关文章

YourSQLDba备份失败案例锦集

使用YourSQLDba做备份.维护.管理时,偶尔会收到一些备份失败的邮件.导致YourSQLDba备份失败的情况比价多,打算在此篇中对YourSQLDba备份失败的案例做一些总结.整理. 1:YourSQLDba由于事务日志满了.具体情况如下: 检查YourSQLDba备份失败日志信息,你会看到下面这类错误信息. The transaction log for database 'xxxx' is full.To find out why space in the log cannot be

ldap的详细介绍,搭建,配置管理,备份,案例

Ldap  服务应用指南 兼容(5.X&6.X) 1.1  Ldap 目录服务介绍 1.1.1 什么是目录服务(active directory)?? 目录是一类为了浏览和搜索数据为设计的特殊的数据库,目录服务是按照树状存储信息的 目录进行更新的操作,可以说是要么全部,要么都不得原子性操作 目录不支持大多数事物型数据库所支持的高吞吐量和复杂的更新操作,适应于大量的查询和搜索操作,为了保证数据的可靠性和可用性,他也有主从服务器同步数据信息能力. ldap 也可以一主多从. ldap 可以说是活动目

企业备份恢复案例

在MySQl中我们备份数据一般有几种方式 热备份                         温备份                           冷备份 热备份指的是当数据库进行备份时, 数据库的读写操作均不是受影响 温备份指的是当数据库进行备份时, 数据库的读操作可以执行, 但是不能执行写操作 冷备份指的是当数据库进行备份时, 数据库不能进行读写操作, 即数据库要下线 这里我们说个MYSQL数据库的备份与恢复的企业案例 条件: 1.具备全量备份(mysqldump). 2.除全量备

rsync 全网备份企业案例

某公司里有一台web服务器,里面的数据很重要,但是如果硬盘花了,数据就会丢失,现在领导要求你把数据在其他的服务器上做一个周期性定时备份,要求如下: 每天晚上00点钟在web服务器A上打包备份网站目录并通过rsync命令推送到服务器B上备份保留(备份思路可以是按日期打包,然后再推到备份服务器上.) 具体要求如下 1.    web服务器A和备份服务器B的备份目录必须都是/backup 2.    web服务器站点目录假定(/var/www/html) 3.    web服务器本地仅保留7天内的备份

linux Crontab定时备份项目案例

首先先写好备份的脚本(拷贝的命令) #bash/bin cd /finance/tomcat8-finance/wtpwebapps tar -czf /finance/webapp_backup/**.finance.web.`date +'%Y%m%d-%H%M%S'`.tar.gz liyedai.finance.web 备份的文件会以当前时间来命名. 脚本一定要赋予权限. 然后给linux添加定时任务 crontab -e 0 1 * * * /finance/9backup_finan

关系型数据库之Mysql备份(五)

二进制日志简要: 二进制日志通常作为备份的重要资源,所以再说备份之前我们来回顾下前面专题讲过的二进制日志内容. 1.二进制日志内容 引起mysql服务器改变的任何操作. 复制功能依赖于此日志. 从服务器通过主服务器的二进制日志完成主从复制,在执行之前保存于中继日志中. 从服务器通常可以关闭二进制日志以提升性能. 2.二进制文件的格式表现形式: 默认在安装目录下,存在mysql-bin.000001,mysql-bin.00002的二进制文件 另外还有mysql-bin.index用来记录被mys

mysql备份及pymysql

一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接数据库 #2. 新建库 #3. 新建表,新增字段+类型+约束 #4. 设计表:外键 #5. 新建查询 #6. 备份库/表 #注意: 批量加注释:ctrl+?键 批量去注释:ctrl+shift+?键 回到顶部 二 MySQL数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境.但不

mysql备份实例方案

在线备份如何保障备份的数据的一致性,使用逻辑卷快照功能来实现,先锁几秒 把blog日志重定向到一个文件里,再用source导入到数据库里,因为每操作一步都会产生新的blog日志 物理备份: 直接复制数据库文件,适用于大型数据库环境,一般结构lvm snapshot的方式实现,缺点是不能恢复到异构系统中如Windows中 逻辑备份 备份的是建表,建库,插入等操作所执行的sql语句,适用于中小型数据库,效率比较低 Mysqldump实现逻辑备份 语法 #mysqldump -h 服务器 -u用户名

mysql:数据备份、pymysql模块

一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接数据库 #2. 新建库 #3. 新建表,新增字段+类型+约束 #4. 设计表:外键 #5. 新建查询 #6. 备份库/表 #注意: 批量加注释:ctrl+?键 批量去注释:ctrl+shift+?键 二 MySQL数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境.但不能恢复到异