ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:3.86MB ,
资源ID:3540227      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3540227.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(windows下的oracle数据库rman自动备份和恢复文档.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

windows下的oracle数据库rman自动备份和恢复文档.docx

1、windows下的oracle数据库rman自动备份和恢复文档数据库rman备份恢复文档一Rman简介RMAN是ORACLE提供的恢复和备份工具,是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件、归档日志和控制文件,用 来执行完全或不完全的数据库恢复。与传统工具相比,RMAN具有独特的优势:跳过未使用的数据块。当备份一个RMAN备份集时,RMAN不会备份从未被写 入的数据块,而传统的方式无法获知那些是未被使用的数据块。RMAN使用Oracle特有的二进制压缩模式,与传统备份的压缩方式相比,能够最大程度地压 缩数据块中的一些典型数据。二系统规划数据库备份文件不建议与系

2、统盘(C盘)、oracle数据文件存放盘(D盘)存放在一起,本文单独存放于E盘。注:在进行以下操作前要根据自己的环境建立如下目录“E:orabackup”,“E:archivelog_backup”,“E:/orabackup_script/”。本文用到的命令中的标点均为英文字符下的标点。三设置oracle数据库为归档模式(ARCHIVELOG)按以下步骤操作,检查oracle数据库是否为归档模式。1.选择“开始” “系统” “运行”,输入cmd,按回车。2.输入“sqlplus ”,按回车。3.输入“system / as sysdba ”,按回车。4.输入数据库system账号的密码,按回

3、车。5.查看数据库归档模式,输入“archive log list; ”,按回车。如下图所示。如果“数据库日志模式”为“非存档模式”,则需按照如下步骤开启归档模式:1.设置数据库日志归档路径。输入“alter system set log_archive_dest=E:archivelog_backup scope=spfile; ”,按回车。2.关闭数据库。输入“shutdown immediate;”,按回车。 3. 启动数据库到mount状态。输入“startup mount;”,按回车。4. 更改数据库的归档模式。输入“alter database archivelog;”,按回车。5

4、.打开数据库。输入“alter database open;”,按回车。6.验证数据库是否已归档。输入“alter database archivelog;”,按回车。如上图所示,若“自动存档”为“启用”模式,则数据库已经启用自动归档模式。四Oracle 数据备份策略通过OracleRMAN实现数据的增量备份,每周进行两次Level0的数据确全备份,其余时间进行Level1的增量备份,;同时每天对Oraclearchivelog进行两次备份(备份次数及备份时间点应根据实际运行情况加以调整),。这样的备份策略的目的时一旦发生故障需要进行数据库恢复时,只需要恢复一个全备份和至多两个增量备份,大大加

5、快了数据库的备份速度。在进行数据库recover时,实际上只需要最后一天的archivelog。 LEVEL 0 1 1 0 1 1 1 0 DAY Sun Mon Tue Wed Thu Fri Stat Sun Rman备份策略示意图五. 备份脚本的编写1.编写脚本前要更改rman的默认配置选项(1)选择“开始” “系统” “运行”,输入cmd,按回车。(2)输入“rman target / ”,按回车。(3)开启控制文件自动备份。输入“configure controlfile autobackup on; ”,按回车。(4)更改控制文件备份路径。输入“CONFIGURE CONTROL

6、FILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO E:orabackup%F;”,按回车。(5)备份保留策略。输入“CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;”。基于时间的备份保留策略,保留最近7天的备份文件,可以将数据库系统恢复到最近七天内的任意时刻。任何超过最近七天的数据库备份将被标记为obsolete。2.按照制定的备份策略编写备份脚本(1)设置显示已知文件的扩展名 选择“开始” “设置” “控制面板” “文件夹选项”, 打开文件夹选项设置页面后,点击上方标签栏的中间,即查看

7、标签栏。在查看标签中,向下拖动右边进度条,找到隐藏已知文件扩展名这个选项,将前面小方框中取消选定。设置完成,点击确定退出。(2)做一个文件后缀为.bat的0级备份批处理文件E:/orabackup_script/auto_level_0_rman.bat。内容如下:rem run rmanrman cmdfile=level_0_rman.txt msglog= e:/orabackup/level_0_rmanlog%date:0,10%.log然后新建一个“E:/orabackup_script/level_0_rman.txt”文本文件。内容如下:connect target /list

8、 backup;report obsolete;delete obsolete;run allocate channel ch1 device type disk;allocate channel ch2 device type disk;backup as compressed backupset incremental level 0 databaseformat e:/orabackup/full_%d_%T_%splus archivelogformat e:/orabackup/arch_%d_%T_%sdelete all input; release channel ch1; r

9、elease channel ch2; (2)做一个文件后缀为.bat的1级备份批处理文件E:/orabackup_script/auto_level_1_rman.bat。内容如下:rem run rmanrman cmdfile=level_1_rman.txt msglog= e:/orabackup/level_1_rmanlog%date:0,10%.log 然后新建一个“E:/orabackup_script/level_1_rman.txt”文本文件。内容如下:connect target /list backup;report obsolete;delete obsolete;

10、run allocate channel ch1 device type disk;allocate channel ch2 device type disk;backup as compressed backupset incremental level 1 databaseformat e:/orabackup/level_%d_%T_%splus archivelogformat e:/orabackup/arch_%d_%T_%sdelete all input; release channel ch1; release channel ch2; 3归档备份脚本(1)新建一个文件类型扩

11、展名为.bat的批处理文件,文件名称为“E:/orabackup_script/auto_arch_rman.bat”rem run rmanrman cmdfile=arch_rman.txt msglog=e:/orabackup/arch_rmanlog%date:0,10%.log(2)新建一个E:/orabackup_script/arch_rman.txt文本文件connect target /runbackup archivelog all delete input format e:/orabackup/arch_%d_%T_%s;注意:备份脚本存放在E:/orabackup_

12、script目录六设置windows定时任务(以windows server 2003为例)数据库备份策略:全库每周三、日备份1次,其余时间做一级备份,归档1天1次1.设置定时任务每周做一次全库备份(1)开始设置- 控制面板- 任务计划- 添加任务计划。操作步骤如图所示:(2)找到你所写的0级备份脚本,然后点击打开(3)设置1级备份的定时任务,重复步骤一。然后找到1级备份任务脚本然后打开。2.设置定时任务每天做一次联机日志归档备份开始设置- 控制面板- 任务计划- 添加任务计划。操作步骤如图所示:六利用rsync实现rman备份数据的异地备份1.系统环境windows 2003rsync服务端

13、:172.16.1.246(远端备份机器)rsync客户端:172.16.1.151(oracle数据库安装端)服务端:cwRsyncServer_4.1.0_Installer客户端:cwRsync_4.1.0_Installer2.rsync服务端安装配置(1)双击cwRsyncServer_4.1.0_Installer.exe然后就一路下一步,安装cwRsync服务端默认有一个管理员账户SvcCWRSYNC,这里修改为administrator,密码为其对应的密码安装完成后,在“开始” “管理工具” “服务”里面就可以看到cwRsync对应的服务了,安装完成后将手动启动改为自动启动服务

14、。(2)修改rsyncd.conf配置文件(一般在C:Program FilesICWrsyncd.conf)use chroot = false #不使用chrootstrict modes = false #静态模式hosts allow = * #所有IP均可log file = rsyncd.log #log文件名,可以指定路径uid = 0 #不指定uid,不加这一行将无法使用任何账户gid = 0 #不指定gid# Module definitions# Remember cygwin naming conventions : c:work becomes /cygwin/c/wo

15、rk#testpath = /cygdrive/d/oracle_backupread only = false #关闭只读transfer logging = yes #记录传输日志auth users = root #用户名hosts allow = * #所有IP均可secrets file = /cygdrive/c/rsyncd.secrets #密码文件位置(3)创建密码文件C: rsyncd.secrets 内容为 root:123qwe(4)配置文件修改完成后,就手动启动RsyncServer服务,netstat -an,看873端口监听没。3.rsync客户端安装配置(1)双

16、击cwRsync_4.1.0_Installer.exe,然后一路下一步。(2)编写批处理文件定时同步更新分别在编写的rman备份脚本auto_level_0_rman.bat、auto_level_1_rman.bat和auto_arch_rman.bat后面加入C:Program FilescwRsyncbinrsync -avzP progress /cygdrive/E/orabackup/ *.1.246:test d:rsync_%date:0,10%.log(3)创建密码文件C:passwd.txt 内容为123qwe(4)参数说明-a 参数,相当于-rlptgoD,-r 是递归

17、-l 是链接文件,意思是拷贝链接文件;-p 表示保持文件原有权限;-t 保持文件原有时间;-g 保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件;-z 传输时压缩;-P 传输进度;-v verbose,详细模式输出;-u是只同步已经更新的文件,避免没有更新的文件被重复更新一次,不过要注意两者机器时钟的同步;-progress 显示备份过程;-delete 删除那些DST中SRC没有的文件,用作同步文件用;七、使用rman备份文件恢复oracle数据库1.参数文件spfile损坏恢复(1)选择“开始” “系统” “运行”,输入cmd,按回车。(2)输入“ set oracle_

18、sid=orcl”,按回车。(oracle_sid根据自己库的设置填写)(3)输入“rman target /”,按回车(4)输入“set dbid=1335848290”,按回车。Dbid具体值,请从rman日志文件e:/orabackup/full_rmanl og%date:0,10%.log中查找(5)关闭数据库。输入“shutdown immediate;”,按回车。(6)将数据库启动到nomount状态。输入“startup nomount;”按回车(7)恢复spfile参数文件。输入“restore spfile to “D:oracleproduct10.2.0db_1dbs

19、SPFILEORCL.ORA” from “D:ORABACKUPC-1335848290-20140218-04”;”,按回车。“D:ORABACKUPC-1335848290-20140218-04”从距离磁盘崩溃时间最近生成的备份日志文件中获得。(8)关闭数据库。输入“shutdown immediate;”,按回车。(9)启动数据库。输入“startup”,按回车。2.控制文件丢失恢复数据库启动报错ORA-00205检查oracle的报警日志包含如下报错: 说明oracle数据库控制文件有损坏,需要对其进行恢复。步骤如下所示。(1)选择“开始” “系统” “运行”,输入cmd,按回车。

20、(2)输入“rman target /”,按回车(3)输入“set dbid=1335848290”,按回车。dbid具体值,请从rman日志文件e:/orabackup/full_rmanl og%date:0,10%.log中查找(4)关闭数据库。输入“shutdown immediate;”,按回车。(5)将数据库启动到mount状态。输入“startup nomount;”按回车(6)恢复控制文件。输入“restore controlfile from “D:ORABACKUPC-1335848290-20140218-04”;”,按回车(8)启动数据库到mount。输入“alter

21、database mount;”,按回车。(9)恢复数据库。输入“recover database;”,按回车。 (10)启动数据库。输入“alter database open reset logs;”,按回车。3.数据库指定数据文件恢复启动数据库的时候报错或者查看oracle数据库的报警日志出现错误 如果出现以上报错说明数据库中file_id 为7的文件出现错误。需要恢复。步骤如下所示。(1)选择“开始” “系统” “运行”,输入cmd,按回车。(2)输入“ set oracle_sid=orcl”,按回车。(oracle_sid根据自己库的设置填写)(3)输入“rman target /

22、”,按回车(4)查看数据库的启动级别。输入“select status from v$instance;”,按回车。如果返回status对应的值为非mount和非open。 关闭数据库。输入“shutdown immediate;”,按回车。将数据库启动到mount状态。输入“startup mount;”按回车 (5)数据库启动状态为mount,按如下所示输入,输入完成后,按回车。run restore datafile 7; recover datafile 7; 之后启动数据库,输入“alter database open;”,输入回车。 (6)如果数据库启动状态为open,按如下输入,

23、输入完成之后,输入回车。 run sql alter database datafile 7 offline immediate; restore datafile 7; recover datafile 7; sql alter databaes datafile 7 online; 4.数据文件丢失全库恢复(1)选择“开始” “系统” “运行”,输入cmd,按回车。(2)输入“ set oracle_sid=orcl”,按回车。(oracle_sid根据自己库的设置填写)(3)输入“rman target /”,按回车(5)关闭数据库。输入“shutdown immediate;”,按回车

24、。(6)将数据库启动到mount状态。输入“startup mount;”按回车(7)还原数据库数据文件。输入“restore database;”,按回车。(8)恢复数据库增量备份及归档日志文件。输入“recover database;”,按回车。(9)打开数据库。输入“alter database open resetlogs;”,按回车。5.数据主机磁盘损坏恢复(1)重建oracle数据库,是使数据库的目录结构与源数据库目录结构相同。(2)将远程备份的备份文件拷贝至“E:orabackup”目录下。(3)选择“开始” “系统” “运行”,输入cmd,按回车。(4)输入“rman targ

25、et / ”,按回车。(5)关闭数据库。输入“shutdown immediate;”,按回车。(6) D:oracleproduct10.2.0db_1dbsSPFILEORCL.ORA(oracle的spfile参数文件)文件删除。(7)将D:oracleproduct10.2.0oradataorcl下(oracle数据文件存储目录)除TEMP01.DBF外的文件删除(8)将数据库启动到nomount状态。输入“startup nomount;”按回车(9)输入“set dbid=1335848290”,按回车。dbid具体值,请从rman日志文件e:/orabackup/full_rm

26、anl og%date:0,10%.log中查找(10)恢复spfile参数文件。输入“restore spfile to “D:oracleproduct10.2.0db_1dbs SPFILEORCL.ORA” from “D:ORABACKUPC-1335848290-20140218-04”;”,按回车。“D:ORABACKUPC-1335848290-20140218-04”从距离磁盘崩溃时间最近生成的备份日志文件中获得。 (11)关闭数据库。输入“shutdown immediate;”,按回车。(12)将数据库启动到mount状态。输入“startup nomount;”按回车.

27、(10)恢复控制文件。输入“restore controlfile from “D:ORABACKUPC-1335848290-20140218-04”;”,按回车。(“D:ORABACKUPC-1335848290-20140218-04”获得方法同(10) ) (11)启动数据库到mount状态。输入“startup mount;”按回车。(12)恢复数据文件。输入“restore database;”,按回车。(13)恢复归档日志文件。输入“recover database;”,按回车。(14)启动数据库。输入”alter database open resetlogs;”。6.误操作恢

28、复误删除表或者数据(1)重建oracle数据库,是使数据库的目录结构与源数据库目录结构相同。(2)将远程备份的备份文件拷贝至“E:orabackup”目录下。(3)选择“开始” “系统” “运行”,输入cmd,按回车。(4)输入“rman target / ”,按回车。(5)关闭数据库。输入“shutdown immediate;”,按回车。(6) D:oracleproduct10.2.0db_1dbsSPFILEORCL.ORA(oracle的spfile参数文件)文件删除。(7)将D:oracleproduct10.2.0oradataorcl下(oracle数据文件存储目录)文件全部删

29、除(8)输入以下内容,并按回车。runstartup nomount;restore spfile to D:oracleproduct10.2.0db_1dbsSPFILEORCL.ORA from D:ORABACKUPC-1335848290-20140219-05;shutdown immediate;startup nomount;restore controlfile from D:ORABACKUPC-1335848290-20140219-05;alter database mount;set until time to_date(2014-02-19 09:08:30,yyy

30、y-mm-dd hh24:mi:ss);restore database;recover database;注:“D:ORABACKUPC-1335848290-20140219-05”从最后一次生成的备份日志文件中获得。“2014-02-19 09:08:30”发生误操作之前的时间点。 (9) 启动数据库,输入”alter database open resetlogs;”,按回车。(10)登陆数据库检查自己删除的表,或者数据是否存在且完整。如果完整继续第十步。 (11)恢复误删除的数据,在克隆库执行如下操作导出数据。exp scott/tiger file=c:1.dmp tables=t query=where deptno=10 log=c:1.log注:命令中scott/tiger为用户名/密码,t为要恢复数据所在表的名称。用query选出部分符合条件的行。 将克隆库系统中c:1.dmp拷贝到源数据库系统c:目录下,并在元数据库系统执行imp命令恢复。操作如下。imp scott/tiger

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1