Oracle数据库备份与恢复

  • 一、脱机备份与恢复
    • 1.脱机备份
      • 获取数据文件列表
      • 获取控制文件列表
      • 获取联机重做日志文件列表
      • 备份测试
    • 2.脱机恢复
  • 二、联机备份与恢复
    • 1.将数据库转换为归档模式
    • 2.联机备份
    • 3.联机恢复
  • 三、不完全恢复
    • 1.基于 cancel 的恢复
    • 2.基于时间点的恢复
    • 3.基于 SCN 的恢复
  • 四、使用EXP/IMP命令导出/导入数据
    • 1.EXP 导出命令概述
    • 2.EXP导出
    • 3.IMP 导入命令概述
      • 导入表
      • 导入方案
      • 导入数据库
  • 五、使用OEM导出/导入数据
    • 1.备份准备
    • 2.使用 OEM 导出数据
    • 3.使用 OEM 导入数据

一、脱机备份与恢复

1.脱机备份

获取数据文件列表


获取控制文件列表


获取联机重做日志文件列表


备份测试

建立测试表


关闭数据库


建立备份的目录,复制文件到备份的目录,包括全部的数据文件、控制文件和重做日志文件(第一次尝试的时候被拒绝访问,只需要以管理员身份打开命令行即可)。
在oracle中当我们新建了多个数据库后,再次登录时,系统默认的是最后创建的那个数据库,所以上述操作默认在TEST4数据库中进行,要备份TEST4中的数据(这里一定要把上面查询到的文件都备份,如果缺文件则无法进行恢复,注意!!!)


启动数据库,增加测试记录


删除文件,模拟数据库损坏

2.脱机恢复

关闭数据库,将备份的数据文件还原到原来所在的位置



启动数据库,查询数据记录丢失情况

数据库恢复成功,但备份之后与崩溃之前的数据丢失了。意味着这种恢复可以完全恢复到备份的点上。

二、联机备份与恢复

1.将数据库转换为归档模式

创建两个目录


设置参数,指定归档目的地和控制归档日志文件名


关闭数据库,再在加载模式中启动数据库,并将数据库转换至文档模式后打开数据库,查询数据库及归档器进程状态


执行日志切换,查询数据库归档方式


2.联机备份

建立测试表并添加记录


将数据库的表空间设为联机备份状态,查 询bda_data_file 数据字典视图确定所有表空间的数据文件


备份该表空间的所有数据文件,并取消表空间的备份状态,备份控制文件后向测试表中添加一条记录,再进行日志切换


关闭数据库,模拟丢失数据文件


3.联机恢复

将出现问题的表空间数据文件修改为脱机状态,修改数据库为打开状态,将备份的数据文件复制到原来的目录


用 recover 命令进行介质恢复,完成后将表空间数据文件恢复为联机状态,查询数据记录丢失情况

可以发现,数据库恢复成功,数据没有丢失。
若丢失的数据文件有多个,则应先将相应的数据文件全部进行备份,再使用类似的恢复步骤进行恢复。

三、不完全恢复

1.基于 cancel 的恢复

基于 cancel 的不完全恢复适用场景:recover 时、所需的某个归档日志损坏,或主机断电、current 状态的联机日志损坏。


关闭数据库,使用操作系统命令将原来备份的文件复制到正确的目录下;使用 startup mount 命令启动数据库


2.基于时间点的恢复

首先关闭数据库,使用操作系统命令将原备份的文件复制到正确的目录下;使用 startup mount 命令启动数据库


使用 recover 命令对数据库执行基于时间点的恢复,完成恢复操作后,使用 resetlogs 模式启动数据库

3.基于 SCN 的恢复

SCN (System Change Number)是当 Oracle 数据库更新后,由 DBMS自动维护去累积递增的一个数字。在 Oracle 中有四种 SCN,分别为:系统检查点 SCN、数据文件检查点 SCN、启动 SCN、终止 SCN。
基于 SCN 的不完全恢复使用情况跟基于时间一样,只是这里是根据 SCN 值来恢复的,查询系统检查点 SCN。


首先关闭数椐库;使用操作系统命令将原备份的文件复制到正确的目录下;使用 startup mount 命令启动数据库


使用 recover 命令对数据库进行恢复。恢复操作完成后,使用 resetlogs 模式启动数据库

四、使用EXP/IMP命令导出/导入数据

1.EXP 导出命令概述

可以对所有表执行全数据库导出(Complete Export)或者仅对上次导出后修改的表格全数据库导出。增量导出有两种不同类型:Incremental (增量)型和 Cumulative(积累)型。Incremental 导出将导出上次导出后修改过的全部表;而 Cumulative 导出将导出上次全导出修改过的表。可使用 Export 实用程序来压缩数据段碎片的盘区。
从命令行调用 Export 程序并且传递各类参数和参数值,可以完成导出操作,参数如下:

  • Userid:执行导出的用户名和口令,如果是 EXP 命令后的第—个参数,则关键字 Userid 可以省略
  • Buffer:用于获取数据行的缓冲区尺寸,默认值随系统而定,通常设定一个高值(>64000)
  • File:导出转储文件的名字
  • Filessize:导出转储文件的最大尺寸。如果 file 条目中列出多个文件,将根据 Filessize 设置值导出这些文件
  • Compress:Y/N 标志,用于指定导出是否应把碎片段压缩成单个盘区。这个标志影响将存储到导出文件中的 storage 子句
  • Grants:Y/N 标志,指定数据库对象的权限是否导出
  • Indexes:Y/N 标志,指定表上的索引是否导出
  • Rows:Y/N 标志,指定行是否导出。如果设置为 N,在导出文件中将只创建数据库对象的 DDL
  • Constraints:Y/N 标志,用于指定表上的约束条件是否导出
  • Full:若设为 Y,执行 Full 数据库导出
  • Ower :导出数据库账户的清单;可以执行这些账户的 User 导出
  • Tables:导出表的清单;可以执行这些表的 Table 导出
  • Recordlength:导出转储文件记录的长度,以字节为单位。除非是在不同的操作系统间转换导出文件,否则就使用默认值
  • Direct:Y/N 标志,用于指示是否执行 Direct 导出。Direct 导出在导出期间绕过缓冲区,从而大大提高导出处理的效率
  • Inctype:要 执行 的到处 类型 ( 允许 值为 complete ( 默 认) 、cumulative 和 incremental)
  • Record:用于 incremental 导出,这个 Y/N 标志指示一个记录是否存储在记录导出的数据字典中
  • Parfile:传递给 Export 的一个参数文件名
  • Statistics:这个参数指示导出对象的 analyze 命令是否应写到导出转储文件上。其布效值是 compute、estimate (默认)和N
  • Consistent:Y/N 标志,用于指示是否应保留全部导出对象的读一致版本。在 ExPort 处理期间,当相关的表被用户修改时需要这个标志
  • Log:导出日志的文件名
  • Feedback:表导出时显示进度的行数。默认值为 0,所以在表全部导出前没有反馈显示
  • Query:用于导出表的子集 select 语句
  • Transport_tablespace:如果正在使用可移动表空间选项,就设置为 Y。和关键字tablespace 一起使用
  • Tablespaces:移动表空间时应导出其元数据的表空间
  • Object_consistent:导出对象时的事物集,默认为 N,建议采用默认值
  • Flashback_SCN:用于回调会话快照的 SCN 号,特殊情况下使用,建议不用
  • Flashback_time:用于回调会话快照的 SCN 号的时间,如果希望导出不是现在的数据,而是过去某个时刻的数据的话,可使用该参数
  • Resumanle:遇到错误时挂起,建议采用默认值
  • Resumanle_timeout:可恢复的文本字符串,默认值为 Y,建议采用默认值
  • Tts_full_check:对 TTS 执行完全或部分相关性检查,默认值为 Y,建议采用默认值
  • Template:导出的模板名

导出有以下三种模式:

  • 交互模式。在输入 EXP 命令后,根据系统的提示输入导出参数,如用户名、口令和导出类型等参数
  • 命令行模式。命令行模式和交互模式类似,不同的是使用命令模式时,只能在模式被激活后,才能把参数和参数值传递给导出程序
  • 参数文件模式。参数文件模式的关键参数是Parfile。Parfile的对象是一个包含激活控制导出对话的参数和参数值的文件名

2.EXP导出

建立导出的测试环境


将数据库 TEST4完全导出,用户名 system,密码 123456


将数据库中 system 用户与 usertest001 用户的表导出


将数据库中的表 tablezf001导出

3.IMP 导入命令概述

数据导出后,可以使 Import 工具将导出的文件再导入到数据库中。Import 工具能够读取由 Export 工具生成的二进制导出转储文件并执行文件中的命令,能够从导出转储文件中导入部分或全部数据
导入操作可以交互进行也可通过命令进行。导入操作选项同导出的操作一样


导入表

导入自己的表


导入表到其他用户
要求该用户具有 DBA 的权限,或是imp_full_database,在执行如下语句之前必须先执行 grant dba to userzf001 的授权语句


导入方案

导入方案是指使用 Import 工具将文件中的对象和数据导入到一个或是多个方案中。如果要导入其他方案,要求该用户具有 DBA 的权限,或者imp_full_database


导入自身的方案


导入其他方案


导入数据库


五、使用OEM导出/导入数据

1.备份准备

使用 OEM 进行备份之前,需要建立相关的操作系统备份用户,其可以是已经存在的用户或是新建一个用户。本实验中将新建一个用于Oracle 备份的操作系统用户


在 操 作 系 统 中 新 建 一 个 用 户 , 其 用 户 名 为 :oraclezf001,密码为:123456


编 辑 oraclezf001 用 户 的 属 性 , 将 其 隶 属 于
Admimstraors 和 ora_dba 组




在开始运行处录入 secpol.msc 进入“本地策略”→“用户权限分配”中,将“作为批处理作业登录”权限添加给 oraclezf001 用户




通过以上设置,我们已经建立好了 OEM 备份使用的操作系统用户,并具有相关权限

2.使用 OEM 导出数据

OEM 在进行数据逻辑备份时,实际使用 Oracle 11g 的 EXPDP 程序在服务器端执行备份


创建测试环境步骤


以 SYSTEM 用户的普通身份登录 OEM


单击“数据移动”页面“移动行数据”项下的“导出到导出文件”链接


在“导出:导出类型”页面选择“方案”选项,输入主机 身 份 证 明 项 下 的 用 户 名 及 口 令


在“导出:方案”页而的初始状态下,没有默认的方案被选择,单击“添加”按钮


在“导出:添加方案”页面选择方案的名称,单击“开
始“按钮,在搜索结果栏中显示相应的方案名,选择需要导出的方案笔 USERZF001,单击“选择”按钮


在“导出:选项”页面单击“显示高级选项”链接,将显示导出的内容、闪回、查询等,单出“下一步”按钮


点击“创建目录对象”,输入目录名称,例如“ORABACKDIR”(建议使用大写),在路径中输入存储备份文件的文件夹地址“G:\oracle\bak”,可以点击“测试文件系统”进行测试,注意文件夹地址必须在服务器上已经存在


:在目录对象下拉菜单中选择刚刚创建的“ORABACKDIR”


本页指定存储文件的存放位置,在页面中的目录对象
下拉菜单中选择刚刚创建的“ORABACKDIR”,文件名输入相关值,建议添加“%U”通配符,这样当一个存储文件写满时会自动创建新的文件。在最大文件大小中指定最大文件大小,此处输入 2048,表明每个存储文件最大为 2GB。单击“下一步”按钮继续


在页面中输入作业名称,这里输入“FIRSTEXP”(建议使用大写),可以在“说明”中添加相关的作业说明,如“导出USERTEST001 的数据”。指定启动时间,这里选择“立即”。单击“下一步”按钮继续


在“导出:复查”页面中,显示了作业的导出类型、统计信息类型、并行度、要导出的文件、日志文件及作业调度,单击“提交作业”按钮


“ 复查”页面中检查无误后点击“提交作业”。如果提
交成功,页而将转向“作业活动”的“确认”页面。在页面的列表中可以看到“FIRSTEXP”的状态为“正在运行”


在等待一定时间后,显示成功创建作业的信息,可以
点击页面中的“开始”对页面进行刷新,当列表中为空时,表示导出已经成功结朿(因为第一次作业提交有问题,所以又创建了一个名称为SECONDEXP)

3.使用 OEM 导入数据

使用 OEM 导入方式导入上一任务中备份的表
先将 USERTEST001 用户删除


以 SYSTEM 用户的普通身份登录 OEM,单击“数据移动”页面“移动数据”项下的“从导出文件导入”,打开“导入:文件”页面,选择目录对象为 ORABACKDIR,选择导入类型为“方案”,输入主机身份证明的用户名及口令,单击“继续”按钮


在导入读取成功页面中显示“已成功读取导入文件”后单击“添加”按钮


单击“添加”按钮,在弹出页面选择方案USERZF001,单击“选择”按钮


在“导入:方案”页面中单击“下一步”按钮


在新页面中可以指定“重新映射方案”“重新映射表空间”“重新映射数据文件”时,使用默认设置,不进行修改。单击“下一步”继续


选择或创建生成日志文件的目录,本例中选择“orabackdir2”。在高级选项中可以设置导入的具体方式,这里我们使用默认设置。单击“下一步”继续


在“导入:调度”页面的“作业名称”栏设定作业名称,如输入 firstimp,单击“下一步”按钮


在“导入:复查”页面显示调度信息,复查页面检查无误,单击“提交作业”按钮


在“作业活动”页面中显示“已成功创建作业”


使用“USERZF001”用户登录数据库查看导入数据,可以确认数据已经导入

Oracle数据库备份与恢复相关推荐

  1. Oracle数据库备份与恢复的三种方法

    Oracle数据库备份与恢复的三种方法 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份.导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/ ...

  2. 深入剖析ORACLE数据库备份与恢复的原理

    一.ORACLE数据库备份与恢复方法 1,用户管理的ORACLE数据库备份与恢复 用户管理的ORACLE数据库备份与恢复是指使用SQL 语句命令结合OS命令备份和恢复DB的方法(也被称为OS 备份与恢 ...

  3. Oracle 数据库备份与恢复

    Oracle 数据库备份与恢复 一.Oracle 数据库备份 exp方式导出 (cmd命令行操作) 相关参数项如下: 关键字 说明 默认 USERID 用户名/口令 FULL 导出整个文件 (N) B ...

  4. oracle数据磊导入数据,Oracle数据库备份与恢复操作手册(Linux).doc

    Oracle数据库备份与恢复操作手册(Linux) 矣秧嗜卡丝之褥吐鸟萄锁直贪错充蓄率辙辐笑嘴沃槐范必丧蚀征妻聪颊作漠税舀纷边棚镀佑煮闲宠斗谩骋芯腿译伯茫菌昆剥诗伟巫氖瓮隅炙笋综捂袁置芥铲娘长伪颇锅畏 ...

  5. oracle数据库财务恢复,Oracle数据库备份与恢复特性浅谈【常用财务软件使用教程】...

    Oracle数据库备份与恢复特性浅谈 Oracle数据库备份与恢复有三种不同的方式,这里将简单介绍这些方式的使用策略已经Oracle数据库的用户角色管理策略. Oracle数据库备份与恢复是每个Ora ...

  6. Linux操作文档——Oracle数据库备份与恢复

    Oracle数据库备份与恢复 文章目录 Oracle数据库备份与恢复 一.使用RMAN工具 1.创建恢复目录 2.注册目标数据库到恢复目录 3.备份与恢复 二.使用数据泵技术实现逻辑备份 1.创建-个 ...

  7. oracle数据库cp命令,Oracle数据库备份与恢复(I)

    1. exp/imp(导出与导入) 1.1 基本命令: $exphelp=y $imphelp=y 2.三种工作方式 (1)交互方式: $exp //然后按照提示输入所需要的参数 (2)命令行方式: ...

  8. oracle数据库 备份与恢复笔记 rman

    oracle用户执行 查看数据库版本: sqlplus -version SQL执行 查询归档状态: archive log list(No Archive Mode为非归档模式) 查询服务器是否开启 ...

  9. Oracle数据库备份与恢复1\Oracle数据库备份与恢复(1)exp和imp 之三

    1.1  基本命令 1.  获取帮助 $ exp help=y $ imp help=y 2.  三种工作方式 (1)交互式方式 $ exp        //  然后按提示输入所需要的参数 (2)命 ...

  10. oracle备份与恢复 exp,Oracle数据库备份与恢复之一:exp/imp(导出与导入装库与卸库)...

    1.1 基本命令 1. 获取帮助 $ exp help=y $ imp help=y 2. 三种工作方式 (1)交互式方式 $ exp // 然后按提示输入所需要的参数 (2)命令行方式 $ exp ...

最新文章

  1. 【mybatis】mybatis多表联查,存在一对多关系的,实体中使用List作为字段接收查询结果的写法...
  2. 将传统 WPF 程序迁移到 DotNetCore 3.0
  3. 示例:用户登录(python版)
  4. 什么是Vue?为什么要学习Vue?如何使用Vue?
  5. windows--reg--向注册表中写入一些数据
  6. 重现Oracle数据库Hang住的情况
  7. 转]分享一个可以下载全球影像的网站(包括历史影像)
  8. _beginthread 和 CreateThread 区别
  9. 硬盘测试工具 CrystalDiskMark 8.0.0 正式版
  10. kernel ramdump分析--如何启动crash
  11. RT-Thread : STM32 系列外设驱动添加指南
  12. 打外星生物的塔防java_《异形防御者》测评:外星人也玩塔防游戏
  13. uni-app 退出app操作
  14. 字节面试杂谈——操作系统
  15. win10右键没有新建笔记本
  16. 小程序替换二维码logo并添加文字
  17. 基层管理之正负向激励
  18. Win11 中【使用我的登录信息在更新后自动完成设置】以 「登录前自启」
  19. android land,Mirror Land
  20. 我,阿里的程序员,工作5年,揭露阿里员工的真实收入和工作经历

热门文章

  1. ie浏览器当前的安全设置使计算机面临风险,IE安全设置
  2. winform直接控制云台_Snoppa Vmate掌上防抖云台相机深度评测:日常视频轻松直出...
  3. 酒桌扑克娱乐喝酒小游戏微信小程序源码下载多娱乐功能支持流量主
  4. 场地预约小程序开发及前后端源码
  5. Lifo管理系统(转载)
  6. 对HashMap进行排序处理
  7. python职业发展规划-少走弯路,一个老程序猿谈PHP职业发展规划
  8. NRF24L01无线通信模块
  9. 黄杏元《地理信息系统概论》考研复习考点精讲(八)
  10. python 爬取 全网代理 IP 网站 + 破解端口加密混淆