Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1981829
  • 博文数量: 148
  • 博客积分: 7697
  • 博客等级: 少将
  • 技术积分: 3071
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-10 23:04
个人简介

MiBDP,数据开发、项目团队、数据应用和产品在路上,金融保险、互联网网游、电商、新零售行业、大数据和AI在路上。对数仓、模型、ETL、数据产品应用了解。DTCC 2013演讲嘉宾,曾做过两款大获好评的数据产品平台。知识星球ID:35863277

文章分类
文章存档

2020年(1)

2019年(2)

2017年(2)

2016年(5)

2015年(1)

2014年(1)

2013年(6)

2012年(5)

2011年(24)

2010年(28)

2009年(1)

2008年(6)

2007年(30)

2006年(36)

分类: Oracle

2007-05-22 17:50:30

几个基本的概念:

RMAN备份:  是一种物理备份,可以用RMAN来备份数据文件、控制文件、参数文件、归档日志文件。我们在数据库出现问题的时候可以通过RMAN物理备份恢复到数据库的失效点。

恢复目录:  是存储在Oracle数据库中的恢复信息。类似于存储在控制文件中的RMAN资料档案库,他提供存储关于备份、重建和恢复信息的方法。

新的10g RMAN特点:

1.  跨操作系统平台移植数据库文件

2.  用闪回进行用户错误恢复

3.  自动表空间时间点恢复(TSPITR

4.  丢弃数据库

5.  使用备份副本和闪回恢复

6.  建立和使用RMAN备份副本

7.  配置默认磁盘备份磁带

8.  恢复没有备份的数据文件

9.  停止变化跟踪

10.              从目录中注销数据库

11.              RMAN备份的实际压缩

12.              出错报告改进

启动和连接到RMAN

关于启动RMAN有几个重要说明,如指定目标数据库和规定一个恢复目录等。下面了解三种使用RMAN工具的数据库连接类型。

数据库连接

说明

目标数据库

目标数据库是将备份和恢复定为目标的数据库。为了完成任务,要求SYSDAB权限

恢复目录数据库

恢复目录数据库是个可选数据库,它存储有关备份、恢复的信息和重建数据

辅助数据库

辅助数据库是备用数据库、复制数据库或辅助实例(备用或TSPITR

 

以下是使用恢复目录的RMAN

1.  首先,指定恢复目录将驻留的数据库。它不是目标数据库。(win下)

Set ORACLE_SID=orcl

2.  建立存储目录的用户。使用名字RMAN,密码为RAMN,默认表空间为users,临时表空间为temp

C:\>sqlplus /nolog

 

SQL*Plus: Release 10.2.0.1.0 - Production on 星期五 5 11 13:52:37 2007

 

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

 

SQL> connect /as sysdba

已连接。

SQL> create user rman identified by rman

  2  default tablespace users

  3  temporary tablespace temp;

 

用户已创建。

3.  RMAN用户以适当的许可权限:

    SQL> grant connect,resource,recovery_catalog_owner to rman;

 

授权成功。

4.  启动RMAN工具:

   C:\>rman

 

恢复管理器: Release 10.2.0.1.0 - Production on 星期五 5 11 13:55:07 2007

 

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

5.  将目录与被称为RMAN的用户建立连接

    RMAN> connect catalog rman/rman

 

连接到恢复目录数据库

6.  最后,指定希望存储目录的表空间,从而建立恢复目录:

    RMAN> create catalog tablespace users;

 

恢复目录已创建

 

下面就可以注册数据库,然后通过运行备份来使用恢复目录:

 

C:\>rman target sys/abc123@hatest

 

恢复管理器: Release 10.2.0.1.0 - Production on 星期五 5 11 16:54:31 2007

 

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

 

连接到目标数据库: HATEST (DBID=4206781982)

 

RMAN> connect catalog rman/rman@orcl

 

连接到恢复目录数据库

 

RMAN> register database;

 

注册在恢复目录中的数据库

正在启动全部恢复目录的 resync

完成全部 resync

 

RMAN>

 

RMAN> run

2> {

3> allocate channel c1 type disk;

4> backup database format 'db_%u_%d_%s';

5> backup format 'log_t%t_s%s_p%'

6> (archivelog all);

7> }

 

分配的通道: c1

通道 c1: sid=155 devtype=DISK

 

启动 backup 16-5 -07

通道 c1: 启动全部数据文件备份集

通道 c1: 正在指定备份集中的数据文件

输入数据文件 fno=00004 name=/home/oracle/oracle/product/10.2.0/oradata/hangan/us

ers01.dbf

输入数据文件 fno=00001 name=/home/oracle/oracle/product/10.2.0/oradata/hangan/sy

stem01.dbf

输入数据文件 fno=00003 name=/home/oracle/oracle/product/10.2.0/oradata/hangan/sy

saux01.dbf

输入数据文件 fno=00002 name=/home/oracle/oracle/product/10.2.0/oradata/hangan/un

dotbs01.dbf

通道 c1: 正在启动段 1 17-5 -07

释放的通道: c1

RMAN-03009: backup 命令 (c1 通道上, 05/16/2007 19:50:08 ) 失败

ORA-19502: write error on file "/home/oracle/oracle/product/10.2.0/db_1/dbs/db_0

1ihucr2_HANGAN_1", blockno 145281 (blocksize=8192)

ORA-27072: File I/O error

Linux Error: 2: No such file or directory

Additional information: 4

Additional information: 145281

Additional information: 675840

磁盘空间不足导致这种现象

 

RMAN> run

2> {

3> allocate channel c1 type disk;

4> backup database format 'db_%u_%d_%s';

5> }

 

分配的通道: c1

通道 c1: sid=155 devtype=DISK

 

启动 backup 16-5 -07

通道 c1: 启动全部数据文件备份集

通道 c1: 正在指定备份集中的数据文件

输入数据文件 fno=00004 name=/home/oracle/oracle/product/10.2.0/oradata/hangan/us

ers01.dbf

输入数据文件 fno=00001 name=/home/oracle/oracle/product/10.2.0/oradata/hangan/sy

stem01.dbf

输入数据文件 fno=00003 name=/home/oracle/oracle/product/10.2.0/oradata/hangan/sy

saux01.dbf

输入数据文件 fno=00002 name=/home/oracle/oracle/product/10.2.0/oradata/hangan/un

dotbs01.dbf

通道 c1: 正在启动段 1 17-5 -07

通道 c1: 已完成段 1 17-5 -07

段句柄=/home/oracle/oracle/product/10.2.0/db_1/dbs/db_02ihug93_HANGAN_2 标记=TAG

20070517T092802 注释=NONE

通道 c1: 备份集已完成, 经过时间:00:07:35

通道 c1: 启动全部数据文件备份集

通道 c1: 正在指定备份集中的数据文件

备份集中包括当前控制文件

在备份集中包含当前的 SPFILE

通道 c1: 正在启动段 1 17-5 -07

通道 c1: 已完成段 1 17-5 -07

段句柄=/home/oracle/oracle/product/10.2.0/db_1/dbs/db_03ihugna_HANGAN_3 标记=TAG

20070517T092802 注释=NONE

通道 c1: 备份集已完成, 经过时间:00:00:05

完成 backup 16-5 -07

释放的通道: c1

 

RMAN>

RMAN的参数和永久设置

通过执行show all命令以显示所有配置参数:

RMAN> show all;

 

RMAN 配置参数为:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

CONFIGURE BACKUP OPTIMIZATION OFF; # default

CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default

CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE MAXSETSIZE TO UNLIMITED; # default

CONFIGURE ENCRYPTION FOR DATABASE OFF; # default

CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default

CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default

CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\S

NCFORCL.ORA'; # default

有一些常用的有助于使用RMAN的配置参数设置。在日常操作中,这些设置很有用:

·DEVICE TYPE(媒介类型)

·BACKUP TYPE(备份类型)

·COMPRESSED BACKUPSET(压缩的备份集)

·CHANNEL DISK DEVICE(通道和磁盘设备)

·CHANNEL TAPE DEVICE(通道和磁带设备)

将默认的设备配置为磁盘或磁带,使用以下命令:

RMAN> configure default device type to disk;   --磁带为sbt

 

新的 RMAN 配置参数:

CONFIGURE DEFAULT DEVICE TYPE TO DISK;

已成功存储新的 RMAN 配置参数

设置备份类型为图像副本或者备份集的命令是:

RMAN> configure device type disk backup type to backupset;   --图像副本为copy

 

新的 RMAN 配置参数:

CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET PARALLELISM 1;

已成功存储新的 RMAN 配置参数

保留策略

保留策略是为了用于可能的恢复,是备份被保留的时间长度。由参数RETENTION POLICY确定。可以修改这个参数的设置:

RMAN> configure retention policy to recovery window of 30 days;

 

新的 RMAN 配置参数:

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 30 DAYS;

已成功存储新的 RMAN 配置参数

 

RMAN>

 

本课暂时到这里,下节继续~哈哈*_*

阅读(4250) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~