当前位置:
文档之家› Oracle的数据备份与恢复
Oracle的数据备份与恢复
第四部分 数据备份(续)
• 联机热备份:
– 前提条件:数据库必须工作在Archivelog模 式 – 要进行的步骤:
• 逐个表空间备份数据文件
– ALTER TAB_SP BEGIN BACKUP; – 拷贝与表空间有关的数据文件; – ALTER TAB_SP END BACKUP;
• 备份归档日志文件
第二部分 相关的背景知识
• 数据备份模式
– 物理备份
• 冷备份:也称脱机备份,是在数据库处于关闭的状态下的 备份操作。 • 热备份:也称联机备份,是在数据库处于打开状态下的备 份操作。
– 逻辑备份
• 整个数据库的逻辑备份 • 指定表的逻辑备份 • 指定用户的逻辑备份
• Oracle数据库工作模式
第二部分 相关的背景知识(续)
– 1、关闭数据库、 – 2、利用操作系统命令移动控制文件 – 3、编辑init.ora文件,重新定义control_files 中的控制文件路径。 – 4、重新启动数据库。
第四部分 数据备份
• 冷备份(脱机备份):
– Shutdown数据库 – 复制所有的数据文件、控制文件、联机重做 日志文件(比较简单的做法是复制database 的整个目录)。 – 重新启动数据库。
– ARCHIVELOG模式:归档日志模式,即当当前联 机日志的记录空间充满后,形成一个归档日志文件 写到系统配置指定的位置。 – NOARCHIVELOG模式:非归档日志模式,不形成 归档日志文件,联机日志切换时把原有的内容覆盖。
• 数据文件:
– 存放表空间的文件(一个表空间可以跨越多个数据 文件),通过操作系统可以对数据文件进行备份。 – 用 SELECT * FROM DBA_DATA_FILES 可以查询 当前数据库中所有的数据文件。
• 增加日志组和日志组成员
– 增加日志组:
• ALTER DATABASE ADD LOGFILE GROUP 5 ('log1c', 'log2c') SIZE 2K;
– 增加日志组成员:
• ALTER DATABASE ADD LOGFILE MEMBER 'log2c' TO ('log2a', 'log2b');
• • • • D:\ORANT\BIN>SVRMGR30 SVRMGR>connect internal Password:******* Connected。
第三部分 备份与恢复设置(续)
• SVRMGR >startup mount; • ORACLE instance started。 • Database mounted。
• 控制文件:包含了与数据库状态有关的信息 (数据结构和时间戳等)。
第二部分 相关的背景知识(续)
• 联机重做日志文件:
– 用SELECT * FROM V$LOGFILE 可查看当前的联机 日志文件的个数和状态。
• 归档重做日志文件:
– 由系统配置文件指定归档日志的路径和目录,并规 定其文件命名格式。
• 系统配置文件:
– 规定了数据库启动时的一些参数。 – 可用SELECT * FROM V$PARAMETER 查询参数设 置结果。
第三部分 备份与恢复设置
• 更改数据库工作模式
– 数据库安装好以后,默认工作在非ARCHIVELOG 模式,按以下步骤可以使数据库工作在 ARCHIVELOG模式: 关闭数据库 全部转储 进入Server Manager,启动INSTANCE,并MOUNT 数据库
– – – – – – – Indexes:用于指定是否导出表上的索引 Rows:用于指定是否导出表中的数据 Full:是否导出全部数据库 Owner:导出数据库的帐户清单 Tables:导出数据库的表清单 Log:记录导出日志的文件名 Inctype:要执行的导出类型(complete、 cumulative、incremental)
第四部分 数据备份(续)
– 记录归档日志中目录中的文件。 – 备份归档日志目录中的文件,然后删除原目录中的归 档日志文件。
• 备份控制文件:
– Alter database backup controlfile
• 逻辑备份:
– 显示命令参数:
• EXP80 HELP=Y
– 常用参数说明:
第四部分 数据备份(续)
– 恢复到故障点的步骤:
• • • • • • SVRMGR >connect internal Password:******* Connected. SVRMGR >startup mount ORACLE instance started. Database mounted.
自动恢复归档文件
• SQLDBA>recover database
• SQLDBA>recover database until time ‘YYYYMM-DD:HH:MM:SS’;
第五部分 数据恢复(续)
• SQLDBA>alter database open resetlogs;
– 基于取消的恢复:允许事物日志一次应用一 个记录,当需要停止这个恢复过程时,可使 用CANCEL命令。
第五部分 数据恢复(续)
• 回答:AUTO即自动恢复 打开数据库 • SQLDBA>alter database open; • Statement processed. • SQLDBA>exit; • Server Manager complete.
– 基于时间点的恢复:允许恢复过程进行到一 个指定时间。
第三部分 备份与恢复设置(续)
• 更改联机重做日志文件路径
– 1、关闭数据库 – 2、利用操作系统命令移动联机重做日志文 件 – 3、Mount数据库,并输入以下命令:Alter databse rename ‘老位置’ to ‘新位置’; – 4、打开数据库。
第三部分 备份与恢复设置(续)
• 更改控制文件路径
设置ARCHIVELOG方式
• SVRMGR >alter database archivelog; • Statement processed。
打开数据库
• • • • SVRMGR >alter database open; Statement processed。 SVRMGR >exit; Server Manager complete。
• SQLDBA>recover database until CANCEL; • SQLDBA>alter database open resetlogs;
– 基于变化的恢复:允许操作使用一个SCN值 作为停止恢复的标志,若一个事物日志的 SCN值小于给定的SCN值,则它就会被执行。
第五部分 数据恢复(续)
第五部分 数据恢复
• 只进行了脱机备份的数据恢复:把最新 的冷备份数据拷贝到数据库要求的对应 位置即可。该方法只能恢复到备份时候 的数据,适用于联机事物处理要求不高 的系统。如决策分析系统、支持网站的 数据库等。
第五部分 数据恢复(续)
• 联机热备份的数据恢复(假设联机日志、归档 日志和控制文件都可用):
第四部分 数据备份(续)
• Complete:导出所有的指定的表 • Cumulative:前提条件是FULL=Y,导出前次任 何类型的FULL导出后修改过的表 • Incremental:前提条件是FULL=Y,该选项导出 前次Cumulative、Complete或Incremental导出后 修改过的表
第三部分 备份与恢复设置(续)
• 将系统设置成自动归档写满的联机日志 文件:
在INSTANCE启动前,修改参数文件 INITORCL.ORA,设置: LOG_ARCHIVE_START=TRUE LOG_ARCHIVE_DEST=指定路径(最好是单 独的硬盘)
启动数据库
第三部分 备份与恢复设置(续)
Oracle 的数据 备份与恢复
• 第一部分 数据库常见的故障种类 • 第二部分 相关的背景知识 • 第三部分 备份与恢复设置 • 第四部分 数据备份 • 第五部分 数据恢复 • 第六部分 备份方案示例
第一部分 数据库常见的故障种类
• 语句错误:程序中包含了不能正确执行或逻辑 错误的SQL语句。 • 进程错误:客户机应用程序异常终止时会产生 此种错误。 • 实例错误:服务器的故障或断电而造成的非正 常宕机会产生这种错误。 • 用户或应用程序错误:用户删除了仍然需要的 数据。 • 存储介质错误:磁盘损坏或数据文件损坏引起。
– Userid:执行导出的用户,一般是第一个参 数,可以省略不写 – buffer:用于获取数据行的缓冲尺寸 – File:导出的文件名 – Filesize:导出文件的最大尺寸 – Compress:用于指定是否把碎片段整理成单 个盘区 – Grants:用于指定是否导出数据库对象权限
第四部分 数据备份(续)
• SQLDBA>recover database until CHANGE 2032; • SQLDBA>alter database open resetlogs;
第六部分 备份方案示例
• 数据备份与恢复实例.doc
ห้องสมุดไป่ตู้