ORACLE数据备份与恢复
第16章 Oracle备份与恢复
本 章 内 容
16.1
数 据 库 备 份 概 述
16.2
数 据 库 备 份 模 式
16.3
备 份 数 据 库
16.4
数 据 库 手 动 恢 复
采取各种措施来保证数据库的安全性和完整性, 但硬件故障、软件错误、病毒、误操作、故意破坏, 仍有可能发生,影响数据的正确性,甚至会破坏数据 库使数据部分或全部丢失。
(5)archieve log list; // 显示归档列表
16.3
备 份 数 据 库
(一)物理备份
备份:数据文件.dbf
控制文件.ctl
日志文件.log
1.脱机备份 (无成本复制 copy paste)
在数据库关闭后,备份物理文件。
脱机备份的步骤
(1)以DBA用户登录,列出各类文件 SQL>select name from v$datafile; SQL>select name from v$controlfile; SQL>select member from v$logfile;
小结
数据库的备份与恢复是保证数据库安全运 行的一项重要内容,也是数据库管理员的一项重要 职责。在实际的应用中,数据库可能会遇到一些意 外的破坏,导致数据库无法正常运行。数据库的一 个备份就是数据库中数据的一份复件,该复件包括 了数据库所有重要的组成部分,如控制文件、数据 文件、日志文件等。当数据库因意外事故而无法正 常运行时,就可以用该备份对数据进宪恢复,将意 外损失降低到最小。
(2)以DBA用户关闭数据库 SQL>connect / as sysdba SQL> shutdown immediate; (3)复制各个文件到硬盘上,“控制文件”互为镜像,复制一个即可。 SQL>host copy D:\oracle\product\10.1.0\oradata\*.dbf E:\backup\ SQL>host copy D:\oracle\product\10.1.0\oradata\*.ctl E:\backup\ SQL>host copy D:\oracle\product\10.1.0\oradata\*.log E:\backup\ (4)启动例程打开数据库 SQL> connect / as sysdba SQL> startup
Oracle备份与恢复案例.doc
Oracle备份与恢复案例By Piner一. 理解什么是数据库恢复当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。
因此当发生上述故障后,希望能重构这个完整的数据库,该处理称为数据库恢复。
恢复过程大致可以分为复原(Restore)与恢复(Recover)过程。
数据库恢复可以分为以下两类:1.1实例故障的一致性恢复当实例意外地(如掉电、后台进程故障等)或预料地(发出SHUTDOUM ABORT语句)中止时出现实例故障,此时需要实例恢复。
实例恢复将数据库恢复到故障之前的事务一致状态。
如果在在线后备发现实例故障,则需介质恢复。
在其它情况Oracle在下次数据库起动时(对新实例装配和打开),自动地执行实例恢复。
如果需要,从装配状态变为打开状态,自动地激发实例恢复,由下列处理:(1)为了解恢复数据文件中没有记录的数据,进行向前滚。
该数据记录在在线日志,包括对回滚段的内容恢复。
(2)回滚未提交的事务,按步1重新生成回滚段所指定的操作。
(3)释放在故障时正在处理事务所持有的资源。
(4)解决在故障时正经历一阶段提交的任何悬而未决的分布事务。
1.2介质故障或文件错误的不一致恢复介质故障是当一个文件、一个文件的部分或磁盘不能读或不能写时出现的故障。
文件错误一般指意外的错误导致文件被删除或意外事故导致文件的不一致。
这种状态下的数据库都是不一致的,需要DBA手工来进行数据库的恢复,这种恢复有两种形式,决定于数据库运行的归档方式和备份方式。
(1)完全介质恢复可恢复全部丢失的修改。
一般情况下需要有数据库的备份且数据库运行在归档状态下并且有可用归档日志时才可能。
对于不同类型的错误,有不同类型的完全恢复可使用,其决定于毁坏文件和数据库的可用性。
(2)不完全介质恢复是在完全介质恢复不可能或不要求时进行的介质恢复。
oracle数据库rman备份计划及恢复
oracle数据库rman备份计划及恢复1.rman完全恢复的前提条件:历史的datafile,controlfile和spfile备份,加上完整的archivelog和完好的redolog。
2.rman备份脚本: a.RMAN 0级备份命令:run{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;backup incremental level 0 tag 'level0' format "E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\RFDB_level_0_%u_%s_%p" as compressed backupset database;sql "alter system archive log current";backup filesperset 3 format "E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\arch_%u_%s_%p_%c"archivelog all delete input; #备份归档可选,可以单独定期备份release channel c1;release channel c2;release channel c3;} b.RMAN 1级备份命令:run{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;backup incremental level 1 tag 'level1' format 'E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\RFDB_level_1_%u_%s_%p' as compressed backupset database;sql 'alter system archive log current';backup filesperset 3 format 'E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\arch_%u_%s_%p'archivelog all delete input; #备份归档可选,可以单独定期备份release channel c1;release channel c2;release channel c3;} c.rman删除备份命令(在保留最近⼀天备份的情况下,删除其他备份):DELETE NOPROMPT OBSOLETE RECOVERY WINDOW OF 1 DAYS; d.操作系统层⾯运⾏rman备份或删除命令(windows/linux):rman target sys/rf4rfvbgt56yhn@rfdb nocatalog CMDFILE 'D:\app\rman\rman_file\level_0.txt' log=E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\log\rman_level_0.log export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=/u01/app/oracle/product/11.2.0/db1export ORACLE_SID=atestexport PATH=$ORACLE_HOME/bin:$PATHrman target sys/123456@atest nocatalog CMDFILE '/u01/rman/rman.sh' log=/u01/rman/rman.log00 02 * * 1 bash /u01/rman_file/run_rman_0.sh00 02 * * 3 bash /u01/rman_file/run_rman_0.sh00 02 * * 5 bash /u01/rman_file/run_rman_0.sh00 04 * * * bash /u01/rman_file/run_delete.sh34 11 * * * bash /u01/rman_file/run_rman_0.sh e.rman参数设置:RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;RMAN> CONFIGURE DEFAULT DEVICE TYPE TO DISK;RMAN> CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE disk TO 2;RMAN> CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE disk TO 2;3.rman恢复a.拷贝datafile,controlfile和spfile的rman备份,以及完整的archivelog和完好的redolog⽂件到新的数据库。
Oracle ramn 备份与恢复
ORACLE数据库的备份与恢复差异增量备份就是备份往前第一个备份级别小于或等于当前备份级别开始到现在的变化。
累计增量备份就是备份往前第一个备份级别小于当前备份级别开始到现在的变化。
0级备份也就是全备份,但0级备份可以在此基础之上再进行备份,但全备份就不可以。
Oracle rman 备份一、数据库全备份方法(nocatalog)1 注意rman有两个,要执行db_1/bin下那个(可以通过修改oracle变量来达到)2 在执行ramn之前要确认当前数据库是否处理Archive Mode模式,并处于Enabled下查看方式:如果不是可以通过如下方式打开并修改:SQL>startup mountSQL>alter database archivelogSQL>alter database open3全备份数据库:A先连接数据库HERMINGB查看备份列表中是否有以前备份的文件C执行全数据库备份4备份完之后可以查看一下备份出来的文件信息:5备份文件存放路径为:二、0级数据库备份A 以nocatalog方式使用rmanB连接数据库C执行0级数据库备份注:全备份与0级备份的相同点是都是将数据库全部备份下来。
全备份与0级备份的不同点是全备份不能作为增量备份,而0级可以作为增量备份。
1级备份就在0级备份的基础上进行的。
三、1级增量备份(基于0级备份之上)总结:可以将备份出来的文件考到其他介质上进行保存,并进行删除。
如果要恢复时请将该文件放回到这文件夹下,并要保存文件名不变。
说明:口令文件因为可以重新设置,所以不用备份,重做日志文件不能在非nocatalog中备份。
四、备份archivelog(参数文件+数据文件+控制文件+归档日志文件)先备份完再删除归档备份五、备份表空间A 查看有哪些表空间B备份名为TBS1的表空间六、备份控制文件七、镜像备份说明:5为TBS1表空间的编号,及对TBS1表空间进行镜像备份。
Oracle11G 备份和恢复
备份与恢复
授课教师:刘明洋
主要内容
备份与恢复概述 物理备份数据库 逻辑恢复数据库 利用RMAN备份与恢复数据库 逻辑备份与恢复数据库
14.1备份与恢复概述
备份与恢复的概念 Oracle数据库备份类型 Oracle数据库恢复类型
14.1.1备份与恢复的概念
➢ 备份与恢复是数据库的一对相反操作,备份是保存数据 库中数据的副本,恢复是利用备份将数据库恢复到故障 时刻的状态或恢复到故障时刻之前的某个一致性状态。
➢ 非归档模式下的数据库恢复是不完全恢复,只能将数据库恢复到最近 一次完全冷备份的状态。
1 7
14.3.2 归档模式下数据库的完全恢复
概述 数据库级完全恢复 表空间级完全恢复 数据文件级完全恢复 数据库完全恢复示例
1
8
(1)概 述
概念
归档模式下数据库的完全恢复是指归档模式下一个或多个数据文件损 坏,利用热备份的数据文件替换损坏的数据文件,再结合归档日志文 件和联机重做日志文件,采用前滚技术重做自备份以来的所有改动, 采用回滚技术回滚未提交的操作,以恢复到数据库故障时刻的状态。
1 6
14.3.1 非归档模式下数据库的恢复
非归档模式下数据库的恢复主要指利用非归档模式下的冷备 份恢复数据库。 步骤为:
➢ 关闭数据库。 ▪ SHUTDOWN IMMEDIATE
➢ 将备份的所有数据文件、控制文件、联机重做日志文件还原到原来所 在的位置。
➢ 重新启动数据库。 ▪ STARTUP
注意
▪ RECOVER DATABASE ➢ 打开数据库。
▪ ALTER DATABASE OPEN;
2
2
(3)表空间级完全恢复
以EXAMPLE表空间的数据文件example01.dbf 损坏为例模拟表空级的完全恢复。
Oracle数据库备份与恢复方案
Oracle数据库备份与恢复方案任何数据库在长期使用过程中,都会存在安全隐患。
对于数据库管理员来说不能仅寄希望于计算机操作系统的安全运行,而是要建立一整套的数据库备份与恢复机制。
当任何人为的或是自然的灾难一旦出现,而导致数据库崩溃、物理介质损坏等,就可以及时恢复系统中重要的数据,不影响整个单位业务的运作。
然而如果没有可靠的备份数据和恢复机制,就会带来系统瘫痪、工作停滞、经济损失等等不堪设想的后果。
本文以ORACLE数据库为例,结合医院的业务应用环境,介绍ORACLE数据库的备份恢复。
首先,应当制定一个严格的工作制度,规范化数据库维护的工作流程。
总结实际工作中的经验,数据库管理员应当按照以下原则进行数据库系统的维护:要求:每日值班的数据库管理员应当随时监控主数据库服务器、备份数据库服务器的软件、硬件的正常运行,一旦出现故障,应立即向领导汇报并采取相应恢复措施。
一、管理员应当每日察看数据库的冷备份报告,出现问题及时检查备份文件,保障每日数据库服务器的备份正常运行。
二、当主数据库服务器出现数据库错误时,应检查数据库的工作状态。
如果工作不正常应及时将最新的备份数据覆盖当前数据库的损坏数据,并重新启动机器,检验数据库系统是否能够自行恢复运行。
如果重新启动后数据库系统不能正常运行,则数据库系统文件被破坏,应重新安装ORACLE数据库并启用紧急恢复方案。
三、当主数据库服务器出现硬件故障时,应在1小时内更新备份数据库为最新数据,并启动备份数据库服务器,将备份数据库服务器升级为主数据库服务器。
对于损坏的主数据库服务器应重新安装ORACLE数据库,并启用紧急恢复方案。
四、当备份数据库服务器出现数据库错误时,应检查ORACLE数据库的工作状态,如果工作不正常应及时将最新的备份数据覆盖当前数据库的损坏数据,并重新启动机器,检验数据库系统是否能够自行恢复运行。
如果重新启动后数据库系统不能正常运行,则数据库系统文件被破坏,应重新安装ORACLE数据库并启用紧急恢复方案。
Oracle+sde数据备份、恢复
EXP SYSTEM/PASSWORD@SID FULL=Y FILE=D:\SYSTEM.DMP LOG=D:\SYSTEM.LOG2.数据入库(a)从数据库中删除SDE和SDE USER用户DROP USER SDE CASCADE;DROP USER SDEUSER CASCADE;(b)创建新的SDE用户和SDEUSER下为创建SDE用户过程:(i)创建表空间CREATE TABLESPACE "SDE"LOGGINGDA TAFILE 'C:\ORACLE\ORADATA\ORACLE\SDE.ora' SIZE 200MEXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO(ii)创建用户CREATE USER "SDE" PROFILE "DEFAULT"IDENTIFIED BY "PASSWORD" DEFAULT TABLESPACE "SDE"TEMPORARY TABLESPACE "TEMP"ACCOUNT UNLOCK;(iii)创建角色GRANT "DBA" TO "SDE";GRANT "CONNECT" TO "SDE";GRANT "RESOURCE" TO "SDE";(iiii)系统权限GRANT ALTER ANY INDEX TO "SDE" WITH ADMIN OPTION;GRANT ALTER ANY TABLE TO "SDE" WITH ADMIN OPTION;GRANT ANAL YZE ANY TO "SDE" WITH ADMIN OPTION;GRANT CREATE ANY INDEX TO "SDE" WITH ADMIN OPTION;GRANT CREATE ANY PROCEDURE TO "SDE" WITH ADMIN OPTION;GRANT CREATE ANY SEQUENCE TO "SDE" WITH ADMIN OPTION;GRANT CREATE ANY TRIGGER TO "SDE" WITH ADMIN OPTION;GRANT CREATE ANY VIEW TO "SDE" WITH ADMIN OPTION;GRANT CREATE SESSION TO "SDE" WITH ADMIN OPTION;GRANT DROP ANY INDEX TO "SDE" WITH ADMIN OPTION;GRANT DROP ANY TABLE TO "SDE" WITH ADMIN OPTION;GRANT DROP ANY VIEW TO "SDE" WITH ADMIN OPTION;GRANT DROP ANY PROCEDURE TO "SDE" WITH ADMIN OPTION;GRANT DROP ANY SEQUENCE TO "SDE" WITH ADMIN OPTION;GRANT EXECUTE ANY PROCEDURE TO "SDE" WITH ADMIN OPTION;GRANT SELECT ANY SEQUENCE TO "SDE" WITH ADMIN OPTION;GRANT SELECT ANY TABLE TO "SDE" WITH ADMIN OPTION;GRANT UNLIMITED TABLESPACE TO "SDE" WITH ADMIN OPTION;3.导入SDE和SDEUSER的数据注意顺序,先SDE,后SDEUSERIMP SYSTEM/PASSWOR@SID FROMUSER=SDE TOUSER=SDEIMP SYSTEM/PASSWOR@SID FROMUSER=SDEUSER TOUSER=SDEUSER以上提到的SDE和SDEUSER是不同的用户,SDE是ArcSDE安装时的默认用户,SDEUSER 是指用户存储数据的用户,如果之间使用SDE默认用户存储,则省去所以的SDEUSER操作空间数据的备份、导出/导入(以Oracle为例):1、首先为什么oracle的exp/imp不能使用?一个feature class (shp文件)导入数据库后,会生成3个table 和7个index,这些表或者是index 可以保存在不同的表空间中。
Oracle数据库备份与恢复的三种方法
Oracle数据库备份与恢复的三种⽅法备份与恢复的三种⽅法Oracle数据库有三种标准的备份⽅法,它们分别是导出/导⼊(EXP/IMP)、热备份和冷备份。
导出备件是⼀种逻辑备份,冷备份和热备份是物理备份。
⼀、导出/导⼊(Export/Import) 利⽤Export可将数据从数据库中提取出来,利⽤Import则可将提取出来的数据送回到Oracle数据库中去。
1、简单导出数据(Export)和导⼊数据(Import) Oracle⽀持三种⽅式类型的输出: (1)、表⽅式(T⽅式),将指定表的数据导出。
(2)、⽤户⽅式(U⽅式),将指定⽤户的所有对象及数据导出。
(3)、全库⽅式(Full⽅式),瘵数据库中的所有对象导出。
数据导⼊(Import)的过程是数据导出(Export)的逆过程,分别将数据⽂件导⼊数据库和将数据库数据导出到数据⽂件。
2、增量导出/导⼊ 增量导出是⼀种常⽤的数据备份⽅法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。
在进⾏此种导出时,不要求回答任何问题。
导出⽂件名缺省为export.dmp,如果不希望⾃⼰的输出⽂件定名为export.dmp,必须在命令⾏中指出要⽤的⽂件名。
增量导出包括三种类型: (1)、“完全”增量导出(Complete) 即备份三个数据库,⽐如:exp system/manager inctype=complete file=040731.dmp (2)、“增量型”增量导出 备份上⼀次备份后改变的数据,⽐如:exp system/manager inctype=incremental file=040731.dmp (3)、“累积型”增量导出 累计型导出⽅式是导出⾃上次“完全”导出之后数据库中变化了的信息。
⽐如:exp system/manager inctype=cumulative file=040731.dmp 数据库管理员可以排定⼀个备份⽇程表,⽤数据导出的三个不同⽅式合理⾼效的完成。
windows-下的oracle数据库rman自动备份和恢复文档精选全文完整版
可编辑修改精选全文完整版数据库rman备份恢复文档一.Rman简介RMAN是ORACLE提供的恢复和备份工具,是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。
与传统工具相比,RMAN具有独特的优势:跳过未使用的数据块。
当备份一个RMAN 备份集时,RMAN不会备份从未被写入的数据块,而传统的方式无法获知那些是未被使用的数据块。
RMAN使用Oracle特有的二进制压缩模式,与传统备份的压缩方式相比,能够最大程度地压缩数据块中的一些典型数据。
二.系统规划数据库备份文件不建议与系统盘(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账号的密码,按回车。
5.查看数据库归档模式,输入“archive log list;”,按回车。
如下图所示。
如果“数据库日志模式”为“非存档模式”,则需按照如下步骤开启归档模式:1.设置数据库日志归档路径。
输入“alter system set log_archive_dest=’E:\archivelog_backup’ scope=spfile; ”,按回车。
2.关闭数据库。
输入“shutdown immediate;”,按回车。
3. 启动数据库到mount状态。
oracle数据库备份与还原方法
oracle数据库备份与还原方法一、Oracle数据库备份方法。
1.1 冷备份。
冷备份是在数据库关闭状态下进行的备份。
这就好比是给一个睡着的人做全身检查,一切都是静止的,好操作。
你得把数据库相关的文件,像数据文件、控制文件、重做日志文件等一股脑儿地拷贝到一个安全的地方。
这种备份方法简单直接,但是呢,在备份期间数据库是不能使用的,就像你要修东西得先把它停下来一样,有点不方便。
不过它恢复起来也相对容易,就像把之前拷贝走的东西再原封不动地拿回来就好。
1.2 热备份。
热备份可就不一样啦,它是在数据库运行的时候进行备份的。
这就像是给一个正在跑步的人换鞋子,难度不小。
热备份主要是利用归档模式,对表空间或者数据文件进行备份。
这种方式不影响数据库的正常使用,就像在火车行驶的时候给它换个小零件,火车还能继续跑。
但是热备份的操作相对复杂一些,需要对Oracle数据库有比较深入的了解,不然很容易搞砸,那可就“偷鸡不成蚀把米”了。
1.3 逻辑备份。
逻辑备份呢,是通过Oracle的工具,比如EXP或者EXPDP来进行的。
这就像是把数据库里的数据按照一定的逻辑规则整理出来,打包带走。
它可以备份特定的表、用户或者整个数据库。
这种备份方式比较灵活,就像你可以从一个大仓库里挑选你想要备份的东西。
但是逻辑备份的速度可能会比较慢,特别是数据量很大的时候,就像小马拉大车,有点吃力。
二、Oracle数据库还原方法。
2.1 冷备份还原。
如果是冷备份还原,那就简单多啦。
首先把数据库关闭,然后把之前备份的文件再拷贝回原来的位置,就像把东西放回原位一样。
不过要注意文件的权限和路径,可不能张冠李戴。
一切就绪后,再启动数据库,就大功告成了。
这就像把修好的东西重新启动,又能正常工作了。
2.2 热备份还原。
热备份还原就复杂得多了。
首先要根据备份的情况,确定需要还原的表空间或者数据文件。
然后利用归档日志和备份文件进行恢复。
这过程就像走钢丝,得小心翼翼的。
Avamar备份和恢复oracle数据库操作手册
Avamar备份和恢复Oracle数据库操作手册1.1 Oracle数据库备份首先要进入Sqlplus用archive log list—查看是否开启了归档模式;Oracle做热备份必须是归档模式,同时需要进入mount或open状态。
因此当发现不是归档模式时,需要采用以下步骤先把Oracle修改为归档模式才能正常备份。
1.首先关闭数据库:2.然后重新连接进sqlplus,再把Oracle启动到mount状态,然后修改成归档日志模式,修改完成后打开数据库到open状态(用alter database open 命令):1.2 Oracle数据库恢复注意:在Oracle恢复之前有几项准备工作要做:首先,在执行恢复之前,先关闭Oracle(SQL>shutdown immediate;);然后,删除联机日志和归档日志(或者转移到另外的目录)。
在测试时为了验证Oracle可恢复,在备份完成后删除了一些表,那么恢复前需要删除现有的联机日志和归档日志。
如果不删除日志,由于在恢复时,只会恢复控制文件和数据库,不会恢复日志文件,因此为了避免恢复后控制文件再去读取现有的日志文件(导致再次做删除操作),所以需要删除联机日志和归档日志(防止删除时正好联机日志做了日志切换)。
具体操作:把D盘oracle\product\10.2.0\oradata\test目录下的REDO01.LOG、REDO02.LOG的、REDO03.LOG 三个联机日志删除,然后再把D盘oracle\product\10.2.0下的相关归档日志删除。
再把Oracle启动到nomount状态,可运行如下命令:C:\Document and Setting\Administrator>sqlplus / as sysdba或C:\Document and Setting\Administrator>sqlplus /nologSQL>conn as sysdba;SQL>Startup nomount;完成以上步骤之后,就可以在Avamar上执行恢复:1.登陆Avamar Administrator管理界面,选择“backup and restore”;2.进入“Backup and Restore”界面;1)选择客户机;2)选择Windows Oracle Rman。
Oracle-RAC环境数据备份与恢复方案
Oracle RAC 环境数据备份与恢复方案【导读】某企业因项目需要在Oracle RAC集群环境下,根据实际情况对Oracle数据库进行备份;使用生产环境的rman全备数据,进行恢复数据搭建测试环境。
本文将详细介绍此案例中Oracle数据库rman全备份过程、Oracle RAC 环境下rman备份数据如何恢复至单机服务器。
考虑到非常的实用,将实施经验分享给更多同行进行交流学习。
一、背景环境生产环境使用两台DELL R840 服务器,安装了 linux centos 7.6操作系统,并配置多路径,使用 EMC untiy 作为共享存储,分配了2个1T LUN 存储数据库文件,1个500G LUN存放归档数据,3个30G LUN存放 OCR 、FALSH、GIMR 数据。
Oracle RAC 软件版本是19C 19.0.0.0.0。
二、数据备份1、备份策略为保障oracle rac 集群数据安全,因项目组要求设计数据库备份方案。
考虑到服务器RAC1与RAC2每台服务器自带2T本地可用容量,每次全备产生约400GB数据文件。
可将奇数天备份到RAC1,偶数天备份到RAC2,4*400GB=1.6TB,每台服务器可以备份4天的全量数据。
空间非常的富余,不计划使用rman的增量备份,直接全量备份近8天数据,恢复也较为方便。
2、备份过程在RAC1主机下执行,(RAC2同理)首先Oracle 数据库开启归档,归档模式下,才可以进行数据库的热备份、联机备份、手工备份等。
非归档模式下,只能进行冷备份。
当然我们rman备份是在线备份。
如下图:接着,创建rman脚本目录创建备份执行脚本,并加入定时任务创建备份数据清理脚本,并加入定时任务,只备份近4次数据,脚本会自动判断最近一次rman备份是否成功,不成功将不删除备份数据。
这里我调用了zabora.sh 脚本判断rman备份状态,sql语句也比较简单。
定时任务(RAC1)定时任务 (RAC2)记得重启定时任务创建rman执行脚本,用于被上述执行脚本调用3、测试验证第一次可手动执行备份任务,不等到凌晨自动执行查看日志log备份完成如下图:三、数据恢复因为本项目使用的是全备数据,无增量。
OracleRMAN的备份与恢复命令详解
还原检查与恢复测试
与备份检查一样,还原操作也可以检查是否能正常 restore 或者是否该备份集是否有效。如::
可以使用 CHECK LOGICAL 选项测试通过了物理损坏检查的数据和索引块,查看它们是否存在逻辑损坏,如行片或索引条目损坏。如果检测到任何块存在逻辑损坏,则 将该块记录到服务器进程的警报日志和跟踪文件中。
可以使用 MAXCORRUPT 参数设置逻辑和物理损坏的阈值。只要在某个文件中检测到的逻辑和物理损坏总和低于该值,则 RMAN 命令完成,同时 Oracle 将损坏块的 范围植入到 V$COPY_CORRUPTION 视图。如果超出 MAXCORRUPT,则该命令终 止,并且不植入视图。 当并行度比较高时,占用的计算机资源较多,但备份操作完成 速度较快。缺省情况下将启用对物理损坏的错误检查。有关在备份过程中遇到的损坏数据文件块的信息将记录在控制文件和警报日志中。
运行 BACKUP ARCHIVELOG ALL 命令。注意如果备份优化被启用,RMAN只会备份未备份过的日志
备份 BACKUP命令中定义的文件
运行 ALTER SYSTEM ARCHIVE LOG CURRENT 命令
备份所有的剩下的归档日志
备份完后删除归档日志RMAN> backup …… ARCHIVELOG all delete all input;修改备份集的保存策略例如:将备份设置为永久有效RMAN> backup database keep forever logs|nologs;设置为有效期 180 天RMAN> backup database keep until time='sysdate+180';重写configure exclude / noexclude通过 configure exclude 可以配置 RMAN 不备份上次备份以来没有发生变化的数据文件。如果要确保 RMAN备份这些数据文件,可以在 backup命令中添加 noexclude 选项。 例如:RMAN> backup database noexclude;
Oracle数据备份(exp.exe)、恢复工具(imp.exe)使用方法
Oracle数据备份(exp.exe)、恢复工具(imp.exe)使用方法例子:exp svcm/svcm@zjzx owner=svcm rows=y indexes=n compress=n buffer=65536 file=d:\exp_svcm_20060323.dmp log=d:\imp_svcm_20060323.logimp sms/smssend@orazw fromuser=svcm touser=sms rows=y commit=y buffer=65536 file=d:\exp_svcm_20060323.dmp log=d:\imp_svcm_20060323.logexp 命令格式: EXP KEYWORD=value 或KEYWORD=(value1,value2,...,valueN)实例: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)或TABLES=(T1: P1,T1: P2),如果T1 是分区表USERID 必须是命令行中的第一个参数。
关键字说明(默认)---------------------------------------------------USERID 用户名/口令FULL 导出整个文件(N)BUFFER 数据缓冲区的大小OWNER 所有者用户名列表FILE 输出文件(EXPDAT.DMP)TABLES 表名列表COMPRESS 导入一个范围(Y)RECORDLENGTH IO 记录的长度GRANTS 导出权限(Y)INCTYPE 增量导出类型INDEXES 导出索引(Y)RECORD 跟踪增量导出(Y)ROWS 导出数据行(Y)PARFILE 参数文件名CONSTRAINTS 导出限制(Y)CONSISTENT 交叉表一致性LOG 屏幕输出的日志文件STATISTICS 分析对象(ESTIMATE)DIRECT 直接路径(N)TRIGGERS 导出触发器(Y)FEEDBACK 显示每x 行(0) 的进度FILESIZE 各转储文件的最大尺寸QUERY 选定导出表子集的子句下列关键字仅用于可传输的表空间TRANSPORT_TABLESPACE 导出可传输的表空间元数据(N)TABLESPACES 将传输的表空间列表imp 命令:或者, 可以通过输入IMP 命令和各种自变量来控制“导入”按照不同参数。
oracle数据丢失恢复数据方法
oracle数据丢失恢复数据方法在使用Oracle数据库过程中,数据丢失是一种常见的问题。
当数据库中的数据丢失时,我们需要及时采取措施来进行数据恢复,以避免数据的长期丢失。
本文将介绍一些常用的Oracle数据丢失恢复方法,帮助我们有效地处理这个问题。
1. 数据库备份与恢复数据库备份是一种常见的防范措施,它可以帮助我们在数据丢失后快速恢复数据库。
在Oracle中,我们可以使用RMAN(Recovery Manager)工具来实现数据库备份和恢复。
RMAN可以备份整个数据库或者特定的表空间、数据文件等,同时也支持增量备份,大大减少了备份所需的时间和空间。
当数据库发生数据丢失时,我们可以使用RMAN来恢复备份的数据库文件,确保数据的完整性。
2. 闪回技术Oracle提供了闪回技术,可以帮助我们恢复数据库到某个历史时间点的状态。
通过闪回技术,我们可以将数据库中的数据、表结构等回滚到特定的时间点,从而实现数据的恢复。
闪回技术相比于传统的数据恢复方法,具有更高的效率和更少的风险。
我们可以使用闪回查询(FLASHBACK QUERY)来查看历史数据,使用闪回表(FLASHBACK TABLE)来恢复特定表的状态,使用闪回数据库(FLASHBACK DATABASE)来恢复整个数据库。
3. 日志文件恢复Oracle数据库在运行过程中会生成大量的日志文件,这些日志文件记录了数据库的操作、变更等信息。
当数据库发生数据丢失时,我们可以通过日志文件的恢复来还原数据。
在Oracle数据库中,我们可以使用归档日志文件(Archive Log)或在线重做日志文件(Online Redo Log)来进行数据恢复。
归档日志文件可以将数据库中的所有变更操作记录下来,当数据丢失时,我们可以将归档日志文件应用到数据库中,恢复数据的完整性。
同时,我们也可以使用在线重做日志文件来进行数据恢复,将重做日志文件中的操作应用到数据库中。
4. 数据库导入导出数据库导入导出是一种常见的数据恢复方法。
Oracle数据库备份和恢复培训
培训内容
逻辑备份 冷备份 热备份
Rman工具
Rman
RMAN是ORACLE提供的一个备份与恢复的工具, 可以用来备份和还原数据库文件、 归档日志和控 制文件。它也可以用来执行完全或不完全的数据 SM 、HP DP、NBU、LGTO等企业级备份软件的for oracle备份模块均采用该工具。 使用方法: 在命令行下输入 Rman target / 配臵参数: Rman>show all;
Rman
2、常用参数
数据备份: Rman>backup tablespace users; 查看备份集 Rman>List backup; 修改备份路径 configure channel device type disk format 'c:\rmanbk\%d_%s_%p_%T_%t.bkp'; d 数据库名 s 为备份集的号 P为该备份集中的备份片号,从1 开始到创建的文件数 T为年月日格式(YYYYMMDD) , t时间戳 磁带为sbt,磁盘为disk,
Rman 参数 配置.txt
Rman
RMAN 文件格式 备份文件可以自定义各种各样的格式,如下: %c 备份片的拷贝数 %d 数据库名称 %D 位于该月中的第几天 (DD) %M 位于该年中的第几月 (MM) %F 一个基于DBID 唯一的名称,这个格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ, 其中IIIIIIIIII 为该数据库的DBID,YYYYMMDD 为日期,QQ 是一个1-256 的序 列 %n 数据库名称,向右填补到最大八个字符 %u 一个八个字符的名称代表备份集与创建时间 %p 该备份集中的备份片号,从1 开始到创建的文件数 %U 一个唯一的文件名,代表%u_%p_%c %s 备份集的号 %t 备份集时间戳 %T 年月日格式(YYYYMMDD)
oracle数据库备份与恢复方法
oracle数据库备份与恢复方法
Oracle数据库备份与恢复是确保数据安全和可靠性的重要方面。
备份是指将数据库中的数据复制到另一个位置,以便在数据丢失或
损坏时进行恢复。
恢复则是指在发生故障或数据丢失时,通过备份
数据来恢复数据库到之前的状态。
一、备份方法:
1. 物理备份,物理备份是通过操作系统级别的工具(如RMAN)将数据库文件直接复制到备份位置。
可以使用RMAN命令行或图形界
面工具来执行物理备份。
2. 逻辑备份,逻辑备份是通过导出数据到逻辑文件(如SQL脚
本或数据泵文件)来进行备份。
可以使用expdp和impdp命令来执
行逻辑备份和恢复。
二、恢复方法:
1. 完全恢复,在数据库严重损坏或丢失时,可以使用完全备份
进行完全恢复。
这涉及将数据库恢复到备份时的状态,并应用任何
后续的归档日志以实现完整的恢复。
2. 不完全恢复,在某些情况下,可能只需恢复部分数据文件或表空间。
这可以通过RMAN进行部分恢复来实现。
除了上述备份和恢复方法外,还有一些其他注意事项和最佳实践:
定期备份,建立合理的备份策略,包括完整备份、增量备份和归档日志备份,以确保数据的及时备份和恢复。
测试恢复,定期测试备份和恢复过程,以确保备份数据的完整性和可用性。
数据库保护,使用冗余服务器、存储冗余和灾难恢复计划来保护数据库免受硬件故障、自然灾害和人为错误的影响。
综上所述,Oracle数据库备份与恢复是确保数据安全和可靠性的重要措施,通过合理的备份策略和恢复方法,可以最大程度地保护数据库免受数据丢失和损坏的影响。
Oracle数据库的备份与恢复策略分析
Oracle数据库的备份与恢复策略分析【摘要】为了保证数据库的安全性和稳定性,通过对oracle 的备份以及恢复策略进行了分析和探讨,明确了数据库备份以及恢复技术在实际工程项目当中的应用,通过分析数据库备份的实际需求,同时选择了合理的数据备份策略以及数据恢复策略,采取了有效的数据库的管理和维护策略,有效保证了数据库中的相关数据以及整个系统的安全性和稳定性,为类似数据库的备份以及恢复策略提供了可供参考的经验。
【关键字】oracle数据库;备份;数据;恢复;策略对于企业而言,数据库中的数据是重要的数据资源,也是企业得以持续总结和发展的重要的要素,由此保证相应数据库的安全性和稳定性有着十分重要的影响。
随着数据库内数据量的逐渐增加,并且数据库发展以及运行所面临的环境也日益复杂,数据库中数据的安全性以及相关系统运行的稳定性对企业的发展尤为重要。
数据库中的数据难以避免地受到了外界的侵袭,例如网络、硬件以及系统等方面的故障,甚至自然灾害也将导致则整个系统的崩溃,数据丢失,数据库中存储过程中的失误将给企业的发展带来严重的影响甚至巨大的损失,为了有效避开或者减少这些无法预测损失的到来,建立一系列安全稳定可靠的数据备份系统尤为重要。
1 建立备份策略1.1 数据备份需求(1)良好的可扩展能力随着企业的发展和项目管理以及建设的持续发展和升级,企业数据库中的数据量将日益增长,所使用的数据库也应具有数据的扩展和升级的空间和可能。
(2)备份数据的可恢复性为保证企业内部数据库的规范统一以及集中安全的数据恢复和备份的管理,相应的数据备份以及恢复策略应保证所备份的数据的可靠性以及可恢复性,为系统数据的恢复奠定了良好的基础。
(3)保持业务流程的连贯性数据备份和恢复系统要以维持企业基本的业务流程和体系为基础,在保证了系统业务连续性的前提下开展数据库的数据备份,避免了数据存储设备时间较长对企业系统的使用和相关项目的运行造成影响。
1.2 备份设备的选型在对pcedm数据库备份需求分析的基础上,使用ibm的tsm作为备份数据备份的支持。
ORACLE数据库数据泵备份与恢复
ORACLE数据库数据泵备份与恢复EXPDP和IMPDP是服务端的⼯具程序,他们只能在ORACLE服务端使⽤,不能在客户端使⽤。
IMP只适⽤于EXP导出的⽂件,不适⽤于EXPDP导出⽂件;IMPDP只适⽤于EXPDP导出的⽂件,⽽不适⽤于EXP导出⽂件。
⼀、expdp和impdp的使⽤1.创建⽬录create directory DBBAK as '/bak'; #DBBAK名称可以随便命名需要⼿⼯创建/bak,并且此⽬录oracle⽤户有读取写⼊权限2.查看所有⽬录select * from dba_directories;3.给test⽤户赋予在指定⽬录的操作权限,最好⽤root⽤户赋予。
grant read,write on directory DBBAK to test;4.导出数据1)按⽤户导expdp test/test@orcl schemas=test dumpfile=expdp.dmp DIRECTORY=DBBAK logfile=expdp.log2)并⾏进程parallelexpdp test/test@orcl directory=DBBAK dumpfile=expdp1.dmp parallel=10 job_name=test13)按表名导expdp test/test@orcl TABLES=table01,table02 dumpfile=expdp2.dmp DIRECTORY=DBBAK;4)按查询条件导expdp test/test@orcl directory=DBBAK dumpfile=expdp4.dmp Tables=table01 query='WHERE id=001';5)按表空间导expdp system/system DIRECTORY=DBBAK DUMPFILE=tablespace.dmp TABLESPACES=test,USERS;6)导整个数据库expdp system/system DIRECTORY=DBBAK DUMPFILE=full.dmp FULL=y;5、创建表空间及⽤户create tablespace test datafile '+data/test/datafile/data01.dbf' size 32000M;alter tablespace test add datafile '+data2/test/datafile/users02.dbf' size 32000M;create user test identified by test default tablespace TEST temporary tablespace TEMP;grant connect,resource,dba to test;grant read,write on directory DBBAK to test;6、还原数据1)导到指定⽤户下impdp test1/test1@orcl DIRECTORY=DBBAK DUMPFILE=expdp.dmp SCHEMAS=test logfile=impdp.log2)改变表的ownerimpdp system/system DIRECTORY=DBBAK DUMPFILE=expdp2.dmp TABLES=test.table01REMAP_SCHEMA=test1:table11;3)导⼊表空间impdp system/system DIRECTORY=DBBAK DUMPFILE=tablespace.dmp TABLESPACES=test;4)导⼊数据库impdb system/system DIRECTORY=DBBAK DUMPFILE=full.dmp FULL=y;5)追加数据impdp system/system DIRECTORY=DBBAK DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION7、查看数据是否⼀致select OBJECT_TYPE,COUNT(*) from all_objects where OWNER='TEST' group by OBJECT_TYPE;⼆、expdp详细参数可以通过 expdp help=y查看1.CONTENT 指定要导出的数据其中有效关键字为:(ALL), (默认)导出结构和数据DATA_ONLY:只导出数据METADATA_ONLY:只导出结构2.DIRECTORY 供转储⽂件和⽇志⽂件使⽤的⽬录对象3.DUMPFILE ⽬标转储⽂件 (expdat.dmp) 的列表例如 DUMPFILE=scott1.dmp, scott2.dmp, dmpdir:scott3.d4.INCLUDE 包括特定的对象类型例如 INCLUDE=PACKAGE,FUNCTION,PROCEDURE,TABLE:"='EMP'"5.EXCLUDE 排除特定的对象类型与INCLUDE相反6.TABLES 标识要导出的表的列表7.SCHEMAS 要导出的⽅案的列表可⽀持多个schemas=(user01,user02,user03)8.TABLESPACES 标识要导出的表空间的列表9.ATTACH 连接到现有作业, 例如 ATTACH [=作业名]PRESSIONALL :对导出的元数据和表数据都进⾏压缩,得到的导出⽂件是最⼩的,耗时也是最长的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
RMAN(备份与恢复管理器)
RMAN备份增量备份(差异)
RMAN(备份与恢复管理器)
R)
RMAN需注意问题: 不支持参数文件、告警文件、口令文件的备份。 必须使用与备份数据库相同版本的RMAN执行体。
RMAN(备份与恢复管理器)
• RMAN优点
自动备份、还原、恢复 自行备份备份记录 增量备份(去除空数据块) 支持在线热备份 支持多级增量备份 支持并行备份、恢复 备份、恢复使用简单
• RMAN缺点
配置、维护更复杂。技术性比较强
RMAN(备份与恢复管理器)
RMAN演示
其它恢复案例
• 损坏控制文件的恢复方法
拷贝一个好的控制文件替换坏的控制文件或修改init.ora中的控制文件参数,取消这个 坏的控制文件
数据恢复案例
• EXP/IMP • 冷备份的恢复
数据恢复案例
• 热备份的恢复(完全恢复)
1、采用热备份,需要运行在归档模式下,可以实现数据 库的完全恢复,也就是说,从备份后到数据库崩溃时的数 据都不会丢失。 2、可以采用全备份数据库的方式备份,对于特殊情况, 也可以只备份特定的数据文件,如只备份用户表空间(一 般情况下对于某些写特别频繁的数据文件,可以单独加大 备份频率) 3、如果在恢复过程中,发现损坏的是多个数据文件,即 可以采用一个一个数据文件的恢复方法,也可以采用整个 数据库的恢复方法。 4、如果是系统表空间的损坏,不能采用此方法
数据恢复案例
• 热备份的恢复(不完全恢复)
基于时间 基于取消 基于改变
数据恢复案例
• 热备份的恢复(不完全恢复)
1、不完全恢复最好备份所有的数据,冷备份亦可,因为恢复过程是从备份点往后恢复的, 如果因为其中一个数据文件的时间戳(SCN)大于要恢复的时间点,那么恢复都是不可能 成功的。 2、不完全恢复有三种方式,过程都一样,仅仅是recover命令有所不一样。 3、不完全恢复之后,都必须用resetlogs的方式打开数据库,建议马上再做一次全备份, 因为resetlogs之后再用以前的备份恢复是很难了。 4、以上是在删除之前获得时间,但是实际应用中,很难知道删除之前的实际时间,但可以 采用大致时间即可,或可以采用分析日志文件(logmnr),取得精确的需要恢复的时间。
ORACLE数据备份与恢复 ORACLE数据备份与恢复
大纲
• • • • • • 【什么是数据库备份和恢复】 【数据库备份方法简介】 【数据库恢复案例】 【其他恢复案例】 【常见恢复误区】 【我们自己的备份策略】
概念介绍
• 备份:指将数据库系统中的数据加以复制, 一旦发生灾难或错误操作时,得以方便而 及时地恢复系统的有效数据。 • 恢复:是指备份的逆过程。是将保存在数 据库中上丢失的数据进行抢救和恢复。 • 前滚(恢复):完成已完成的操作 • 回滚(撤销):取消未完成的操作
答:不完全恢复需要拷贝所有的数据文件,最好包括临时数据文件在内,否则需要另
外的处理,如果有一个数据文件的SCN大于不完全恢复点,那么这个恢复都将是失败 的.
• 3、使用RMAN目录与目标数据库在同一数据库能 很好进行数据库的恢复
答:使用恢复目录与目标数据库在同一个数据库中,将存在很大的恢复局限, 如该数据库的系统数据文件的损害,数据库根本不能open,那么RMAN也就 无法连接恢复目录,也就不存在恢复了。
RMAN(备份与恢复管理器)
• RMAN体系结构
RMAN(备份与恢复管理器)
RMAN 备份需确认的内容: (1), 目标数据库状态(至少在mount状态) (2),备份的目的地 (3),需要备份的数据库内容(数据库文件) (4),需要拷贝数据文件的哪些数据块(数据 块)
RMAN(备份与恢复管理器)
备份方法
• • • • 导出/导入(Exp/Imp) 冷备份 热备份 RMAN
EXP/IMP
• 三种工作方式(命令交互、命令、文件) • 三种方式类型的输出(表、用户、全库) • 增量导入导出三种类型 (完全、增量、累计)
冷备份
数据库正常关闭之下,将关键性文件拷贝到 另外位置。 关键文件包括:
我们自己的备份策略
小结
• • • • 什么是数据库备份 数据库的运行方式 数据库的备份方式 了解ORACLE备份策略,并选择最佳的备 份策略
谢谢
所有控制文件(v$controlfile) 所有数据文件(v$datafile) 所有联机REDO LOG文件(v$logfile) 参数文件、密码文件(可选)
优点是简单,方便,有效。 缺点
需要停库并只能恢复到某一时间点。 需占用一定的空间以及备份所花时间代价 不能按用户或者表。
热备份
联机热备是在数据库运行的情况下进行备 份的方法。热备份要求数据库在Archivelog 方式下操作,并需要大量的档案空间。 优点 可在表空间或数据库文件级备份 备份恢复时间短,数据库功能不影响 可达到秒级恢复 缺点 要求较高、维护困难,
• 损坏临时数据文件的恢复方法
可以删除后重建
常见恢复误区
• 1.可以不需要备份,只有归档就能进行数据库的 向前的恢复?
答:这是不可能的,不完全恢复的主要思路是利用不完全点之前的备份,加上归档日志,恢复到
不完全恢复点,10g中flashback的特性的使用,也是有很多局限的
• 2.进行不完全恢复只需要拷贝一个需要恢复的备 份数据文件