10gocm->session3->数据备份与恢复

这个实验考查我们当数据库出现问题宕机、数据丢失的情况下怎样挽回我们的损失,怎样在最短时间内恢复我们的数据库服务。

RMAN规划
host target库 catalog库
ocm01 ocmdb  
ocm02   ocmdb02

一 模拟Control File 丢失故障处理(实例)

我们模拟控制文件丢失故障并进行高速恢复

强行停止数据库

select open_mode,log_mode from v$database;

1.shutdown abort

rm命令删除控制文件

rm control01.ctl

startup 启动数据库时就会发现报错信息

我们检查alert日志获知控制文件丢失

shutdown immediate  停掉数据库

2.使用完善的控制文件恢复丢失的控制文件

cp control02.ctl  ../disk1/control01.ctl

重新启动数据库

startup

二 创建CATALOG库保存RMAN备份信息

1.catalog库统一管理RMAN备份信息即元数据信息,假设没有catalog库,就把RMAN备份信息写入控制文件

2.目标数据库必须注冊到catalog库中才干使用

官方文档:Backup and Recovery Reference -> CREATE CATALOG和REGISTER

Backup and Recovery Advanced User’s Guide -> 10 Managing the Recovery Catalog -> Creating a Recovery Catalog

注:ocmdb是目标数据库

ocmdb02是CATALOG数据库

1.创建表空间            这个表空间存放catalog库内容

sqlplus sys/[email protected] as sysdba

create tablespace catalog_tbs datafile ‘/u01/oracle/oradata/ocmdb02/catalog_tbs01.dbf‘ size 100m autoextend on;

2.创建catalog库管理用户catalog_admin默认表空间catalog_tbs

create user catalog_admin identified by catalog_admin default tablespace catalog_tbs;

3.将recovery_catalog角色授予给catalog_admin用户才干备份和恢复

注:有的同学会问,我直接授予DBA角色不就能够了吗。事实上DBA角色不是万能的,它不包含上述角色因此我们须要单独设置

select * from dba_roles where role like ‘%RECOVER%‘;                  有没有这个角色

select * from role_sys_privs where role=‘RECOVERY_CATALOG_OWNER‘;     这个角色包括哪些权限

grant connect,resource,recovery_catalog_owner to catalog_admin;       仅仅需这三个角色就可以

4.登录RMAN创建CATALOG库

rman catalog catalog_admin/[email protected]

create catalog tablespace catalog_tbs;                               把catalog_tbs表空间指定为catalog库

exit

5.注冊目标数据库

注冊ocmdb

必需要管理员身份登录数据库才可注冊普通用户不能够

rman target sys/[email protected] catalog catalog_admin/[email protected]

register database;

注冊ocmdb02

rman target sys/oracle catalog catalog_admin/catalog_admin

register database;

【unregister database; 】取消注冊命令

6.在数据库中确认注冊成功。看看哪些数据库注冊到catalog库了

sqlplus catalog_admin/[email protected]

select * from rc_database;

7.ocmdb开启归档

alter system set log_archive_dest_1=‘location=/u01/oracle/arcdata‘ scope=spfile;

shutdown immediate

startup mount

alter database archivelog;

alter database open;

select log_mode from v$database;

三 设置RMAN环境变量

官方文档:Backup and Recovery Reference -> CONFIGURE

我们在使用RMAN工具进行备份恢复时,第一 能够在命令行模式下指定备份恢复选项

第二 能够提前设置好RMAN环境变量。当达到触发条件时自己主动触发(目的)

必须连接到目标数据库后才干够查看设置好的变量值

rman target sys/[email protected] catalog catalog_admin/[email protected]

show all;

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default 冗余配置保留政策:冗余数是1

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 控制文件自己主动备份文件夹和格式:%F  【备份设备:Disk】

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default    备份的并行度:1,备份类型为备份集【几个并行度就分配几个通道】

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    加密算法採用AES128        加密表空间时默认AES192算法

CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default                         归档日志删除策略:空

CONFIGURE SNAPSHOT CONTROLFILE NAME TO                快照控制文件名称

RMAN默认备份介质保存文件夹/home/oracle/backup

configure channel device type disk format ‘/home/oracle/backup/ocmdb_%U‘;

控制文件自己主动备份

configure controlfile autobackup on;

configure controlfile autobackup format for device type disk to ‘/home/oracle/backup/control/controlfile_%F‘;

备份并行度2

CONFIGURE DEVICE TYPE DISK PARALLELISM 2;

增量备份

configure backup optimization on;

备份介质保留期为30天

configure retention policy to recovery window of 30 days;

显示我们设置完的參数配置

show all;

四 RMAN备份和闪回数据库

官方文档:Backup and Recovery Reference -> BACKUP

Backup and Recovery Basics -> 4 Backing Up Databases Using RMAN -> 4.2.5 Using Compressed Backupsets for RMAN Backup

1.压缩全备

backup as compressed backupset database plus archivelog;       使用默认的备份介质文件夹和格式,使用控制文件和參数文件自己主动备份

2.RMAN模块版压缩备份数据库,採用压缩备份方式全库备份

run{

backup as compressed backupset full database

format ‘/home/oracle/backup/full_ocmdb_%u%p%s.rmn‘

include current controlfile;

backup as compressed backupset archivelog all

format ‘/home/oracle/backup/arch_ocmdb_%u%p%s.rmn‘

delete all input;

}

3.使用默认备份介质文件夹和格式,同一时候 删除备份过的归档日志

backup as compressed backupset full database include current controlfile plus archivelog delete all input;

4.“一行RMAN命令”压缩备份数据库

backup as compressed backupset full database format

‘/home/oracle/backup/full_ocmdb_%u%p%s.rmn‘ include current controlfile

plus

archivelog format ‘/home/oracle/backup/arch_ocmdb_%u%p%s.rmn‘  delete all input;

5.检查全部备份集

list backupset summary;

6.配置flashback数据库

闪回数据库:使用闪回日志恢复数据库到之前的一个时间点。

启动闪回前提条件是开启归档:归档日志能够辅助闪回日志完毕闪回工作。往回闪不用归档,往前闪会用到归档。

1.检查数据库状态

select open_mode,log_mode,flashback_on from v$database; 是否在mount和archive状态

archive log list;

先设置高速恢复区大小再设置文件夹

alter system set db_recovery_file_dest_size=2g;

mkdir -p /home/oracle/flash

alter system set db_recovery_file_dest=‘/home/oracle/flash‘;      (保存闪回日志)

设置闪回保留期24小时(1天)单位是分钟

alter system set db_flashback_retention_target=1440 scope=spfile;

2.重新启动使參数生效

shutdown immediate

startup mount

show parameter db_recovery

启动闪回功能

alter database flashback on;

3.打开数据库

alter database open;

select open_mode,log_mode,flashback_on from v$database;

闪回种类

闪回查询   undo

闪回表     recycbin

闪回版本号   undo

闪回事物   undo

闪回数据库 闪回日志

闪回归档  表空间(永久保存11g新特性)

来源OCM实验选讲

时间: 2024-12-28 02:52:13

10gocm->session3->数据备份与恢复的相关文章

Oracle 和SQL server中数据备份与恢复

Oracle 侧 创建一个表,将现有表数据导入其中. create Table  TB_NYU_TENDERTBL_BAK   as  select *  from  TB_NYU_TENDERTBL  where  1=1 删除原来表内容. DELETE  FROM TB_NYU_TENDERTBL 恢复表的内容 insert  into TB_NYU_TENDERTBL  select  * from  TB_NYU_TENDERTBL_BAK SQL server侧 select  * i

Redis 数据备份与恢复

Redis 数据备份与恢复参考资料:http://www.runoob.com/redis/redis-backup.htmlRedis SAVE 命令用于创建当前数据库的备份.语法redis Save 命令基本语法如下:redis 127.0.0.1:6379> SAVE 实例redis 127.0.0.1:6379> SAVE OK该命令将在 redis 安装目录中创建dump.rdb文件.恢复数据如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服

Redis之数据备份与恢复

Redis 数据备份与恢复 Redis SAVE 命令用于创建当前数据库的备份. 语法 redis Save 命令基本语法如下: redis 127.0.0.1:6379> SAVE 实例 redis 127.0.0.1:6379> SAVE OK 该命令将在 redis 安装目录中创建dump.rdb文件. 恢复数据 如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可.获取 redis 目录可以使用 CONFIG 命令,如下所示: redis

服务器的数据备份与恢复

虽然数据备份是一个关系着很多软.硬件技术的系统工程,但备份软件在整个数据备份过程中所担当的角色相当重要.它在一定程度上决定了数据备份的可行性和经 济实用性,也影响着硬件的发展.随着存储技术的发展,在SAN.NAS这些新的存储架构中,也发展出了LAN Free backup.Serverless Backup等全新的备份技术.下面简单予以介绍. 传统的备份与恢复模型主要特征是,每台特定主机服务器都配有专门的磁盘和磁带系统,每台主机都将自己的数据备份到本地连接的磁带机或磁带库上,这实际就是 DAS直

CentOS 6.5 MySQL/MariaDB数据备份与恢复备份详解

MySQL/MariaDB数据备份与恢复备份 数据对我们来说再重要不过了,那我们如何做到对数据尽可能的安全呢,当我们的数据丢失了那又该怎么做呢,所以说数据备份对我们的数据安全性来说太重要了. 数据对我们来说再熟悉不过了,也最平常不过了,我们每天都在接触各色各样的数据,数据记录了我们平常相关的业务信息,所以数据对于我们来说是很重要的,这么重要的数据如果我们的数据丢失了那我们是不是相关的业务都没法进行了呢,这应该是个很麻烦的问题,那我们怎么保护我们的数据的安全呢,这就要用到我们的数据备份了. 如何执

Redis数据备份与恢复

Redis数据备份与恢复 持久化 一.RDB方式(默认) RDB方式的持久化是通过快照(snapshotting)完成的,当符合一定条件时Redis会自动将内存中的所有数据进行快照并存储在硬盘上.进行快照的条件可以由用户在配置文件中自定义,由两个参数构成:时间和改动的键的个数.当在指定的时间内被更改的键的个数大于指定的数值时就会进行快照.RDB是Redis默认采用的持久化方式,在配置文件中已经预置了3个条件: save 900 1    # 900秒内有至少1个键被更改则进行快照 save 30

数据备份与恢复

一. 数据备份与恢复 1.1 备份数据的方式 物理备份:cp   tar Mysqlhotcopy:只能备份存储引擎是myisam的表 且依赖于perl-DBD-MySQL Yum   -y  install  perl-DBD-MySQL 备份格式: Mysqlhotcopy -uroot  -p123  原库名  新库名; 逻辑备份:用mysql自己提供的命令或第三方软件提供的备份命令, 备份创建库,表和产生表记录时的sql语句. 1.2 数据备份策略 完全/完整备份:备份数据库服务器上的所

MySQL 数据备份与恢复

mysqldump 数据备份与恢复 mysqlbinlog 数据增量恢复

DBA成长之路---mysql数据备份与恢复

数据备份与恢复 备份方式: 物理备份:直接拷贝备份库和表对应的文件 cp -r /var/lib/mysql/mysql  /mysql.bak tar -zcvf /mysql.tar.gz  /varlib/mysql/mysql/* 逻辑备份:执行备份时,根据已有的库和表生成对应的sql命令,把生成的sql命令存储到指定的备份文件里 备份策略: 完全备份: 备份所有数据(表,库,服务器) 差异备份:备份自完全备份后所新产生(备份新产生的数据) 增量备份:备份自上一次备份后,所有新产生(备份

数据备份与恢复、系统备份与恢复

数据备份与恢复.系统备份与恢复一.数据备份与恢复1.什么是备份备份,即另外准备一–为应付文件.数据丢失或损坏等可能出现的意外情况,将电子计算机存储设备中的数据复制到大容量存储设备中2.备份对象的类别系统备份–针对整个操作系统进行备份–当操作系统损坏或者无法启动时,能通过备份快速恢复数据备份–针对用户的数据文件.应用软件.数据库进行备份–当这些数据丢失或损坏时,也能通过备份恢复3.数据冷备份?什么是冷备份–指需要备份的文档不被占用的情况下执行备份的方式–比如将数据库软件关闭,对数据库资料做备份?冷