设为首页 收藏本站
查看: 1146|回复: 0

[经验分享] OCP认证考试指南(19):备份Oracle数据库

[复制链接]

尚未签到

发表于 2015-11-8 14:25:51 | 显示全部楼层 |阅读模式
  1、备份工具
  直接使用操作系统实用程序copy、cp就可以进行备份操作。但,Oracle强烈建议使用Recovery Manager(恢复管理器,简写RMAN)。
  RMAN能够备份数据文件、控制文件、归档日志以及服务器参数文件(spfile)。备份可以被写入磁盘或磁带。
  2、概念与术语
  2.1、全部备份与部分备份
  全部备份(whole backup)是所有数据文件、控制文件以及服务器参数文件的备份。控制文件的所有复用副本都是完全相同的,因此只需要备份其中一个副本。要注意的是,并不需要备份联机重做日志!联机重做日志文件通过复用与可选的归档受到保护。还有,只有用于永久表空间的数据才会被备份。RMAN不能备份临时表空间文件,这些临时文件也不能被置入用于操作系统备份的备份模式。
  部分备份(partial backup)包括了一个或多个数据文件以及控制文件。部分备份与数据库的剩余部分肯定不会同步。部分备份只是特定时刻数据库某部分的副本。如果有必要从部分备份中还原一个文件,那么这个文件在能够使用之前必须与数据库的其余部分同步,这意味着需要通过应用归档和联机重做日志文件中的变化使恢复的文件是最新的。
  只有在数据库位于archivelog模式时,部分备份才有效。
  2.2、完整备份与增量备份
  完整备份(full backup)是一个或多个数据文件的一个完整副本。这个副本可以是全部备份,也可以是部分备份。
增量备份(incremental backup)只是数据文件的某些数据块的一个备份,这个备份只包含从最近一次完整备份完成以来被修改或添加的数据块。
  无论数据库位于archivelog模式或noarchivelog模式中,增量备份都可以在数据库打开或关闭时进行。不过,只有RMAN才能进行增量备份。
  2.3、脱机备份与联机备份
  脱机备份(offline backup)是在数据库关闭时生成的备份。
联机备份(online backup)是在数据库正被使用时生成的备份。
  联机备份可以是全部备份,也可以是部分备份,并且能够通过使用RMAN或操作系统命令来完成。不过,联机备份只有在数据库位于archivelog模式中才能进行。在联机备份期间,因为存在额外的磁盘活动,所以数据库性能会退化。
  2.4、映像副本与备份集
  映像副本(image copy)是某个文件的备份,并且每个字节都与源文件相同。
备份集(backup set)是由RMAN生成的一种专有结构。这是一种由一个或多个被称为片(piece)的物理文件所组成的逻辑结构。备份片包含了一个或多个数据库文件,这些数据库文件可以是数据文件、控制文件或归档日志文件。3种类型文件可以被任意组合在一个备份集内。只有RMAN才能译解备份集格式。
  映像副本只能在磁盘上生成;备份集则可以在磁盘或磁带上生成。
  数据文件、控制文件与归档日志的映像副本和备份集都可以是联机或脱机备份、全部或部分备份以及完整或增量备份,并且在archivelog模式和noarchivelog模式中都可以进行。不过,备份集只能通过RMAN生成或还原。

?[Copy to clipboard]View Code SQL

$ mkdir /u02/oradata/backup
$ rman target system/oracle
Recovery Manager: Release 10.2.0.1.0 -
Production on Mon Oct 13 14:56:12 2008
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
connected to target database: ORA (DBID=1283726968)
RMAN> backup as backupset datafile
2> '/u01/db/oracle/oradata/ora/users01.dbf'
3> format '/u02/oradata/backup/rman_backup_users01.dbf';
Starting backup at 13-OCT-08
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=147 devtype=DISK
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00004 name=/u01/db/oracle/oradata/ora/users01.dbf
channel ORA_DISK_1: starting piece 1 at 13-OCT-08
channel ORA_DISK_1: finished piece 1 at 13-OCT-08
piece handle=/u02/oradata/backup/rman_backup_users01.dbf
tag=TAG20081013T145636 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 13-OCT-08
  3、RMAN的设置

  3.1、设备的设置

  用于磁盘备份的选项包括:并行度,目标目录,是生成备份集还是生成映像副本。并行度默认为1,这意味着RMAN进程只会产生一个被称为通道(channel)的服务器进程来实际创建备份。选择并行度时,需要考虑CPU数与磁盘子系统的性质。
  用于磁带备份的选项指定了磁带设备的数据、磁带库专用的选项以及是否压缩备份表。指定磁带设备的数量相当于为磁盘备份指定并行度。
  3.2、备份集的设置

  第一个选项Maximum Backup Piece Size,默认情况下,备份片的大小没有限制:整个备份集被物理存储在一个片或文件中。因为RMAN并不备份未用的数据块,所以在知道备份之前无法知道备份集的大小。
  3.3、策略的设置

  第一个选项是确定生成备份时是否备份控制文件和服务器参数文件。备份上述两种文件通常被认为是一种优秀的策略。通过启用这种自动备份性能,可以确信始终具有上述两种重要文件的最新副本。默认的副本目的地由DB_RECOVERY_FILE_DEST参数决定。
  接下来选项为是否通过排除最近一次备份以来未发生变化的文件来最优化备份。
  此外还存在是否为加快增量备份启用数据块变化跟踪的选项。
  Tablespace Excluded From Whole Database Backup部分允许指定完整备份操作期间不需要备份的一个或多个表空间。
  最后一部分是Retention Policy。根据备份保留策略,RMAN可以删除被认为不再需要的备份。
  4、调度自动的备份
  运行数据库的一个完整备份例子,使用EM执行针对数据库的全面的、完整的联机备份。


  选中Whole Database,输入操作系统用户以及相应口令,把下面的勾打上,点击NEXT按钮。



  以上全都直接NEXT,都使用默认设置。

  启动备份操作。

  查看作业的运行。

  通过刷新可以看到备份过程。
  5、控制文件备份
  由于控制文件十分重要,因此还应当采用另一种定期执行的备份选项。用于跟踪的备份会使用CREATE CONTROLFILE命令生成一个控制文件创建脚本。CREATE CONTROLFILE命令的语法与CREATE DATABASE类似。
  SQL*Plus中执行BACKUP CONTROLFILE TO TRACE命令可以在USER_DUMP_DEST参数指定的目录中创建一个文件。应当重命名为一个有意义的名称后将其复制安全的位置。只要添加或重命名任何数据文件或联机重做日志文件、创建或删除表空间,都应当备份控制文件。

?[Copy to clipboard]View Code SQL

SQL> alter database backup controlfile to trace;
Database altered.
SQL> show parameter user_dump_dest;
NAME                       TYPE        VALUE
-------------------------- ----------- ------------------------------
user_dump_dest             string      /u01/db/oracle/admin/ora/udump
SQL> exit
$ cd /u01/db/oracle/admin/ora/udump
$ ls -ltr
  最后一个文件,就是我们才备份的最新的文件。用vi打开,可以看到中间有一段很重要的部分。

?[Copy to clipboard]View Code SQL

CREATE CONTROLFILE REUSE DATABASE "ORA" NORESETLOGS  ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 (
'/u01/db/oracle/oradata/ora/redo01.log',
'/u01/db/oracle/oradata/ora/redo01b.log'
) SIZE 50M,
GROUP 2 (
'/u01/db/oracle/oradata/ora/redo02.log',
'/u01/db/oracle/oradata/ora/redo02b.log'
) SIZE 50M,
GROUP 3 (
'/u01/db/oracle/oradata/ora/redo03.log',
'/u01/db/oracle/oradata/ora/redo03b.log'
) SIZE 50M
-- STANDBY LOGFILE
DATAFILE
'/u01/db/oracle/oradata/ora/system01.dbf',
'/u01/db/oracle/oradata/ora/undotbs01.dbf',
'/u01/db/oracle/oradata/ora/sysaux01.dbf',
'/u01/db/oracle/oradata/ora/users01.dbf',
'/ora02/oradata/ocp/mydemo.dbf',
'/ora02/oradata/ocp/ats.dbf',
'/ora02/oradata/ocp/bts.dbf',
'/ora02/oradata/ocp/cts.dbf'
CHARACTER SET WE8ISO8859P1
;
  6、管理RMAN备份


  上图概述了4个备份集的信息,这4个备份集的Key分别是1、2、3、4。备份集2和3一同构成了数据文件、控制文件以及服务器参数文件的完整备份。
  Catalog Additional Files按钮会将使用操作系统实用程序所生成的备份告知RMAN。
Crosscheck All按钮会指示RMAN查看所创建的备份集与映像副本实际上是否仍然可用。
Delete All Expired按钮能够删除对交叉检查发现丢失的备份的所有引用。
Delete All Obsolete按钮可以删除遵循保留策略但不再需要的所有备份。
  7、默认的备份目的地
闪回恢复区基于磁盘的存储结构。闪回恢复区被用作存储与恢复相关的数据的默认位置,包括:控制文件和联机重做日志文件的复用副本;归档日志目的地;RMAN备份集与映像副本;闪回日志。闪回恢复区受DB_RECOVERY_FILE_DEST和DB_RECOVERY_FILE_SIZE参数的控制。两个参数是静态的。
  一旦写至闪回恢复区的大量数据到达所指定的大小,就可能会出现问题。在archivelog模式中,Oracle不允许重写尚未被归档的联机日志文件。

?[Copy to clipboard]View Code SQL

SQL> select * from v$recovery_file_dest;
NAME
-------------------------------------------------------------------
SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
----------- ---------- ----------------- ---------------
/u01/db/oracle/flash_recovery_area
2147483648  440984064                 0               3
  说明了闪回恢复区及其大小的最大值为2G,使用了400M。闪回恢复区中存在3个文件。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-136651-1-1.html 上篇帖子: 设计模式六大原则之--开闭原则(OCP) 下篇帖子: OCP认证考试指南(3):创建Oracle数据库(1)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表