我是靠谱客的博主 俏皮板凳,最近开发中收集的这篇文章主要介绍mysql中的rman备份_RMAN备份使用,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Oracle备份

Rman备份,oracle secure backup,手工备份

手工备份(冷备)

1、正常关闭数据库,

2、(冷备脚本)备份数据文件和控制文件

set feedback off heading off  verify off trimspool off

set pagesize 0 linesize 200          //设置环境变量

define dir='/tmp/backup/'

define lb='/tmp/lb.sql'

spool &lb

select '! cp ' || name || ' &dir' from v$datafile order by 1;

select '! cp ' || member || ' &dir' from v$logfile order by 1;

select '! cp ' || name || ' &dir' from v$controlfile order by 1;

select '! cp ' || name || ' &dir' from v$tempfile order by 1;

spool off

shutdown immediate

@&lb

startup .

备份控制文件: alter database backup controlfile to trace把控制文件备份到trace中(从start mount来查看到数据等的备份位置读取数据文件和日志文件路径)。

3、备份参数文件和数据库密码。

cp  $oracle_home/dbs/spfile.ora   .   cp  $oracle_home/dbs/orapw   .

4、重新在空数据库上面还原数据库

1、安装一个同版本的数据库

2、创建侦听

3、根据备份的pfile文件来创建新数据库所需要的文件夹。

4、根据控制文件信息,将数据文件和日志文件等恢复到原来路径。

不关闭数据库备份(rman)

一定要将数据库的模式设置为begin backup模式(备份之后关闭备份模式)

1、创建一个表,表空间create tablespace 4 datafile user

2、将表空间设置为备份模式:alter tablespace users begin backup(关闭数据库备份模式alter tablespace users end backup)

3、关闭数据库,删除user01.dbf,重启数据库,数据库启动失败,启动到到mount状态,系统提示user01.dbf丢失

将tablespace 4离线,重启数据库到open状态,但是不能查询……

alter database datafile 4 offline;

alter database open;

4、将该离线文件复制到备份前的位置

5、recovery datafile 4 (逻辑修复,使用redologfile来回复)

6、将tablespace上线,alter database online

rman备份

1、rman target /

映像备份(相当于手工复制)

backup as copy datafile 4 format '/u01/expdp'  或者cp datafile 4 to '/u01/expdp'

备份集:

backup as backupset datafile 4 format '/u01/expdp'  只备份有数据的数据块

rman参数设置:

show all

CONFIGURE retention POLICY TO redundancy 1; # default 配置rman的冗余策略:基于时间基于冗余

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   默认并行度parallelism为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

CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default

CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/10.2.0/db_1/dbs/snapcf_orcl.f'; # default    默认快照的位置

增量备份一定要使用块跟踪。

alter database enable block check change using file '/u01/'

定义保留策略(时限):1,通过时间(通过恢复窗口)2、通过冗余

1、通过恢复窗口:

RMAN> configure retention policy to recovery windows of 7 days;

2、通过冗余策略

RMAN> configure retention policy to redundancy 2;

RMAN> show retention policy

RMAN> report obsolete redundancy 2;

RMAN> delect obsolete;

备份控制文件

备份控制文件到trace:alter databse backup controlfile to trace

命令---------------------------------

1 整库的备份

backup database ;

backup database format '/u01/backup/bak_%U'

查看创建的全库备份

list backup of database ;

2 表空间的备份

backup tablespace users;

list backup of tablespace users;

删除备份: delete backupset 10;

delete backupset 10 noprompt

noprompt没有提示信息

3 数据文件备份

可以对名称也可以对file_id

select file_id,file_name  from dba_data_files;

backup datafile 4;

backup datafile '/u01/app/oracle/oradata/orcl/users01.dbf'

查看数据文件的备份

list backup of  datafile n

如果要查看多个文件 n=多个序号,并用逗号隔开

4 控制文件备份

a.手动执行控制文件备份

backup current controlfile ;

b.执行backup命令时指定include current controlfile

backup database include current controlfile ;

c.备份系统表空间会触发去备份控制文件

backup datafile 1;

d.通过configure命令将controlfileautobackup设置为on

configure controlfile autobackup on ;

查看list backup of controlfile ;

5 归档文件备份

归档日志文件对数据库恢复相当关键。

a.利用backup archivelog命令

backup archivelog all;

backup archivelog all delete all input

备份所有的归档并且把输入备份的归档删除!

all 指备份当前所有可访问到的归档日志文件。

until ,scn ,time ,sequence

b.执行backup命令时,指定plus archivelog子句

backup current controlfile plus archivelog ;

在备份控制文件之前,先对所有归档文件进行备份

backup ... plus archivelog 命令执行的操作

a. 运行alter system archive log current对当前redolog进行归档(每次日志组切换的时候,也会做一次归档)

b. 执行backup archivlelog all命令备份所有已经归档日志

c. 执行backup命令指定项进行备份

d 在次运行alter system archivelog current对当前redoglog归档

e 对新生成的尚未备份的归档进行备份

查看已经备份的归档日志片段

list backup of archivelog all;

6 初始化参数文件备份

RMAN自动备份服务器的初始化参数文件,并置于控制文件的备份片段中。极少需要对spifle备份

backup spfile ;

7备份备份集

最佳应用备份集的需求是创建备份集到磁带。

backup backupset all;

备份指定的备份集

backup backupset n;( n=备份集ID,可以指定多个)

RMAN命令:

1 显示RMAN默认配置:show

show all;

#default 表示初始化默认值

2 列出备份信息--list命令

查看备份集、备份镜像、归档文件等

a.列出所有备份信息

list backup ;

b. 列出所有备份控制文件信息

list backup of controlfile ;

c.列出指定数据文件的备份

list backup of datafile 4;

d.列出所有备份归档文件信息

list backup of archivelog all;

e.列出表空间备份信息

list copy of tablespace 'users'

f.列出当前的所有归档

list archivelog all

g.列出所有无效备份

list expired backup;

3 删除备份---delete命令

a.删除过期备份,RMAN根据备份冗余策略确定备份是否过期

report obsolete ;

delete obsolete ;

b.删除无效备份:首先执行crosscheck命令核对备份集,如果发现备份无效,RMAN会对该备份集标记为expired

删除 delete expired backup ;

c.删除expired副本

delete expired copy;

d.删除指定的备份集

delete backupset 1;

f.删除指定备份片

delete backuppiece  '/u01/aa.bak'

g.删除特定映像副本

delete datafile copy '/u01/a.bak'

f.删除所有映像副本

delete copy;

g.在备份后删除输入对象

backup archivelog all delete input;

h 它只会删除输入的备份

backup backupset 11 format '/u01/%u.bak' delete input;

4 报表显示---report命令

a.查看7天前的数据库模式

report schema at time 'sysdate-7';

b.查看所有需要备份的文件

report need backup ;

c.查看指定表空间是否需要备份

report need bakcup tablespace system

d.查看过期备份

report obsolete ;

5 执行检查---crosscheck命令

用来检查备份或归档的物理文件的状态,如果物理文件存在,并且控制文件或恢复目录中匹配则标记为available如果文件已经不存在则标记为expired无效。

要手工删除expired记录

检查被人为删除的备份集

检查所有归档文件

crosscheck archivelog all;

检查所有的备份集

crosscheck backup;

6 修改状态---change命令

修改备份文件或归档文件的状态,在控制文件或恢复目录中,记录状态为:available可用 和unavailable不可用。

修改指定备份集为unavailable

change backupset n unavailable;

修改表空间的备份集为unavailable;

change backup of tablespace users unavailable;

修改指定归档文件状态为unavailable

change archivelog logseq=n unavailable ;

n为归档文件序号,可用通过list archivielog all或者查询v$archived_log获得

change 命令附带delete子句

change archivelog logseq=n delete

修改记录状态同时,直接删除物理文件。

最后

以上就是俏皮板凳为你收集整理的mysql中的rman备份_RMAN备份使用的全部内容,希望文章能够帮你解决mysql中的rman备份_RMAN备份使用所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部