第六章 Oracle备份与恢复
ORACLE备份和恢复方案
ORACLE数据库备份与恢复方案备份方案设计前提:数据库设置为归档模式,不使用恢复目录数据库1、一个月一次在线全库备份2、每天归档日志备份3、每周一次exp导出4、每天一次exp增量导出5、保留最近两次全备和归档日志的备份6、至少保留最近一个月exp文件7、既备份到磁盘也备份到磁带Win2000下oracle8i/9i的备份方案的实现说明:数据库实例:ora9i,备份目录为e:\backup每个月一次全备1、备份命令文件:fullbackup.batrman cmdfile=fullbackup.rcvcopy C:\oracle\oradata\ora9i\CONTROL01.CTL e:\backup\CONTROL01.CTL /y 2、RMAN参数文件:fullbackup.rcvconnect target system/manager@ora9i;run{allocate channel c1 type disk;backup full tag 'dbfull' format 'e:\backup\dbfull%u_%s_%p' database;sql 'alter system archive log current';backup archivelog all delete input format 'e:\backup\arch%u_%s_%p';release channel c1;}3、任务计划增加一个每月1号1点开始执行的任务计划fullbackup每天一次归档日志的备份1、备份命令文件:archbackup.batrman cmdfile=archbackup.rcv2、RMAN参数文件:archbackup.rcvconnect target system/manager@ora9i;run{allocate channel c1 type disk;sql 'alter system archive log current';backup archivelog all delete input format 'e:\backup\arch%u_%s_%p';release channel c1;}3、任务计划增加一个每天2点开始执行的任务计划archbackupUNIX下oracle8i/9i的备份方案的实现基本相同,但计划任务得用crontab来实现恢复方案设计Win2000下oracle8i/9i的恢复方案的实现一、故障描述:磁盘损坏,数据库彻底瘫痪处理方法:1、更换磁盘,重新安装ORACLE(如果数据库安装的磁盘也损坏的话),重新创建实例ora9i,让数据库处于shutdown状态。
oracle备份与恢复
设置归档运行
删除恢复
如果误删除了数据文件,可以通过归档日志恢复 如果误删除了表,可以从备份中回复或者通过回闪回复 如果误删除了数据
exp system/aptech parfile='C:\parameters.txt' 使用参数文件导出数据
导入命令 2-1
导入实用程序有如下常用命令参数:
参数 USERID BUFFER COMMIT
FILE FROMUSER TOUSER
FULL TABLES ROWS PARFILE
备份与归档
Oracle 数据库可以运行在两种归档方式:
非归档日志方式 归档日志方式
非归档日志方式可以避免实例故障,但无法避免介质故障。在此方式 下,数据库只能实施冷备份
归档日志方式产生归档日志,用户可以使用归档日志完全恢复数据库
archive log list:查看归档方式 可以通过em设置是否归档运行 手工修改为归档模式
Oracle备份与恢复
java培训
oracle的备份
备份与恢复是数据库管理工作中非常重要的任务之一 oracle提供多种备份方式
物理备份:备份常用的数据文件,配置等 逻辑备份:对逻辑组件(表等)的备份
故障类型
导致数据库操作中止的故障包括四种类型:
故障类型
语句故障
用户进程故障
实例故障
介质故障
在当执用行户当S程OQ序rLa出c语le错句的而过数无程据法中库访发实问生例数的由据逻于库辑硬时故件发障或生可软用导件户致问进语题程句而故故无障障法。。导如致果 用户用进户程编故写继障的续的S运原Q行L因时语是,句异就无常会效断发,开生就连实会接例发或故生异障逻常辑终故止障进程
ORACLE数据备份与恢复
RMAN(备份与恢复管理器)
RMAN备份增量备份(差异)
RMAN(备份与恢复管理器)
R)
RMAN需注意问题: 不支持参数文件、告警文件、口令文件的备份。 必须使用与备份数据库相同版本的RMAN执行体。
RMAN(备份与恢复管理器)
• RMAN优点
自动备份、还原、恢复 自行备份备份记录 增量备份(去除空数据块) 支持在线热备份 支持多级增量备份 支持并行备份、恢复 备份、恢复使用简单
• RMAN缺点
配置、维护更复杂。技术性比较强
RMAN(备份与恢复管理器)
RMAN演示
其它恢复案例
• 损坏控制文件的恢复方法
拷贝一个好的控制文件替换坏的控制文件或修改init.ora中的控制文件参数,取消这个 坏的控制文件
数据恢复案例
• EXP/IMP • 冷备份的恢复
数据恢复案例
• 热备份的恢复(完全恢复)
1、采用热备份,需要运行在归档模式下,可以实现数据 库的完全恢复,也就是说,从备份后到数据库崩溃时的数 据都不会丢失。 2、可以采用全备份数据库的方式备份,对于特殊情况, 也可以只备份特定的数据文件,如只备份用户表空间(一 般情况下对于某些写特别频繁的数据文件,可以单独加大 备份频率) 3、如果在恢复过程中,发现损坏的是多个数据文件,即 可以采用一个一个数据文件的恢复方法,也可以采用整个 数据库的恢复方法。 4、如果是系统表空间的损坏,不能采用此方法
oracle备份和恢复的操作流程
oracle备份和恢复的操作流程Oracle备份和恢复的操作流程备份和恢复是数据库管理中非常重要的任务,可以保护数据免受丢失或损坏的影响。
在Oracle数据库中,备份和恢复操作有着明确的流程和步骤。
本文将详细介绍Oracle备份和恢复的操作流程。
一、备份操作流程1. 确定备份类型:根据需求和数据重要性,确定采用全备份、增量备份还是差异备份。
全备份是指备份整个数据库,增量备份是指备份自上次备份以来的所有更改,差异备份是指备份自上次全备份以来的所有更改。
2. 选择备份工具:Oracle提供了多种备份工具,如RMAN (Recovery Manager)、Data Pump、Export/Import等。
根据需求选择合适的备份工具。
3. 设置备份策略:根据业务需求和数据增长情况,设置备份策略,包括备份频率、保留周期、备份存储位置等。
备份策略应该根据实际情况制定,以充分保护数据并节约存储空间。
4. 执行备份命令:根据选择的备份工具和策略,执行相应的备份命令。
比如使用RMAN进行备份,可以使用RMAN命令行工具或者图形化工具执行备份操作。
5. 检查备份状态:备份完成后,需要检查备份状态,确保备份成功并没有错误。
可以查看备份日志或者备份工具提供的状态信息。
二、恢复操作流程1. 确定恢复类型:根据需要,确定采用完全恢复、部分恢复还是点恢复。
完全恢复是指将整个数据库恢复到某个时间点或备份点的状态,部分恢复是指只恢复某些表或数据文件,点恢复是指只恢复某个时间点的数据。
2. 准备恢复环境:恢复操作需要一个独立的环境,可以是一个新的数据库实例或者一个已有的实例。
需要确保恢复环境与原始数据库的版本和配置相同。
3. 恢复备份文件:根据选择的恢复类型,执行相应的恢复命令。
如果是完全恢复,可以使用全备份文件进行恢复;如果是部分恢复,可以使用增量备份或差异备份文件进行恢复。
4. 应用归档日志:如果数据库启用了归档日志模式,需要将归档日志应用到恢复的数据库中,以保证数据的一致性。
ORACLE数据库备份及恢复方法
ORACLE数据库备份及恢复⽅法⼀、oracle数据备份1、找到电脑右下⽅开始--运⾏,输⼊cmd,进⼊dos命令窗⼝。
2、输⼊sqlplus system/密码@orcl (⼀般管理员登录)--------连接本机oracle数据库输⼊ sqlplus system/密码@IP:端⼝/orcl (⼀般管理员登录)--------连接⾮本机oracle数据库3、创建⼀个dmp的⽬录,输⼊create directory dpdata1 as 'E:\temp\dmp';4、查询是否有此⽬录,select * from dba_directories;5、在E盘下新建E:\temp\dmp⽬录6、赋于要导出数据表的所属⽤户权限,grant read,write on directory dpdata1 to ⽤户名;,授权成功以后输⼊exit 退出sql。
7、开始数据备份,expdp system/密码@orcl directory=dpdata1 dumpfile=⽂件名.dmp logfile=⽂件名.log schemas=⽤户名8、⽬录E:\temp\dmp下⾯可以看到备份⽂件,备份完成。
⼆、oracle数据还原1、找到电脑右下⽅开始--运⾏,输⼊cmd,进⼊dos命令窗⼝。
2、输⼊sqlplus system/密码@orcl (⼀般管理员登录)--------连接本机oracle数据库3、删除user,输⼊ drop user ⽤户名 cascade;4、导⼊还原数据,输⼊ impdp system/密码@orcl directory=dpdata1 dumpfile=dmp⽂件名 logfile=log⽂件名 schemas=⽤户名; 还原完成。
5、在plsql或者其他oracle检查数据完整性,脚本如下:select t.table_name , t.num_rows from user_tables t order by t.num_rows desc三、定时备份:@ECHO OFFschtasks /create /tn IRRIG_SOUTH_DEV数据库定时备份 /tr "E:\temp\IRRIG_SOUTH_DEV.bat" /sc daily /st 00:00:00 /ru "system" PAUSEEXITwindows每晚⾃动运⾏数据库备份bat。
Oracle数据库备份恢复实战
Oracle数据库备份恢复实战在管理和运维Oracle数据库时,数据库备份和恢复是一项至关重要的任务。
无论是因为误操作、硬件故障还是数据丢失,数据库备份和恢复能够帮助我们从灾难中恢复并保护我们的数据。
本文将介绍一些Oracle数据库备份恢复的实战方法,帮助读者了解如何有效地进行数据库备份和恢复。
1. 数据库备份方法1.1 物理备份物理备份是指对数据库的实际物理文件进行备份,备份的内容包括数据文件、控制文件和归档日志文件。
物理备份通常使用RMAN (Recovery Manager)工具来完成。
以下是进行物理备份的一般步骤:1) 配置RMAN环境并连接到目标数据库;2) 创建备份集并指定备份文件的存储位置;3) 开始备份任务,RMAN将自动备份数据文件、控制文件和归档日志文件;4) 备份完成后,可以使用RMAN验证备份文件的完整性。
1.2 逻辑备份逻辑备份是指对数据库中的逻辑结构(如表、视图等)进行备份,备份的内容是SQL语句或者导出文件。
逻辑备份通常使用expdp(数据泵)或者exp(传统导出)工具来完成。
以下是进行逻辑备份的一般步骤:1) 配置expdp或exp环境并连接到目标数据库;2) 创建备份目录并指定备份文件的存储位置;3) 开始备份任务,expdp或exp将自动生成备份文件;4) 备份完成后,可以使用impdp或imp工具验证备份文件的完整性。
2. 数据库恢复方法2.1 物理恢复物理恢复是指将备份的物理文件还原到数据库中,并应用归档日志文件来恢复丢失的数据。
以下是进行物理恢复的一般步骤:1) 将备份文件复制到目标数据库的恢复目录;2) 启动目标数据库并将其切换到恢复模式;3) 使用RMAN工具恢复数据文件、控制文件和归档日志文件;4) 应用归档日志文件以恢复丢失的数据;5) 完成恢复后,将数据库切换回正常运行模式。
2.2 逻辑恢复逻辑恢复是指使用逻辑备份文件来还原数据库中的逻辑结构和数据。
Oracle数据库备份与恢复课件
案例2—使用命令执行数据库备份
完成步骤
2.联机表空间备份
(1)确定数据文件 在开始备份整个表空间之前,使用DBA_DATA_FILES数据字 典视图以确定所有表空间的数据文件。例如:
SELECT
TABLESPACE_NAME,
FROM
SYS.DBA_DATA_FILES ;
(2)标记联机表空间备份开始 使用ALTER TABLESPACE命令,标记表空间联机备份开始, 如:
ALTER TABLESPACE USERS BEGIN BACKUP;
(3)备份联机数据文件
COPY E:\Oracle11\oradata\EBUY\USERS01.DBF
F:\BAK01\TSBAK0 (4)标记联机表空间备份结束
Oracle数据库备份与恢复课件
案例3—恢复数据库
完成步骤
使用命令执行数据库恢复 1.热备份的恢复 (1)使用带OFFLINE选项的ALTER DATABASE命令将出现故障的表空间脱机。 例如: ALTER DATABASE DATAFILE ‘E:\Oracle11\oradata\EBUY\USERS01.DBF’ OFFLINE; (2)使用操作系统自带的命令或其他方式将表空间的备份文件复制到原来的位 置,并覆盖原文件。例如: COPY F:\BAK01\TSBAK0\USERS01.DBF E:\Oracle11\oradata\EBUY (3)使用RECOVER命令进行介质恢复,恢复表空间。例如: RECOVER DATAFILE ‘E:\Oracle11\oradata\EBUY\USERS01.DBF’; (4)使用带ONLINE选项的ALTER DATABASE命令将表空间联机。例如: ALTER DATABASE DATAFILE ‘E:\Oracle11\oradata\EBUY\USERS01.DBF’ ONLINE;
Oracle数据库备份与恢复之完全攻略
Oracle数据库备份与恢复之完全攻略一、导出/导入(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/managerinctype=complete file=040731.dmp。
(2)“增量型”增量导出备份上一次备份后改变的数据,比如:exp system/managerinctype=incremental file=040731.dmp。
(3)“累积型”增量导出累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。
比如:exp system/manager inctype=cumulative file=040731.dmp。
数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。
比如数据库的被封任务可以做如下安排:星期一:完全备份(A) 星期二:增量导出(B) 星期三:增量导出(C)星期四:增量导出(D) 星期五:累计导出(E) 星期六:增量导出(F)星期日:增量导出(G)。
oracle数据库备份与恢复方案
oracle数据库备份与恢复方案目录一、编写目旳 ......................................................................................................... 错误!未定义书签。
二、备份工具及备份方式...................................................................................... 错误!未定义书签。
三、软件备份 ......................................................................................................... 错误!未定义书签。
四、软件恢复 ......................................................................................................... 错误!未定义书签。
五、数据备份 ......................................................................................................... 错误!未定义书签。
六、备份旳存储 ..................................................................................................... 错误!未定义书签。
七、备份数据旳保留规定...................................................................................... 错误!未定义书签。
Oracle 备份与恢复概述
Oracle 备份与恢复概述为了保证数据库的高可用性,Oracle数据库提供了备份与恢复机制,以便在数据库发生故障时完成对数据库的恢复操作,避免损失重要的数据资源。
丢失数据可以分为物理丢失和逻辑丢失。
物理丢失是指操作系统的数据库组件丢失,例如,数据文件、控制文件、重做日志以及归档日志。
引起物理数据丢失的原因可能是磁盘驱动毁损,也可能是有人意外删除了一个数据文件或者修改关键数据库文件所造成的配置变化。
逻辑丢失就是例如表、索引和表记录等数据库组件的丢失。
引起逻辑数据丢失的原因可能是有人意外删除了不该删除的表、应用出错或者在DELETE语句中使用不适当的WHERE 子句。
毫无疑问,Oracle能够实现物理数据备份与逻辑数据备份。
虽然两种备份模式可以互相替代,但是在备份计划内有必要包含两种模式,以避免数据丢失。
物理数据备份主要是针对如下文件备份:●数据文件●控制文件●归档重做日志物理备份通常按照预定的时间间隔运行以防止数据库的物理丢失。
当然,如果想保证能够把系统恢复到最后一次提交时的状态,必须以物理备份为基础,同时还必须有自上次物理备份以来累积的归档日志与重做日志。
备份一个Oracle数据库有3种标准方式:导出、脱机备份和联机备份。
导出方式是数据库的逻辑备份,其他两种备份方式都是物理文件备份。
在Oracle中,EXP和EXPDP工具就是用来完成数据库逻辑备份的,若要恢复需要调用IMP或IMPDP导入先前的逻辑备份文件。
Oracle中的导出工具(EXPDP和EXP)可以读取数据库,并把其中的数据写入到二进制形式的转储文件中。
可以导出整个数据库、指定用户模式或指定表。
在导出期间,可以选择是否导出与表相关的数据字典信息,如权限、索引和与其相关的约束条件。
在对数据库进行导出备份时,可以进行完全导出备份,也可以进行增量导出备份。
增量导出有两种不同类型:Incremental(增量备份)和Cumnlative(累积备份)。
oracle数据库备份与还原方法
oracle数据库备份与还原方法一、Oracle数据库备份方法。
1.1 冷备份。
冷备份是在数据库关闭状态下进行的备份。
这就好比是给一个睡着的人做全身检查,一切都是静止的,好操作。
你得把数据库相关的文件,像数据文件、控制文件、重做日志文件等一股脑儿地拷贝到一个安全的地方。
这种备份方法简单直接,但是呢,在备份期间数据库是不能使用的,就像你要修东西得先把它停下来一样,有点不方便。
不过它恢复起来也相对容易,就像把之前拷贝走的东西再原封不动地拿回来就好。
1.2 热备份。
热备份可就不一样啦,它是在数据库运行的时候进行备份的。
这就像是给一个正在跑步的人换鞋子,难度不小。
热备份主要是利用归档模式,对表空间或者数据文件进行备份。
这种方式不影响数据库的正常使用,就像在火车行驶的时候给它换个小零件,火车还能继续跑。
但是热备份的操作相对复杂一些,需要对Oracle数据库有比较深入的了解,不然很容易搞砸,那可就“偷鸡不成蚀把米”了。
1.3 逻辑备份。
逻辑备份呢,是通过Oracle的工具,比如EXP或者EXPDP来进行的。
这就像是把数据库里的数据按照一定的逻辑规则整理出来,打包带走。
它可以备份特定的表、用户或者整个数据库。
这种备份方式比较灵活,就像你可以从一个大仓库里挑选你想要备份的东西。
但是逻辑备份的速度可能会比较慢,特别是数据量很大的时候,就像小马拉大车,有点吃力。
二、Oracle数据库还原方法。
2.1 冷备份还原。
如果是冷备份还原,那就简单多啦。
首先把数据库关闭,然后把之前备份的文件再拷贝回原来的位置,就像把东西放回原位一样。
不过要注意文件的权限和路径,可不能张冠李戴。
一切就绪后,再启动数据库,就大功告成了。
这就像把修好的东西重新启动,又能正常工作了。
2.2 热备份还原。
热备份还原就复杂得多了。
首先要根据备份的情况,确定需要还原的表空间或者数据文件。
然后利用归档日志和备份文件进行恢复。
这过程就像走钢丝,得小心翼翼的。
Oracle数据库备份恢复介绍
Oracle数据库备份恢复介绍Oracle备份与恢复数据库整体备份RMAN> BACKUP DATABASEPLUS ARCHIVELOG; Rman备份级别•数据库•表空间•数据文件•控制文件•服务器参数文件(spfile)•归档日志文件•完全备份包含所有使用的数据文件块。
•级别为0的增量备份等同于标记为0级的完全备份。
•级别为1的累积增量备份仅包含自上次级别为0的增量备份以来修改的块。
•级别为1的差异增量备份仅包含自上次增量备份以来修改的块。
•差异增量备份包含自上次增量备份以来更改的所有块。
•累积增量备份包含自上次级别为0的增量备份以来更改的所有块。
启用块更改跟踪可简化备份过程,其可以:•在更改跟踪文件中记录更改的块•由RMAN 自动使用(如果启用此选项)•通过避免备份过程中的完全数据文件扫描来优化增量备份SQL> ALTER DATABASE ENABLE2> BLOCK CHANGE TRACKING3> USING FILE '/mydir/rman_change_track.f'4>REUSE;RMAN> RECOVER COPY OF2> DATAFILE {n|'file_name'}3> WITH TAG'incr_upd_df1';•列出数据文件的备份集和副本:RMAN> LIST BACKUP OF DATABASE;RMAN> LIST BACKUP OF DATAFILE2>"/db01/ORADATA/u03/users01.dbf";•列出指定表空间的任何数据文件的备份集和副本:RMAN> LIST COPY OF TABLESPACE "SYSTEM";•列出包含指定范围的归档日志的备份集和副本:RMAN> LIST COPY OF DATABASE ARCHIVELOG2> FROM TIME='SYSDATE-7';备份(副本)清理•RMAN> crosscheck backup;•RMAN> crosscheck backup of database;•RMAN> crosscheck backup of tablespace "SYSTEM";•RMAN> crosscheck backup of datafile 1;•RMAN> crosscheck backup of controlfile;•RMAN> crosscheck backup of spfile;•RMAN> crosscheck backup of archivelog all;•RMAN> delete(expired)……•RMAN> show all;•RMAN> report obsolete;•RMAN> delete obsolete;恢复可分为以下两类:•完全恢复是将数据库恢复到当前最新状态,包括直至请求恢复时进行的所有已提交的数据更改。
oracle备份与恢复机制
谈ORACLE备份与恢复经常听到有人说,某数据库备份方法好,某备份方法不好,或者说现在都流行用rman来备份了,逻辑备份已经过时了,冷备份就更不值一提了,其实数据库的备份从来没有什么好坏之分、没有过时之说,合适才是最重要的,自己好才是真的好.各种方法各有长短,谁也代替不了谁,只有根据实际情况搭配使用,才能发挥最大的作用,否则只能是东施效颦.1. oracle的备份,包括noarchivelog模式的备份(冷备份)、archivelog模式的备份(热备份、rman备份)、逻辑备份(不分模式).1.1. 冷备份:-- 1)关闭数据库shutdown;-- 2)备份数据文件、控制文件、重做日志文件-- A、查找备份文件的位置SELECT * FROM V$DATAFILE; --查数据文件select * from v$controlfile; --查控制文件select * from v$logfile; --查日志文件-- B、备份数据文件、控制文件、重做日志文件$ copy D:\oracle\oradata\ora9\*.dbf d:\bak\*.*;$ copy D:\oracle\oradata\ora9\*.ctl d:\bak\*.*;$ copy D:\oracle\oradata\ora9\*.log d:\bak\*.*;1.2. 热备份:-- 1)查询备份的数据文件与哪一个表空间有关SELECT V$,V$DATAFROM V$TABLESPACE JOIN V$DATA(TS#);-- 2)备份数据文件alter tablespace 表空间 BEGIN BACKUP;$ COPY 数据文件存放路径ALTER TABLESPACE 表空间 END BACKUP;-- 3)查询是否还有表空间处于备份模式SELECT * FROM V$BACKUP; --STATUS不是ACTIVE即可以SELECT V$,V$BACKUP.STATUS,V$DATAFROM V$TABLESPACE JOIN V$DATA (TS#) JOIN V$BACKUP USING (FILE#);-- 4)备份控制文件ALTER DATABASE BACKUP CONTROL '目标路径及文件名';1.3. rman备份:-- 1)一个简单的rman全库备份:> rman nocatalog target "sys/sys"RMAN> restore control autobackup;RMAN> configure control on;RMAN> backup database;-- 2)备份数据文件、控制文件、归档日志RMAN> BACKUP DATAFILE 数据文件名;RMAN> BACKUP CURRENT CONTROLFILE;RMAN> BACKUP ARCHIVELOG ALL;-- 3)备份控制文件traceSQL> alter session set trace ;SQL> alter database backup control trace;SQL> alter database backup control 'd:\temp\control';-- 4)备份表空间RMAN> backup tablespace 表空间名;-- rman备份比较复杂,只举些简单的例子.1.4. 逻辑备份-- 1)数据库方式(导出用户要具有exp_full_database权限) exp scott/tiger@ora9 full=y file="D:\full.dmp"-- 2)用户方式exp userid=scott/tiger@ora9 owner=scottfile=d:\scott.dmp log=d:\scott.log-- 3)表方式exp scott/tiger@ora9 tables=(emp,dept)file="d:\emp.dmp"2. oracle的恢复(简单举例):2.1 冷备份的恢复,1). STARTUP MOUNT;2). ALTER DATABASE DATAFILE 数据文件 OFFLINE DROP;3). ALTER DATABASE OPEN;2.2 热备份恢复:1). STARTUP MOUNT;2). ALTER DATABASE DATAFILE 数据文件 OFFLINE; -- //system01.dbf不能设置未OFFLINE状态3). ALTER DATABASE OPEN;2.3 rman备份恢复:-- 1) 使用rman恢复归档数据库:rman target /rman> startup mountrman> restore database;rman> recover database;rman> alter database open;--2) 使用rman恢复表空间:rman> restore tablespacerman> recover tablespacerman>run{sql " alter tablespace users offline immediate";restore tablespace users;recover tablespace users;sql " alter tablespace users online ";}2.4 .逻辑恢复--1)数据库方式(导入用户要具有exp_full_database权限)imp system/system@ora10 full=y file="f:\full.dmp"--2)用户方式imp userid=scott/tiger@ora10 fromuser=scott touser=scot t file=d:\scott.dmp log=d:\scott.log--3)表方式imp system/system@ora10 fromuser=scott touser=scott file="f:\emp.dmp"--注意:导出用户要和导入用户相同可以用上面的方法,否则用imp scott/tiger@ora10 full=y file="f:\emp.dmp"3. oracle备份与恢复方法的选择:1).对于一些小系统、小数据量、没有在线要求的数据库,采用冷备份,简单方便、可靠(所有文件时间点一致),但如果是这类系统个人觉得使用oracle就是一种浪费,学习除外.2).对于7X24小时的大系统、帐营支撑系统、客服系统的数据库,使用归档模式运行,采用全库备份与逻辑备份相结合的方式.3).对于经营分析系统、BI系统、查询系统等数据库,可采用逻辑备份与表空间备份相结合的方式,对变化数据进行增量备份.4).对于一些字典数据库、静态数据较多的数据库,可采用逻辑备份,定期备份相关重要数据.对于上面提到的方法,只是个表面的东西而已,要想保证数据库高效、安全、稳定的运行,必须要有完整的、切实可行的数据库运行管理制度,并且严格执行实施,否则再好的方法都是水中月、镜中花.(学习的目的是增长知识,提高能力,相信一分耕耘一分收获,努力就一定可以获得应有的回报)。
oracle备份、恢复
Oracle备份、恢复1. 引言备份和恢复是Oracle数据库管理中至关重要的一部分。
通过定期备份Oracle数据库,可以保证数据在发生故障或灾难时的安全性和可恢复性。
本文将介绍Oracle数据库的备份和恢复方法,以及一些常见的备份和恢复策略。
2. 备份方法Oracle数据库提供了多种备份方法,包括物理备份和逻辑备份。
2.1 物理备份物理备份是将数据库的物理文件(数据文件、控制文件和日志文件)备份到外部存储介质中。
物理备份可以使用Oracle提供的工具如RMAN(Recovery Manager),也可以使用操作系统级别的工具如tar或cp命令进行备份。
2.2 逻辑备份逻辑备份是通过导出数据库中的数据、表和对象定义来备份数据库。
逻辑备份可以使用Oracle提供的工具如expdp(数据泵导出)和exp (传统导出),也可以使用第三方工具如DataPump Export和TOAD进行备份。
3. 备份策略在制定备份策略时,需要考虑以下几个因素:3.1 定期备份备份应该定期进行,频率根据业务需求和数据库的变更频率而定。
通常,每天进行一次完整备份,并结合增量备份来减少备份时间和存储空间的占用。
3.2 备份保留时间备份需要保留一定的时间,以防止数据恢复时出现问题。
通常,完整备份可以保留一周,而增量备份可以保留一到两天。
3.3 备份验证备份完成后,需要进行备份验证以确保备份文件的完整性和可用性。
可以使用RMAN的VALIDATE命令来验证备份文件。
3.4 离线备份除了定期备份,还应该定期进行离线备份,将备份文件存储在不同的位置,以防止发生物理灾难。
4. 恢复方法当数据库发生故障或数据丢失时,需要使用备份文件进行恢复。
以下是一些常见的Oracle数据库恢复方法:4.1 物理恢复物理恢复是通过使用RMAN来还原备份文件和应用归档日志来恢复数据库。
物理恢复可以是完全恢复或部分恢复,具体取决于数据库的损坏程度和备份策略。
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数据库备份与恢复方法
oracle数据库备份与恢复方法
Oracle数据库备份与恢复是确保数据安全和可靠性的重要方面。
备份是指将数据库中的数据复制到另一个位置,以便在数据丢失或
损坏时进行恢复。
恢复则是指在发生故障或数据丢失时,通过备份
数据来恢复数据库到之前的状态。
一、备份方法:
1. 物理备份,物理备份是通过操作系统级别的工具(如RMAN)将数据库文件直接复制到备份位置。
可以使用RMAN命令行或图形界
面工具来执行物理备份。
2. 逻辑备份,逻辑备份是通过导出数据到逻辑文件(如SQL脚
本或数据泵文件)来进行备份。
可以使用expdp和impdp命令来执
行逻辑备份和恢复。
二、恢复方法:
1. 完全恢复,在数据库严重损坏或丢失时,可以使用完全备份
进行完全恢复。
这涉及将数据库恢复到备份时的状态,并应用任何
后续的归档日志以实现完整的恢复。
2. 不完全恢复,在某些情况下,可能只需恢复部分数据文件或表空间。
这可以通过RMAN进行部分恢复来实现。
除了上述备份和恢复方法外,还有一些其他注意事项和最佳实践:
定期备份,建立合理的备份策略,包括完整备份、增量备份和归档日志备份,以确保数据的及时备份和恢复。
测试恢复,定期测试备份和恢复过程,以确保备份数据的完整性和可用性。
数据库保护,使用冗余服务器、存储冗余和灾难恢复计划来保护数据库免受硬件故障、自然灾害和人为错误的影响。
综上所述,Oracle数据库备份与恢复是确保数据安全和可靠性的重要措施,通过合理的备份策略和恢复方法,可以最大程度地保护数据库免受数据丢失和损坏的影响。
Oracle数据库备份与恢复(理论)
数据库常见故障类型
事务内部故障 系统故障 介质故障 计算机病毒
Oracle数据库保护机制
数据库备份 事务日志 数据库的事务日志是一组操作系统文件,它 记录了提交事务所做的数据库修改。当提交 事务时,在修改数据库之前,Oracle在事务 日志中写入足够的信息,如果数据库需要恢 复,可以使用这些信息重做事务(包括 UNDO和REDO)。
模式的持有者对模式中的对象具有全部对象权限。 对象的持有者可将对象上的任何权限授权给其他 用户。如果被授权者包含有GRANT OPTION 授权, 那么该被授者也可将其权利再授权给其他用户。
对数据库对象的访问需要权限,通过GRANT命 令可以设置用户在特定数据库对象上相应权限。
GRANT SELECT ON STUDENT TO PUBLIC;
修改用户和删除用户
使用ALTER USER命令可以更改用户的信息,但必须 拥有ALTER USER系统权限,数据库用户修改自身口 令不需要任何系统权限。
更改用户PYM的口令为ORACLE ALTER USER PYM IDENTIFIED BY ORACLE 更改用户PYM在表空间USERS上的限额为无限 ALTER USER PYM QUOTA UNLIMITED ON USERS 更改用户PYM的默认表空间为USERS ALTER USER PYM DEFAULT TABLESPACE USERS
名,用户名,字节数,块数等信息。
(5)USER_TS_QUOTAS,USER_RESOURCE_LIMITS,用
资源限制信息。
(6)USER_PASSWORD_LIMITS,用户口令管理信息
权限
权限是执行一种特殊类型的SQL语句或存取另 一用户的对象的权力。
浅谈ORACLE数据库中的备份与恢复
浅谈ORACLE数据库中的备份与恢复备份与恢复是我们使用数据库中不可缺少的部分,也是我们在使用数据库时会经常碰到的问题,当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。
因此当发生上述故障后,希望能重新建立一个完整的数据库,该处理称为数据库恢复。
恢复子系统是数据库管理系统的一个重要组成部分。
恢复处理随所发生的故障类型所影响的结构而变化。
ORACLE数据库使用几种结构对可能故障来保护数据:数据库后备、日志、回滚段和控制文件。
数据库后备是由构成Oracle数据库的物理文件的操作系统后备所组成。
当介质故障时进行数据库恢复,利用后备文件恢复毁坏的数据文件或控制文件。
日志,每一个Oracle数据库实例都提供,记录数据库中所作的全部修改。
一个实例的日志至少由两个日志文件组成,当实例故障或介质故障时进行数据库部分恢复,利用数据库日志中的改变应用于数据文件,修改数据库数据到故障出现的时刻。
数据库日志由两部分组成:在线日志和归档日志。
每一个运行的Oracle数据库实例相应地有一个在线日志,它与Oracle后台进程LGWR一起工作,立即记录该实例所作的全部修改。
在线日志由两个或多个预期分配的文件组成,以循环方式使用。
归档日志是可选择的,一个Oracle数据库实例一旦在线日志填满后,可形成在线日志的归档文件。
归档的在线日志文件被唯一标识并合成归档日志。
回滚段用于存储正在进行的事务(为未提交的事务)所修改值的老值,该信息在数据库恢复过程中用于撤消任何非提交的修改。
控制文件,一般用于存储数据库的物理结构的状态。
控制文件中某些状态信息在实例恢复和介质恢复期间用于引导Oracle。
一个Oracle数据库的每一实例有一个相关联的在线日志。
一个在线日志由多个在线日志文件组成。
浅谈ORACLE数据库中的备份与恢复
浅谈ORACLE数据库中的备份与恢复备份与恢复是咱们利用数据库中不可缺少的部份,也是咱们在利用数据库时会常常碰着的问题,当咱们利用一个数据库时,总希望数据库的内容是靠得住的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,乃至破坏数据库,使数据库中全数或部份数据丢失。
因此当发生上述故障后,希望能从头成立一个完整的数据库,该处置称为数据库恢复。
恢复子系统是数据库管理系统的一个重要组成部份。
恢复处置随所发生的故障类型所影响的结构而转变。
ORACLE数据库利用几种结构对可能故障来保护数据:数据库后备、日记、回滚段和控制文件。
数据库后备是由组成Oracle数据库的物理文件的操作系统后备所组成。
当介质故障时进行数据库恢复,利用后备文件恢复损坏的数据文件或控制文件。
日记,每一个Oracle数据库实例都提供,记录数据库中所作的全数修改。
一个实例的日记至少由两个日记文件组成,当实例故障或介质故障时进行数据库部份恢复,利用数据库日记中的改变应用于数据文件,修改数据库数据到故障出现的时刻。
数据库日记由两部份组成:在线日记和归档日记。
每一个运行的Oracle数据库实例相应地有一个在线日记,它与Oracle后台进程LGWR一路工作,当即记录该实例所作的全数修改。
在线日记由两个或多个预期分派的文件组成,以循环方式利用。
归档日记是可选择的,一个Oracle数据库实例一旦在线日记填满后,可形成在线日记的归档文件。
归档的在线日记文件被唯一标识并合成归档日记。
回滚段用于存储正在进行的事务(为未提交的事务)所修改值的老值,该信息在数据库恢复进程顶用于撤消任何非提交的修改。
控制文件,一般用于存储数据库的物理结构的状态。
控制文件中某些状态信息在实例恢复和介质恢复期间用于引导Oracle。
一个Oracle数据库的每一实例有一个相关联的在线日记。
一个在线日记由多个在线日记文件组成。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
↸
热备份
热备份的优点 * 备份时,数据库可以是打开的,一个数据文件或
1 7
表空间处于备份状态时,用户仍可访问其它数据。
* 可用来全面恢复数据库。 热备份的缺点
*
执行过程较复杂。
* 可能造成CPU、I/O系统过载而影响系统的性能。 可能造成CPU、I/O系统过载而影响系统的性能。 因此,应把热备份安排在数据库不太繁忙的时候。
↸
常见数据库故障及恢复
2、系统故障
系统故障是由于OS故障或 错误、 系统故障是由于 故障或DBMS错误、突然停电 故障或 错误 等原因导致的所有正在运行的事务以非正常方式终止。 等原因导致的所有正在运行的事务以非正常方式终止。 此时内存中数据库缓冲区的数据全部丢失, 此时内存中数据库缓冲区的数据全部丢失,但物理数 据库上的数据未受影响。 据库上的数据未受影响。 恢复办法: 恢复办法: 重启系统后, 重启系统后,恢复程序一方面强行撤消所有未完 成的事务。另一方面重做所有已提交的事务( 成的事务。另一方面重做所有已提交的事务(可能发 生故障时已提交的事务对数据的修改信息在内存缓冲 区中还没来得及存入物理数据库), ),以保证数据库的 区中还没来得及存入物理数据库),以保证数据库的 逻辑一致性。 逻辑一致性。 由数据库系统的恢复程序自动处理系统故障。 由数据库系统的恢复程序自动处理系统故障。
↸
丢失整个数据库的恢复
恢复过程如下:
①拷贝备份文件 ②以MOUNT方式启动数据库 ②以MOUNT方式启动数据库 ③用RECOVER命令进行恢复: ③用RECOVER命令进行恢复: SQL> RECOVER DATABASE; DATABASE; 恢复完成后可用‘ 恢复完成后可用‘ALTER DATABASE OPE N’命令打开数据库,确认数据库已恢复正 命令打开数据库, 常。 ↸
冷备份
冷备份又称脱机备份,是在数据库关闭的情况下 进行的备份,这时所有与数据库相关文件都是静 止的,只需知道要备份的文件位置即可利用操作 止的,只需知道要备份的文件位置即可利用操作 系统的复制功能进行文件备份。 冷备份操作过程如下: 关闭数据库 备份所有相关的数据库文件:
数据文件 控制文件 Redo 日志 归档的 Redo 日志 初始化文件
1 6
SQL>ALTER DATABASE BACKUP CONTROLFILE TO 路径/文件名; 路径/文件名;
备份其他文件
注意 要用BEGIN BACKUP和END BACKUP命令要有ALTER 要用BEGIN BACKUP和 BACKUP命令要有ALTER TABLESPACE或 TABLESPACE或MANAGE TABLESPACE系统权限。 TABLESPACE系统权限。
4
↸
日志文件
日志文件记载了对数据库所做的任何修改。 日志文件记载了对数据库所做的任何修改。
5
日志的目的是用来恢复事务故障、系统故障、 日志的目的是用来恢复事务故障、系统故障、并协助后 备副本进行介质故障的恢复。 备副本进行介质故障的恢复。 以记录为单位的日志文件内容: 以记录为单位的日志文件内容: 事务开始标记 事务的更新操作类型(插入、删除、修改) 事务的更新操作类型(插入、删除、修改) 操作的对象 更新前数据的旧值 更新后数据的新值 事务结束标记 出现事务结束标志表示事务已提交 事务 记录
SQL>ALTER DATABASE DATAFILE 数据文件路径及名称 ONLINE;
⑥打开数据库。 SQL>ALTER DATABASE OPEN; OPEN;
↸
不完全恢复(P168) 不完全恢复(P168)
2 2
通常在部分日志不能使用时采用不完全恢复。由于 某些日志的不可用,使得恢复不能进行到当前状态 下,而只能恢复到最近的日志为止。可采用下列三 种类型的不完全恢复(incomplete recovery)方法: 种类型的不完全恢复(incomplete recovery)方法: 基于中止的恢复(Cancel-based): 基于中止的恢复(Cancel-based): RECOVER DATABASE UNTIL CANCEL 基于时间的恢复(Timestamp): 基于时间的恢复(Timestamp):
1 3
↸
查找有关文件的位置(P171) 查找有关文件的位置(P171)
1、查询与数据库相联系的所有数据文件 、 SQL> select name from v$datafile; 2、查询与数据库相联系的所有日志文件 SQL> select group#||' '||member from v$logfile 3、获得控制文件的位置 SQL> select name from v$controlfile; 4、获得归档的Redo日志信息 获得归档的Redo日志信息 若系统工作在归档模式下, 若系统工作在归档模式下,在前面介绍的企业管 理器中可了解到归档文件的位置, 理器中可了解到归档文件的位置,详细信息查询 参见P171v$log_history。 参见 。
SQL>ALTER TABLESPACE 表空间名 BEGIN BACKUP
1 5
拷贝表空间对应的数据文件 改变表空间状态以使表空间中的数据可用:
SQL>ALTER TABLESPACE 表空间名 END BACKUP;
↸
热备份
备完一个表空间后,应强行设置一个系统检查 点,将此次备份工作记录到系统中: SQL> ALTER SYSTEM CHECKPOINT; 以上完成了对一个表空间的备份,同理还可备 份其它表空间,但一次只能备份一个表空间。 备份联机的控制文件
↸
6
日志文件
日志文件分为联机重做日志文件和归档日志文 数据库系统只有工作在归档模式下, 件。数据库系统只有工作在归档模式下, 联机日志 文件在重新被写入前,才能自动归档。 文件在重新被写入前,才能自动归档。
系统必须依靠当前的日志文件和已经归档的日志 文件才能有效地恢复故障。 文件才能有效地恢复故障。
第六章 Oracle数据库备份与恢复 Oracle数据库备份与恢复
2
常见数据库故障及恢复
1、事务故障
由于某种原因( 由于某种原因(如:数据输入错误、运算溢出、并 数据输入错误、运算溢出、 发事务竞争资源导致死锁等) 发事务竞争资源导致死锁等)使事务未运行到正常终止 点而夭折,这种情况就称为事务故障。 点而夭折,这种情况就称为事务故障。此时数据库系统 仍然在运行。 仍然在运行。 恢复办法: 恢复办法:恢复程序要在不影响其它事务运行的情况下, 强行回滚该事务,即清除该事务对数据库的所有修改, 使得系统回到该事务启动前的状态。 事务故障由数据库系统的恢复程序根据日志文件的内 事务故障由数据库系统的恢复程序根据日志文件的内 日志文件 容自动完成,无需用户干预。 容自动完成,无需用户干预。
1 4
↸
热备份
热备份又称联机备份,是在数据库运行过程中 进行的备份。要进行热备份,数据库必须工作 在归档模式下。 热备份过程如下: 确认数据库工作在“ARCHIVELOG” 确认数据库工作在“ARCHIVELOG”模式下 设置表空间为备份状态(offline): 设置表空间为备份状态(offline):
Oracle的逻辑备份与恢复是指将数据库、用户和表 Oracle的逻辑备份与恢复是指将数据库、用户和表 的内容整个卸出,装入一个二进制文件,然后在需 要的时候通过重装再恢复到原来的形式。这种逻辑 备份与恢复可完成如下任务: ①备份。这是最重要的任务,可以任意备份整个数 据库,指定的用户或指定的表的内容。 ②压缩碎片。当数据库被多次更新之后,物理存储 设备上会出现许多不相邻的碎片,这些空间虽然存 在,但不可用。通过整库卸出,然后重新组装,可 起到压缩碎片的作用。 ③转储。当需要某用户的表时,可以先倒出,然后 根据需要安装到指定的用户上,还可跨平台转储。 Oracle提供的装库(IMPORT)卸库(EXPORT)实用 Oracle提供的装库(IMPORT)卸库(EXPORT)实用 程序用于实现逻辑备份与恢复, 程序用于实现逻辑备份与恢复, Oracle 10g中除了 10g中除了 Export和Import又新增了Data Export和Import又新增了Data Pump Export和Data Export和 Pump Import(P173)。 Import(P173)。
(1) SQL> connect system/lily SQL> select name, log_mode from v$database; NAME --------ORA91 LOG_MODE -----------------NOARCHIVELOG
9
(2) SQL> connect system/lily as sysdba; SQL> archive log list 数据库日志模式 自动存档 存档终点 ………… 禁用 d:\oracle\ora92\RDBMS 非存档模式
↸
物理备份的恢复
物理备份的恢复主要分为两大类:完 全恢复和不完全恢复。 完全恢复指将数据库恢复到发生故障 的时间点,不丢失任何数据。 不完全恢复指将数据库恢复到发生故 障前的某一个时间点,此时间点以后 的所有改动将会丢失。
1 8
↸
1 9
完全恢复
在所有事务日志都正常可用的情况下, 可使用完全恢复方式来恢复数据库。 采用完全恢复可对整个数据库进行恢 复,也可对丢失的部分数据文件进行 恢复。
归档日志
↸
8
Log1a.log
Log2a.log
Log3a.log
日志写入进程
Log1b.log Log2b.log Log3b.log
归档进程
Log1a.log Log2a.log Log3a.log
ARC00579.001 ………