Oracle数据库备份与恢复的三种方法
- 格式:pdf
- 大小:11.39 KB
- 文档页数:1


数据库备份与恢复的方法与技巧
随着数据在企业运营中扮演越来越重要的角色,数据库成为了数据存储的核心。因此,对数据库的备份和恢复操作十分关键。这不仅可以为企业在面对数据丢失或灾难时提供保障,还可以提高数据可靠性和安全性。本文将介绍一些数据库备份与恢复的方法和技巧。
一、备份和恢复的基本原理
备份是指将数据库中的数据复制到另一个位置以获得数据的副本,以备不时之需。恢复是指在数据库失效时,利用备份来还原数据。备份和恢复有三种常见的方法:完整备份、增量备份和差异备份。
完整备份是指备份整个数据库,这是最基本的备份方法。增量备份只备份从上次备份之后修改过的数据。差异备份则是在最近的完整备份后,备份与上次备份不同的数据库部分。
恢复时,完整备份最容易恢复,但是需要的时间和空间最多。增量备份需要恢复所有备份,包括完整备份和增量备份,但需要的时间和空间较少。差异备份可恢复和增量备份相同的数据,但是需要的时间和空间更少。
二、数据库备份和恢复工具的选择
选择合适的数据库备份和恢复工具非常重要。常用的开源数据库备份工具有mysqldump、pg_dump、Oracle备份实用程序等。此外,商业数据库备份工具也是很好的选择,如IBM Spectrum
Protect、Symantec Backup Exec等。
无论采用哪种工具,备份和恢复的过程都应该经过测试。这样可以确保备份的可靠性和恢复的准确性。此外,还需要定期进行备份和恢复测试,以确保备份和恢复工具的性能。
三、数据库备份和恢复的最佳实践
1. 选择正确的备份地点
备份必须保存在安全地点。建议将备份保存在外部硬盘、网络存储设备或云存储中。不要将备份存放在和数据库服务器相同的位置,以防止数据丢失和物理破坏。
2. 建立备份计划
建立备份计划以确保备份的可靠性和恢复的准确性。备份计划应该考虑到备份的频率、备份的地点、恢复的速度等因素。根据企业的数据特点和操作需求,做出适当的安排,以确保备份和恢复的顺畅进行。
第21卷第10期 电脑开发与应用
交通管理系统中◎Ⅱ。国@Ⅱ@数据库的备份和恢复
青岛农业大学信息学院 邓立苗 熊 凯 史新粱 当使用一个数据库时,总希望数据库 的内容是可靠的、正确的,但由于计算机 系统的故障(硬件故障、网络故障、进程故 障和系统故障)影响数据库系统的操作, 影响数据库中数据的正确性,甚至破坏数 据库。使数据库中全部或部分数据丢失。 因此当发生上述故障后,希望能重新建立 一个完整的数据库,该处理称为数据库恢 复。恢复子系统是数据库管理系统的一个 重要组成部分。恢复处理随所发生的故障 类型所影响的结构而变化。ORACI E数 据库有三种标准的备份。导出/4人 (EXPORT/IMPORT)、冷备份、热备份。 但是这几种方法都是采用命令的形式来 实现的。 在交通管理系统中,采用 PowerBuilder作为开发工具,数据库服务 器是采用Oracle数据库管理系统。在这种 情况下,对于专业人员进行数据库的备份 是比较简单的工作,但对于非专业人员来 说在用命令行的形式进行数据库操作,那 是非常困难的事情,那非专业的用户如何 进行数据的灵活备份和恢复呢? 1 Oracle导入导出工具 数据库(表)的备份和恢复,就是能让 客户端的用户根据自己的需要随时灵活 地对数据进行维护操作。用户不仅可以对 整个数据库中的数据进行全部备份,还可 以对某一个表进行单独备份,这样大大增 加了数据维护的灵活性。利用Oracle服务 器提供的两个重要的逻辑备份和恢复工 具:导入(Import)与导出(Export)来实现 数据库(表)的备份与恢复的。 Export是在数据库打开并能使用的 情况下备份数据库数据的实用程序。它把 Oracle数据库中的数据以Oracle进制形 式写到操作系统文件上,该文件叫导出文 件(后缀名为dmp)。导出文件在需要时再 导人到Oracle版本的数据库上。用Export 可实现应用程序失败时的恢复,由于导出 文件的特殊格式,必须用Import实用工 具将其读人数据库中。 Export的使用方法有如下三种: ①使用参毅文件的命令行法: 格式:EXP KEYWORD value或 KEYW()RD=(value1,value2,value3,…, valueN) ②行命令:该方法就是把导出的数据 库数据所用的导出参数以文件的形式给 出,以便于修改和重复使用,其命令格式 如一F: EXP [username/password ] PARFII E—filename ⑧交互方式:通过输入EXP命令和 用户名/口令,您可以后接用户名/口令的 命令,或者在命令行直接输入EXP命令 即可。 Import能导出的对象依赖于所选择 的方式。与导出方式一样,所有的用户都 至少可选择两种导入方式,有IMP FUI I DATABASE角色的用户可选择 三种导人方式。即表方式、用户方式和全 数据库方式。与Export的使用方法类似, 也有如下三种: ①使用参数文件的命令行法 ②行命令 ⑧交互方式 在PowerBuilder中,提供了一个能够 运行Oracle中的导入导出命令的run函 数,这样就可以实现Oracle数据库中的数 据的导人导出。由于表的备份(恢复)与数 据库的备份(恢复)非常类似,下面以系统 中的动态多表的备份及恢复来说明其具 体的功能实现。 2动态多表备份 在交通管理系统中,由于经常需要增 加一些新数据,因此用户就需要随机备份 数据库中某些变动相对频繁的数据表,而 对于一些数据相对固定的数据表就不需 要经常进行备份。在这种情况下,就需要 对数据库中的某些数据表进行备份备份, 即对数据库中的数据表有选择地进行备 份,而不是对整个数据库进行备份。针对 此要求,就需要在管理系统中添加动态数 据表备份功能,为了简化用户操作,对数 据库中的数据表可以进行批量备份。其界 面如图1所示。 E匪蚕团—●■—■●——■圈群 ~ 誊 旺I} ∞ ■ &矗舾#■ 将要备份的表选择好以后,点击备份就可 以对表进行备份了。当点击备份按钮后, 将会弹出一保存文件对话框,以供用户选 择文件保存的位置。“备份”按钮的代码的 主要功能是:打开文件保存对话框让用户 选择保存文件的路径及文件名,然后生成 并调用exp命令来导出数据表。其关键代 码如下: string mc //构建exp命令行 mc一 exp Trans.LogID七 Trans.LogPass+ @“+Trans.ServerName + file一 +PathName+ log一“+PathName +| parfile—H+PathName .par f 运行exp命令 run(mc) 3动态多表恢复 当数据库中的某些表由于某种原因 的损坏而无法使用时,就需要对这些表进 行恢复。 交通管理系统中为了实现用户进行 数据恢复的要求,从而设计了多表恢复功 能,即将数据从备份的数据表中恢复到系 统数据库中。动态多表恢复比备份实现起 来要复杂得多,主要分为下面几个步骤: ①选择备份文件 调用GetFileOpenName()函数来打 开选择文件对话框,根据用户的选择可以 获得用户选择的文件路径。 h GetFileName = GetFileOpenName( 选择文件 ,Is PathName, sFileName, dmp”, DMP File(*.dmp),*.drop ) 等用户选择了备份文件以后,就可以 进入动态多表恢复界面了,同时要将选择 的文件路径传递过去。 ②多表恢复界面初始化 动态多表恢复界面与多表备份的界 面类似,首先用户选择要备份的表,但供 选择的表并不是数据库中所有表,而是用 户选择的备份文件中所包含的数据。 ⑧多表恢复 界面初始化以后,用户就可以在供选 择的表中选择需要恢复的表,然后点击恢 复按钮就可以恢复所选择的表了。同备份 类似,多表恢复就是调用Oracle数据库的 导人命令Imp来完成表的恢复工作。恢复 之前,首先要把原先的表删除,然后才可 以调用Imp命令对其进行恢复。 主要代码如下:
数据库备份与还原概述
1、数据库的备份
(1)数据库的恢复模式
SQL Server有3中数据库恢复模式:简单回复模式、完整恢复模式和大容量日志恢复模式。通常,数据库是用完整恢复模式或简单恢复模式。
恢复模式 描述 工作丢失的风险 能否恢复到时间点
简单 无日志备份
自动回收日志空间,以使空间需求保持较低,实际省去了管理实务日志空间的需要 最新备份之后的更改不受保护。发生灾难是,这些更改必须重做。 只能恢复到备份的结尾
完整 需要日志备份
数据文件丢失或损坏不会导致丢失工作
可以恢复到任意时间点(例如,应用测序错误或用户错误之前) 正常情况下没有
如果日志尾部损坏,则必须重做自更新日志备份之后所做的更改 如果备份正在特定时间点完成,则可以恢复到该时间点
大容量日志 需要日志备份
是完整恢复模式的附加模式,允许执行高性能的大容量复制操作
对大多数大容量操作使用最少的日志记录,从而减少日志空间使用量 如果在最新日志备份后,发生日志损坏或大容量日志记录操作,则必须重做自该上次备份后的更改
其他情况下,工作不会丢失 可以恢复到让任何备份的结尾。不支持时间点恢复
(2)备份类型的概述:
<1> 完整备份:完整备份包含某个数据库的所有数据,或着一组文件或文件的所有数据,此外还有用来恢复这些数据的足够的日志。
SQL语句:BACKUP DATABASE数据库名 to disk = ‘路径’ [WITH
with_options[,......o]]
<2> 差异备份:差异备份是基于数据的最新完整备份。
SQL语句:BACKUP DATABASE数据库名 to disk = ‘路径’ WITH DIFFERENTIAL
<3> 日志备份:在完整恢复模式或大容量日志恢复模式下,需要定期进行事务日志备份(或称日志备份);事务日志备份在备份数据库是经常会被用到,事务日志备份是一种依赖于完整备份而不备份数据库本身的以智能光数据备份方式。
使用RMAN备份与还原Oracle数据库原理
一、数据库备份概念
对于Oracle数据库,备份方式包括物理备份和逻辑备份。
1、物理备份
将实际组成数据库的操作系统文件从一处拷贝到另一处的备份过程,通常是从磁盘到磁带。
该方法实现数据库的完整恢复,但数据库必须运行在归档模式下(业务数据库在非归档模式下运行),且需要极大的外部存储设备,例如磁带库,具体包括冷备份和热备份。冷备份和热备份是物理备份(也称低级备份),它涉及到组成数据库的文件,但不考虑逻辑内容。使用RMAN备份与还原ORACLE数据库的方式,属于物理备份方法。
2、逻辑备份
利用SQL语言从数据库中抽取数据并存于二进制文件的过程。业务数据库采用此种方式,此方法不需要数据库运行在归档模式下,不但备份简单,而且可以不需要外部存储设备,包括导出/导入(EXPORT/IMPORT)。这种方法包括读取一系列的数据库日志,并写入文件中,这些日志的读取与其所处位置无关。
二、RMAN备份方式
使用RMAN备份Oracle数据库,包括以下三种备份概念。
1、完全备份(Full Backup)与增量备份(Incremental Backup)
完全备份与增量备份是针对数据文件而言,控制文件和归档日志文件不能进行增量备份。当然,后两者可以做备份优化。
2、打开备份(Open Backup)或关闭备份(Closed Backup)
数据库打开状态下进行备份即是打开备份,数据库关闭状态下(加载状态)进行的备份即关闭备份。 3、一致备份(Consistent Backup)与不一致备份(Inconsistent
Backup)
数据库打开状态或不干净关闭状态(shutdown abort)进行的备份是不一致备份,利用不一致的备份修复数据库后还需要做数据库的恢复。在数据库干净关闭状态进行的备份是一致备份,利用一致备份修复数据库后不需要做数据库的恢复。
三、备份策略