SlideShare a Scribd company logo
1 of 20
Configure Database
For Backup & Recovery
Overview
• 作为一个DBA, 最重要的职责之一就是保证数据库
  不会丢失数据, oracle适当配置的情况下可以确保
  这一点. 包含以下内容:
 –   确定oracle数据库能承受的失败
 –   实例恢复调优(Instance Recovery Tuning)
 –   检查点, 重做日志文件以及归档重做日志文件
 –   配置数据库归档日志模式
 –   配置多个归档日志存储目录以提供可用性
 –   理解和配置闪回区(flash recovery area)
 –   使用闪回区
MTBF & MTTR & Data Loss
• 关于数据库备份与恢复有下面的两个术语:
 – MTBF
 Max Time Between Failure, 该术语表示数据库故障的发生
 频率, 这个值应该尽可能的大. oracle提供了两种方式实
 现数据库的100%可用性: RAC和高级流(Streams).
 – MTTR
 Max Time to Recover, 此术语表示从数据库故障恢复的时
 间, 应当尽可能地缩小这个值.
• Data Loss
  除了提高MTBF降低MTTR, 数据库管理的另一个目
  标是预防数据丢失. Oracle数据库提供给了Data
  Guard选项实现数据的零丢失率.
Categories of Failures
• 数据库故障可以分为以下类型
 – 语句失败(statement failure)
 SQL语句在执行时有可能会失败, 可分为以下类型:
  • 不合法的数据, 比如违反数据库约束条件;
  • 逻辑错误, 比如死锁;
  • 与数据库存储相关的错误, 比如表空间无法扩展导致数据不
    能被插入;
  • 权限错误, 比如没有表的insert权限.
 – 用户进程失败(user process failure)
 很多原因会导致用户进程失败, 比如用户异常退出/终端
 重启/或者程序错误等. 不管因为什么原因导致用户进程
 失败, PMON进程会负责服务端进程和内存的清理.
Categories of Failures
– 网络错误(network failure)
网络错误有可能发生在数据库监听器, 网络接口, 以
及路由. 理想情况下应当为数据库所在的服务器配置
至少两个网卡并分别创建数据库监听器.
– 用户错误(user errors)
常见的用户错误是某些误操作, 比如执行不带where条件的
update或者delete语句并提交.
Tip: 执行DDL语句会导致当前会话被提交.
– 介质故障(Media Failure)
介质故障是所有数据库故障中最为棘手的, 通常指的是操作
系统磁盘硬件故障或者误删除了数据库文件(比如使用rm命
令). 为了预防介质故障, 需要:
 • 对控制文件, 在线重做日志文件, 归档日志文件做多个拷贝;
 • 备份控制文件, 数据文件以及归档日志文件
Categories of Failures
– 实例故障(instance failure)
实例故障指的是实例的异常关闭, 常被描述为实例崩
溃(crash), 出现的原因可能是断点/重启服务器/或者
一些严重的硬件异常. 另外shutdown abort命令也会
导致实例故障.
当实例故障发生时, 某些已提交的事务可能没有写入
数据文件, 而另外一些未提交事务则可能被写入, 这
导致数据库处在一种不一致的(inconsistent)状态.
实例故障不会导致数据库不可用, 系统会自动进行实
例恢复操作, 重做日志文件是其中的关键.
Instance Recovery
• 当数据库存在不一致性(inconsistency)时, 系统将会自动检测到并进
  行实例恢复. 实例恢复的本质是通过重做日志文件, 将数据缓冲区恢
  复到实例崩溃之前的状态. 实例恢复完全是自动进行的.
• Mechanics
  实例恢复分为以下步骤:
  – roll forward
  这一步读取并执行重做日志, 将实例崩溃时未写入磁盘的内存块在内存中
  进行重建. 这些内存块包括数据块(data block)和回滚块(undo block).
  Tip: 在此操作之后, 虽然数据库仍然处在不一致的状态, 但此时应当允许
       用户登录.
  – rollback
  此时数据库(文件)中可能包含未提交的事务, 系统在此阶段将执行rollback
  操作以回滚这些事务.
  Tip: 实例恢复由startup命令在启动数据库时执行, 由SMON进程进行.
Instance Recovery
               - Tuning
• 虽然实例恢复机制保证了数据库不会因为崩溃而不可用, 但
  是实例恢复有可能会花费大量的时间(可以查看系统告警日
  志文件), 这取决于在实例恢复时重做日志的读取量, 以及执
  行这些重做操作时对数据文件的读写量. 这两者均可以使用
  检查点(checkpoint)进行控制.
• 检查点保证了在该检查点发生时数据库处在一致的状态, 实
  例恢复只需要读取并执行从最近检查点开始的重做日志. 因
  此检查点越新, 那么实例恢复将会越快, 但是这也带来了一个
  问题就是需要执行更多的磁盘IO从而导致系统性能的下降.
• FAST_START_MTTR_TARGET
  此参数用于设置实例恢复的目标时间(单位: 秒), 默认值为0.
  在默认设置下DBWn遵循”尽量执行写操作, 每次尽量少写”的
  原则. 如果设置了非0值, 那么系统将根据该值设置DBWn进程
  的调用频率. 设置该参数的另一个效果是, 如果操作系统有额
  外的空闲资源 (IO/cpu etc.), 那么会尽量利用这些资源更积极
  推动检查点操作(checkpoint auto-turing).
MTTR Advisor
• oracle提供了系统当前进行实例恢复的相关信
  息, 这些信息可以通过Database Control(Advisor
  Central)或者通过v$instance_recovery视图进行
  查询, 该视图比较重要的列如下:
Checkpoint
• 如前所述, 检查点的位置决定了实例恢复时读取重做日志的起始位置. 检查
  点操作分为两种类型:
 – full
 此类型的检查点操作会将所有的脏数据块写入数据库, 11g版本中在两种情况下会
 发生此种类型的检查点操作:
    • 手动检查点, 执行命令alter system checkpoint;
    • shutdown normal|immediate|transactional
 – partial
 在执行某些动作时会导致部分检查点操作, 这些动作包括:
Database Recoverability
                - Controlfile
• 控制文件对于oracle数据库至关重要. 可以通过多路复用
  (multiplex)或者备份(backup)的方式保护控制文件不被丢失.
  Tip: 采用多路复用的方式时, 控制文件最多可以有8份拷贝.
  Tip: 在理想情况下控制文件应当至少保存两份拷贝, 并且分
  别保存在不同的磁盘上面.
• 使用如下步骤实现控制文件的多路复用:
  – 关闭数据库
  – 使用操作系统命令将控制文件移动到指定的位置
  – 修改control_files实例参数以指向这些位置, 如果是pfile则直接修改文
    件, 如果是spfile这将数据库启动至nomount模式执行alter system操
    作, 示例:
    alter system set control_files="/path1/to/file", "/path2/to/file"
      scope=spfile;
  – 关闭(如果需要)并重启数据库.
Database Recoverability
                - Online redo log files
•   丢失当前的重做日志文件组可能会导致数据丢失, 因为实例恢复依赖于这些重
    做日志. 可以使用多路复用的方式保护重做日志文件, 使用至少两个日志组, 每
    个日志组设置至少两个成员(multiplex), 并将每个成员分别放在不同的磁盘上
    面.
•   与控制文件不同的是, 重做日志组的成员丢失或者损坏不会导致数据库崩溃,
    提前是日志组中还有其他的成员可用. 通过v$log和v$logfile视图查看重做日志
    组的相关信息. 示例:
      select group#, sequence#, members, status from v$log;



    sequence# 日志组处在log switch的序号
    status    CURRENT表示当前正在使用的日志组, 如果状态为ACTIVE则表
          示该日志组会被用于实例恢复. INACTIVE表示日志组暂时不被       使
    用.
•   如果使用DBCA创建的数据库, 那么默认会创建3个重做日志组, 但每个组只有一
    个成员, 可以在数据库打开的情况下添加或者删除重做日志组, 修改日志组的
    成员. 示例添加一个日志组成员:
      alter database add logfile member '/path/to/logfile' to group 1;
Database Recoverability
          - Archivelog Mode
• oracle的实例恢复机制确保数据库不会因为崩溃而丢失数据, 如需要在介质
  故障的情况下仍保持数据的完整性, 则需要将数据库设置为归档模式
  (archivelog). 在归档模式下, 每次进行重做日志组的切换时会将重做日志拷
  贝至相应的位置, 这样就记录了数据库所有的变更历史.
• Archiver process
  在归档模式下归档进程ARCn被启动, 默认情况下会启动四个归档进程分别
  为ARC0, ARC1...
• Archive log destination
  通过数据库参数log_archive_dest_n指定归档日志的存放目录, 最多可以指
  定10个目录. 这里采用了多路复用机制, 每个目录下面存储的归档日志内容
  是相同的.
• Archive log file name
  通过数据库参数log_archive_format指定归档日志文件的名称, 可以使用如
  下占位符
  %d              数据库标识符
  %t              线程号
  %r              incarnation number
  %s              日志切换序号
Database Recoverability
                     - Archivelog Mode
•   默认情况下归档模式不被打开, 可以在数据库处在mount阶段时设置归档模式(SYSDBA登录), 需要执
    行如下动作:
    –   设置归档日志目录
        alter system set log_archive_dest_1='location=/opt/oracle/archive1/' scope=spfile;
        alter system set log_archive_dest_2='location=/opt/oracle/archive2/' scope=spfile;
        最多可以设置10个目录, 并保证至少一个在本地磁盘. 每个归档目录可以指定为optional或者
        mandatory, 这与另外一个参数log_archive_min_succeed_dest相关, 示例:
        log_archive_dest_1='location=/u02/orcl/arch1/ mandatory'
        log_archive_dest_2='location=/u03/orcl/arch2/ optional'
        log_archive_dest_3='location=/u03/orcl/arch3/ optional'
        log_archive_min_succeed_dest=2
    –   设置归档日志文件名
        alter system set log_archive_format='arch_%d_%t_%r_%s.log' scope=spfile;
    –   关闭数据库并将数据库启动至mount节点
        shutdown immediate;
        startup mount;
    –   设置归档模式并打开数据库
        alter database archivelog;
        alter database open;
•   可以通过v$database, v$instance等性能视图查看归档模式的相关信息, 比如:
        select log_mode from v$database;
        select archiver from v$instance;
    手动切换日志, 并查看归档文件:
          alter system switch logfile;
          select name from v$archived_log;
Flash Recovery Area
              - Overview
• 闪回区是所有与数据库还原和恢复相关文件的默认存储位
  置, 闪回区可以使文件系统目录也可以是ASM磁盘组. 闪回
  区可以简化与数据库还原和恢复操作相关文件的管理, 默认
  情况下闪回区被禁用, 如果使用DBCA创建数据库则会自动
  启用闪回区.
• Recovery Files
  闪回区可以存储以下文件:
 – Contolfile multiplexed copies
 如果没有指定CONTROL_FILES和DB_CREATE_FILE_DEST参
 数, 会自动在闪回区创建控制文件的拷贝.
 – Online redo log file multiplexed copies
 如果没有指定DB_CREATE_ONLINE_LOG_DEST_N参数, 并且在
 创建数据库(create database)时没有指定重做日志组成员, 将
 会在闪回区创建重做日志文件.
 Tip: 以上两类文件在闪回区会被永久存储, 即不会被自动删除.
Flash Recovery Area
             - Overview
• Recovery Files
  除了闪回日志文件之外, 这些闪回区文件被称为是临时
  的, 它们可以被重置到其它的位置或者被RMAN删除. 可
  以定义相应的规则如果清除这些文件.
 – Archive redo log files
 如果设置归档模式时, 没有指定任何的LOG_ARCHIVE_DEST_n
 参数, 则会自动设置参数LOG_ARCHIVE_DEST_10执行闪回区.
 – RMAN backups
 – RMAN copies
 – CONTROLFILE auto-backups
 – Flashback log files
Flash Recovery Area
             - Configure
• 使用如下两个参数对闪回区进行配置:
 – DB_RECOVERY_FILE_DEST
 指定闪回区的位置, 可以使文件系统目录或者ASM磁盘组.
 – DB_RECOVERY_FILE_DEST_SIZE
  此参数必须先于上一参数进行设置, 用于指定闪回区的
  大小.
• 通过以下视图的IS_RECOVERY_DEST_FILE字段判断文件
  是否为闪回区文件, 这些视图有:
  v$controlfile
  v$logfile
  v$archived_log
  v$backup_piece
Flash Recovery Area
                         - Space Usage
• RMAN用于对闪回区的空间进行管理, 当闪回区空
  间被使用完时, 可以根据规则删除相应的文件拷
  贝和备份. 另外数据库提供了相应的机制实现对
  闪回区的备份.
• 通过视图v$flash_recovery_area_usage查看闪回区
  空间的使用情况, 该视图如下:
 SQL> desc v$flash_recovery_area_usage
 Name                                      Null? Type
 ----------------------------------------- -------- ----------------------------
 FILE_TYPE                                             VARCHAR2(20)
 PERCENT_SPACE_USED                                    NUMBER
 PERCENT_SPACE_RECLAIMABLE                             NUMBER
 NUMBER_OF_FILES                                       NUMBER
 第二, 三列根据当前使用的空间和剩余空间除以参数
 DB_RECOVERY_FILE_DEST_SIZE得到.
Flash Recovery Area
          - Database Control
• Database Control提供了相关的链接用于对闪回
  区进行查询和设置, 通过路径: Home >
  Availability > Recovery Settings导航到相应的页
  面如下:
END

More Related Content

What's hot

Oracle管理藝術第1章 在Linux作業體統安裝Oracle 11g
Oracle管理藝術第1章 在Linux作業體統安裝Oracle 11gOracle管理藝術第1章 在Linux作業體統安裝Oracle 11g
Oracle管理藝術第1章 在Linux作業體統安裝Oracle 11gChien Chung Shen
 
Oracle使用者安全設定
Oracle使用者安全設定Oracle使用者安全設定
Oracle使用者安全設定Chien Chung Shen
 
TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例maclean liu
 
【Ask maclean技术分享】oracle dba技能列表 z
【Ask maclean技术分享】oracle dba技能列表 z【Ask maclean技术分享】oracle dba技能列表 z
【Ask maclean技术分享】oracle dba技能列表 zmaclean liu
 
dbdao.com 汪伟华 my-sql-replication复制高可用配置方案
dbdao.com 汪伟华 my-sql-replication复制高可用配置方案dbdao.com 汪伟华 my-sql-replication复制高可用配置方案
dbdao.com 汪伟华 my-sql-replication复制高可用配置方案maclean liu
 
A.oracle 查询结果的缓存问题
A.oracle 查询结果的缓存问题A.oracle 查询结果的缓存问题
A.oracle 查询结果的缓存问题WASecurity
 
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略maclean liu
 
配置Oracle 10g 双向流复制
配置Oracle 10g 双向流复制配置Oracle 10g 双向流复制
配置Oracle 10g 双向流复制maclean liu
 
诗檀软件 Oracle数据块损坏知识
诗檀软件 Oracle数据块损坏知识诗檀软件 Oracle数据块损坏知识
诗檀软件 Oracle数据块损坏知识maclean liu
 
5, OCP - oracle storage
5, OCP - oracle storage5, OCP - oracle storage
5, OCP - oracle storageted-xu
 
2, OCP - installing and creating a database
2, OCP - installing and creating a database2, OCP - installing and creating a database
2, OCP - installing and creating a databaseted-xu
 
1, OCP - architecture intro
1, OCP - architecture intro1, OCP - architecture intro
1, OCP - architecture introted-xu
 
Oracle Data Buffer Cache
Oracle Data Buffer CacheOracle Data Buffer Cache
Oracle Data Buffer CacheSky Jian
 
Oracle试题Exam Adminv1.1
Oracle试题Exam Adminv1.1Oracle试题Exam Adminv1.1
Oracle试题Exam Adminv1.1Zianed Hou
 
Itpub电子杂志(第五期)
Itpub电子杂志(第五期)Itpub电子杂志(第五期)
Itpub电子杂志(第五期)yiditushe
 
IoTDB OptimizeAndCaseStudy
IoTDB OptimizeAndCaseStudyIoTDB OptimizeAndCaseStudy
IoTDB OptimizeAndCaseStudyJialinQiao
 

What's hot (20)

Oracle 資料庫建立
Oracle 資料庫建立Oracle 資料庫建立
Oracle 資料庫建立
 
Oracle管理藝術第1章 在Linux作業體統安裝Oracle 11g
Oracle管理藝術第1章 在Linux作業體統安裝Oracle 11gOracle管理藝術第1章 在Linux作業體統安裝Oracle 11g
Oracle管理藝術第1章 在Linux作業體統安裝Oracle 11g
 
Oracle SGA 介紹
Oracle SGA 介紹Oracle SGA 介紹
Oracle SGA 介紹
 
Oracle使用者安全設定
Oracle使用者安全設定Oracle使用者安全設定
Oracle使用者安全設定
 
TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例
 
Oracle Instance 介紹
Oracle Instance 介紹Oracle Instance 介紹
Oracle Instance 介紹
 
【Ask maclean技术分享】oracle dba技能列表 z
【Ask maclean技术分享】oracle dba技能列表 z【Ask maclean技术分享】oracle dba技能列表 z
【Ask maclean技术分享】oracle dba技能列表 z
 
dbdao.com 汪伟华 my-sql-replication复制高可用配置方案
dbdao.com 汪伟华 my-sql-replication复制高可用配置方案dbdao.com 汪伟华 my-sql-replication复制高可用配置方案
dbdao.com 汪伟华 my-sql-replication复制高可用配置方案
 
A.oracle 查询结果的缓存问题
A.oracle 查询结果的缓存问题A.oracle 查询结果的缓存问题
A.oracle 查询结果的缓存问题
 
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
 
配置Oracle 10g 双向流复制
配置Oracle 10g 双向流复制配置Oracle 10g 双向流复制
配置Oracle 10g 双向流复制
 
诗檀软件 Oracle数据块损坏知识
诗檀软件 Oracle数据块损坏知识诗檀软件 Oracle数据块损坏知识
诗檀软件 Oracle数据块损坏知识
 
5, OCP - oracle storage
5, OCP - oracle storage5, OCP - oracle storage
5, OCP - oracle storage
 
2, OCP - installing and creating a database
2, OCP - installing and creating a database2, OCP - installing and creating a database
2, OCP - installing and creating a database
 
1, OCP - architecture intro
1, OCP - architecture intro1, OCP - architecture intro
1, OCP - architecture intro
 
Oracle 索引介紹
Oracle 索引介紹Oracle 索引介紹
Oracle 索引介紹
 
Oracle Data Buffer Cache
Oracle Data Buffer CacheOracle Data Buffer Cache
Oracle Data Buffer Cache
 
Oracle试题Exam Adminv1.1
Oracle试题Exam Adminv1.1Oracle试题Exam Adminv1.1
Oracle试题Exam Adminv1.1
 
Itpub电子杂志(第五期)
Itpub电子杂志(第五期)Itpub电子杂志(第五期)
Itpub电子杂志(第五期)
 
IoTDB OptimizeAndCaseStudy
IoTDB OptimizeAndCaseStudyIoTDB OptimizeAndCaseStudy
IoTDB OptimizeAndCaseStudy
 

Viewers also liked

CIO Event - Is the IT department dead?
CIO Event - Is the IT department dead?CIO Event - Is the IT department dead?
CIO Event - Is the IT department dead?Global Business Intel
 
6, OCP - oracle security
6, OCP - oracle security6, OCP - oracle security
6, OCP - oracle securityted-xu
 
Untitled Presentation
Untitled PresentationUntitled Presentation
Untitled Presentationromix farah
 
Caso ACA-Comunicación e Imagen-2007
Caso ACA-Comunicación e Imagen-2007Caso ACA-Comunicación e Imagen-2007
Caso ACA-Comunicación e Imagen-2007Ignacio Uman
 
alzhosaportfolio2 (1)
alzhosaportfolio2 (1)alzhosaportfolio2 (1)
alzhosaportfolio2 (1)Abiera Shaikh
 
Facts&Figures E-Commerce Paris (FR)
Facts&Figures E-Commerce Paris (FR)Facts&Figures E-Commerce Paris (FR)
Facts&Figures E-Commerce Paris (FR)Paris Retail Week
 
Sitemans Geekstipend (uoffisiell)
Sitemans Geekstipend (uoffisiell)Sitemans Geekstipend (uoffisiell)
Sitemans Geekstipend (uoffisiell)bjolan
 
שיטות הסתברותיות - תרגול 8
שיטות הסתברותיות - תרגול 8שיטות הסתברותיות - תרגול 8
שיטות הסתברותיות - תרגול 8Igor Kleiner
 
Bid Winning Graphics
Bid Winning GraphicsBid Winning Graphics
Bid Winning GraphicsDavid Warley
 
INTERNSHIP ON EXPORT-IMPORT PROCEDURES AT MARKS CARGO PRIVATE LIMITED, PUDUCH...
INTERNSHIP ON EXPORT-IMPORT PROCEDURES AT MARKS CARGO PRIVATE LIMITED, PUDUCH...INTERNSHIP ON EXPORT-IMPORT PROCEDURES AT MARKS CARGO PRIVATE LIMITED, PUDUCH...
INTERNSHIP ON EXPORT-IMPORT PROCEDURES AT MARKS CARGO PRIVATE LIMITED, PUDUCH...Yogesh Santhan
 
Triskalia - Plaquette Institutionnelle
Triskalia - Plaquette Institutionnelle Triskalia - Plaquette Institutionnelle
Triskalia - Plaquette Institutionnelle Triskalia
 
Innovative lesson plan
Innovative lesson planInnovative lesson plan
Innovative lesson planathulyaplr
 
5.(2주제 절삭가공) 구체적으로 추진하는 원가절감 수법
5.(2주제 절삭가공) 구체적으로 추진하는 원가절감 수법5.(2주제 절삭가공) 구체적으로 추진하는 원가절감 수법
5.(2주제 절삭가공) 구체적으로 추진하는 원가절감 수법topshock
 
Template transfer or change of ownership – no objection letter - mobile number
Template   transfer or change of ownership – no objection letter - mobile numberTemplate   transfer or change of ownership – no objection letter - mobile number
Template transfer or change of ownership – no objection letter - mobile numberYogesh Santhan
 

Viewers also liked (16)

Gable Estates_Sept16
Gable Estates_Sept16Gable Estates_Sept16
Gable Estates_Sept16
 
CIO Event - Is the IT department dead?
CIO Event - Is the IT department dead?CIO Event - Is the IT department dead?
CIO Event - Is the IT department dead?
 
6, OCP - oracle security
6, OCP - oracle security6, OCP - oracle security
6, OCP - oracle security
 
Untitled Presentation
Untitled PresentationUntitled Presentation
Untitled Presentation
 
Caso ACA-Comunicación e Imagen-2007
Caso ACA-Comunicación e Imagen-2007Caso ACA-Comunicación e Imagen-2007
Caso ACA-Comunicación e Imagen-2007
 
alzhosaportfolio2 (1)
alzhosaportfolio2 (1)alzhosaportfolio2 (1)
alzhosaportfolio2 (1)
 
Brandmark Work
Brandmark WorkBrandmark Work
Brandmark Work
 
Facts&Figures E-Commerce Paris (FR)
Facts&Figures E-Commerce Paris (FR)Facts&Figures E-Commerce Paris (FR)
Facts&Figures E-Commerce Paris (FR)
 
Sitemans Geekstipend (uoffisiell)
Sitemans Geekstipend (uoffisiell)Sitemans Geekstipend (uoffisiell)
Sitemans Geekstipend (uoffisiell)
 
שיטות הסתברותיות - תרגול 8
שיטות הסתברותיות - תרגול 8שיטות הסתברותיות - תרגול 8
שיטות הסתברותיות - תרגול 8
 
Bid Winning Graphics
Bid Winning GraphicsBid Winning Graphics
Bid Winning Graphics
 
INTERNSHIP ON EXPORT-IMPORT PROCEDURES AT MARKS CARGO PRIVATE LIMITED, PUDUCH...
INTERNSHIP ON EXPORT-IMPORT PROCEDURES AT MARKS CARGO PRIVATE LIMITED, PUDUCH...INTERNSHIP ON EXPORT-IMPORT PROCEDURES AT MARKS CARGO PRIVATE LIMITED, PUDUCH...
INTERNSHIP ON EXPORT-IMPORT PROCEDURES AT MARKS CARGO PRIVATE LIMITED, PUDUCH...
 
Triskalia - Plaquette Institutionnelle
Triskalia - Plaquette Institutionnelle Triskalia - Plaquette Institutionnelle
Triskalia - Plaquette Institutionnelle
 
Innovative lesson plan
Innovative lesson planInnovative lesson plan
Innovative lesson plan
 
5.(2주제 절삭가공) 구체적으로 추진하는 원가절감 수법
5.(2주제 절삭가공) 구체적으로 추진하는 원가절감 수법5.(2주제 절삭가공) 구체적으로 추진하는 원가절감 수법
5.(2주제 절삭가공) 구체적으로 추진하는 원가절감 수법
 
Template transfer or change of ownership – no objection letter - mobile number
Template   transfer or change of ownership – no objection letter - mobile numberTemplate   transfer or change of ownership – no objection letter - mobile number
Template transfer or change of ownership – no objection letter - mobile number
 

Similar to 7, OCP - configure database for backup and recovery

8, OCP - backup with rman
8, OCP - backup with rman8, OCP - backup with rman
8, OCP - backup with rmanted-xu
 
12, OCP - performance tuning
12, OCP - performance tuning12, OCP - performance tuning
12, OCP - performance tuningted-xu
 
11, OCP - awr & alert system
11, OCP - awr & alert system11, OCP - awr & alert system
11, OCP - awr & alert systemted-xu
 
Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作maclean liu
 
深入了解Oracle自动内存管理asmm
深入了解Oracle自动内存管理asmm深入了解Oracle自动内存管理asmm
深入了解Oracle自动内存管理asmmmaclean liu
 
4, OCP - oracle networking
4, OCP - oracle networking4, OCP - oracle networking
4, OCP - oracle networkingted-xu
 
第4章 数据库管理
第4章 数据库管理第4章 数据库管理
第4章 数据库管理zhang shuren
 
Install Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 LInstall Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 Lheima911
 
数据库性能诊断的七种武器
数据库性能诊断的七种武器数据库性能诊断的七种武器
数据库性能诊断的七种武器Leyi (Kamus) Zhang
 
【Maclean liu技术分享】开oracle调优鹰眼,深入理解awr性能报告 第二讲 正式版 20130410
【Maclean liu技术分享】开oracle调优鹰眼,深入理解awr性能报告 第二讲 正式版 20130410【Maclean liu技术分享】开oracle调优鹰眼,深入理解awr性能报告 第二讲 正式版 20130410
【Maclean liu技术分享】开oracle调优鹰眼,深入理解awr性能报告 第二讲 正式版 20130410maclean liu
 
Altibase管理培训 管理篇
Altibase管理培训 管理篇Altibase管理培训 管理篇
Altibase管理培训 管理篇小新 制造
 
Oracle数据库体系结构简介.ppt
Oracle数据库体系结构简介.pptOracle数据库体系结构简介.ppt
Oracle数据库体系结构简介.pptjames tong
 
诗檀软件 Oracle开发优化基础
诗檀软件 Oracle开发优化基础 诗檀软件 Oracle开发优化基础
诗檀软件 Oracle开发优化基础 maclean liu
 
Altibase管理培训 优化篇 v1.1
Altibase管理培训 优化篇 v1.1Altibase管理培训 优化篇 v1.1
Altibase管理培训 优化篇 v1.1小新 制造
 
MySQL Replication新功能介绍
MySQL Replication新功能介绍 MySQL Replication新功能介绍
MySQL Replication新功能介绍 orczhou
 
Oracle北大青鸟完全教程
Oracle北大青鸟完全教程Oracle北大青鸟完全教程
Oracle北大青鸟完全教程yiditushe
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲84zhu
 
4, files & folders
4, files & folders4, files & folders
4, files & foldersted-xu
 

Similar to 7, OCP - configure database for backup and recovery (20)

8, OCP - backup with rman
8, OCP - backup with rman8, OCP - backup with rman
8, OCP - backup with rman
 
12, OCP - performance tuning
12, OCP - performance tuning12, OCP - performance tuning
12, OCP - performance tuning
 
11, OCP - awr & alert system
11, OCP - awr & alert system11, OCP - awr & alert system
11, OCP - awr & alert system
 
Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作
 
深入了解Oracle自动内存管理asmm
深入了解Oracle自动内存管理asmm深入了解Oracle自动内存管理asmm
深入了解Oracle自动内存管理asmm
 
4, OCP - oracle networking
4, OCP - oracle networking4, OCP - oracle networking
4, OCP - oracle networking
 
第4章 数据库管理
第4章 数据库管理第4章 数据库管理
第4章 数据库管理
 
Install Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 LInstall Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 L
 
数据库性能诊断的七种武器
数据库性能诊断的七种武器数据库性能诊断的七种武器
数据库性能诊断的七种武器
 
【Maclean liu技术分享】开oracle调优鹰眼,深入理解awr性能报告 第二讲 正式版 20130410
【Maclean liu技术分享】开oracle调优鹰眼,深入理解awr性能报告 第二讲 正式版 20130410【Maclean liu技术分享】开oracle调优鹰眼,深入理解awr性能报告 第二讲 正式版 20130410
【Maclean liu技术分享】开oracle调优鹰眼,深入理解awr性能报告 第二讲 正式版 20130410
 
Altibase管理培训 管理篇
Altibase管理培训 管理篇Altibase管理培训 管理篇
Altibase管理培训 管理篇
 
Oracle数据库体系结构简介.ppt
Oracle数据库体系结构简介.pptOracle数据库体系结构简介.ppt
Oracle数据库体系结构简介.ppt
 
Mysql Replication
Mysql ReplicationMysql Replication
Mysql Replication
 
诗檀软件 Oracle开发优化基础
诗檀软件 Oracle开发优化基础 诗檀软件 Oracle开发优化基础
诗檀软件 Oracle开发优化基础
 
Altibase管理培训 优化篇 v1.1
Altibase管理培训 优化篇 v1.1Altibase管理培训 优化篇 v1.1
Altibase管理培训 优化篇 v1.1
 
MySQL Replication新功能介绍
MySQL Replication新功能介绍 MySQL Replication新功能介绍
MySQL Replication新功能介绍
 
Oracle北大青鸟完全教程
Oracle北大青鸟完全教程Oracle北大青鸟完全教程
Oracle北大青鸟完全教程
 
Oracle dgha
Oracle dghaOracle dgha
Oracle dgha
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲
 
4, files & folders
4, files & folders4, files & folders
4, files & folders
 

More from ted-xu

7, business event system
7, business event system7, business event system
7, business event systemted-xu
 
6, workflow miscellaneous
6, workflow miscellaneous6, workflow miscellaneous
6, workflow miscellaneousted-xu
 
5, workflow function activity
5, workflow function activity5, workflow function activity
5, workflow function activityted-xu
 
4, workflow tables & api
4, workflow tables & api4, workflow tables & api
4, workflow tables & apited-xu
 
3, workflow in ebs
3, workflow in ebs3, workflow in ebs
3, workflow in ebsted-xu
 
2, a simple workflow
2, a simple workflow2, a simple workflow
2, a simple workflowted-xu
 
1, workflow intro
1, workflow intro1, workflow intro
1, workflow introted-xu
 
8, bes tables & api
8, bes tables & api8, bes tables & api
8, bes tables & apited-xu
 
OPM Recipe designer notes
OPM Recipe designer notesOPM Recipe designer notes
OPM Recipe designer notested-xu
 
5, sed
5, sed5, sed
5, sedted-xu
 
4, grep
4, grep4, grep
4, grepted-xu
 
3, regular expression
3, regular expression3, regular expression
3, regular expressionted-xu
 
2, bash synax simplified
2, bash synax simplified2, bash synax simplified
2, bash synax simplifiedted-xu
 
1, shell intro
1, shell intro1, shell intro
1, shell introted-xu
 
6, awk
6, awk6, awk
6, awkted-xu
 
8, lamp
8, lamp8, lamp
8, lampted-xu
 
6, vim
6, vim6, vim
6, vimted-xu
 
5, system admin
5, system admin5, system admin
5, system adminted-xu
 

More from ted-xu (18)

7, business event system
7, business event system7, business event system
7, business event system
 
6, workflow miscellaneous
6, workflow miscellaneous6, workflow miscellaneous
6, workflow miscellaneous
 
5, workflow function activity
5, workflow function activity5, workflow function activity
5, workflow function activity
 
4, workflow tables & api
4, workflow tables & api4, workflow tables & api
4, workflow tables & api
 
3, workflow in ebs
3, workflow in ebs3, workflow in ebs
3, workflow in ebs
 
2, a simple workflow
2, a simple workflow2, a simple workflow
2, a simple workflow
 
1, workflow intro
1, workflow intro1, workflow intro
1, workflow intro
 
8, bes tables & api
8, bes tables & api8, bes tables & api
8, bes tables & api
 
OPM Recipe designer notes
OPM Recipe designer notesOPM Recipe designer notes
OPM Recipe designer notes
 
5, sed
5, sed5, sed
5, sed
 
4, grep
4, grep4, grep
4, grep
 
3, regular expression
3, regular expression3, regular expression
3, regular expression
 
2, bash synax simplified
2, bash synax simplified2, bash synax simplified
2, bash synax simplified
 
1, shell intro
1, shell intro1, shell intro
1, shell intro
 
6, awk
6, awk6, awk
6, awk
 
8, lamp
8, lamp8, lamp
8, lamp
 
6, vim
6, vim6, vim
6, vim
 
5, system admin
5, system admin5, system admin
5, system admin
 

7, OCP - configure database for backup and recovery

  • 2. Overview • 作为一个DBA, 最重要的职责之一就是保证数据库 不会丢失数据, oracle适当配置的情况下可以确保 这一点. 包含以下内容: – 确定oracle数据库能承受的失败 – 实例恢复调优(Instance Recovery Tuning) – 检查点, 重做日志文件以及归档重做日志文件 – 配置数据库归档日志模式 – 配置多个归档日志存储目录以提供可用性 – 理解和配置闪回区(flash recovery area) – 使用闪回区
  • 3. MTBF & MTTR & Data Loss • 关于数据库备份与恢复有下面的两个术语: – MTBF Max Time Between Failure, 该术语表示数据库故障的发生 频率, 这个值应该尽可能的大. oracle提供了两种方式实 现数据库的100%可用性: RAC和高级流(Streams). – MTTR Max Time to Recover, 此术语表示从数据库故障恢复的时 间, 应当尽可能地缩小这个值. • Data Loss 除了提高MTBF降低MTTR, 数据库管理的另一个目 标是预防数据丢失. Oracle数据库提供给了Data Guard选项实现数据的零丢失率.
  • 4. Categories of Failures • 数据库故障可以分为以下类型 – 语句失败(statement failure) SQL语句在执行时有可能会失败, 可分为以下类型: • 不合法的数据, 比如违反数据库约束条件; • 逻辑错误, 比如死锁; • 与数据库存储相关的错误, 比如表空间无法扩展导致数据不 能被插入; • 权限错误, 比如没有表的insert权限. – 用户进程失败(user process failure) 很多原因会导致用户进程失败, 比如用户异常退出/终端 重启/或者程序错误等. 不管因为什么原因导致用户进程 失败, PMON进程会负责服务端进程和内存的清理.
  • 5. Categories of Failures – 网络错误(network failure) 网络错误有可能发生在数据库监听器, 网络接口, 以 及路由. 理想情况下应当为数据库所在的服务器配置 至少两个网卡并分别创建数据库监听器. – 用户错误(user errors) 常见的用户错误是某些误操作, 比如执行不带where条件的 update或者delete语句并提交. Tip: 执行DDL语句会导致当前会话被提交. – 介质故障(Media Failure) 介质故障是所有数据库故障中最为棘手的, 通常指的是操作 系统磁盘硬件故障或者误删除了数据库文件(比如使用rm命 令). 为了预防介质故障, 需要: • 对控制文件, 在线重做日志文件, 归档日志文件做多个拷贝; • 备份控制文件, 数据文件以及归档日志文件
  • 6. Categories of Failures – 实例故障(instance failure) 实例故障指的是实例的异常关闭, 常被描述为实例崩 溃(crash), 出现的原因可能是断点/重启服务器/或者 一些严重的硬件异常. 另外shutdown abort命令也会 导致实例故障. 当实例故障发生时, 某些已提交的事务可能没有写入 数据文件, 而另外一些未提交事务则可能被写入, 这 导致数据库处在一种不一致的(inconsistent)状态. 实例故障不会导致数据库不可用, 系统会自动进行实 例恢复操作, 重做日志文件是其中的关键.
  • 7. Instance Recovery • 当数据库存在不一致性(inconsistency)时, 系统将会自动检测到并进 行实例恢复. 实例恢复的本质是通过重做日志文件, 将数据缓冲区恢 复到实例崩溃之前的状态. 实例恢复完全是自动进行的. • Mechanics 实例恢复分为以下步骤: – roll forward 这一步读取并执行重做日志, 将实例崩溃时未写入磁盘的内存块在内存中 进行重建. 这些内存块包括数据块(data block)和回滚块(undo block). Tip: 在此操作之后, 虽然数据库仍然处在不一致的状态, 但此时应当允许 用户登录. – rollback 此时数据库(文件)中可能包含未提交的事务, 系统在此阶段将执行rollback 操作以回滚这些事务. Tip: 实例恢复由startup命令在启动数据库时执行, 由SMON进程进行.
  • 8. Instance Recovery - Tuning • 虽然实例恢复机制保证了数据库不会因为崩溃而不可用, 但 是实例恢复有可能会花费大量的时间(可以查看系统告警日 志文件), 这取决于在实例恢复时重做日志的读取量, 以及执 行这些重做操作时对数据文件的读写量. 这两者均可以使用 检查点(checkpoint)进行控制. • 检查点保证了在该检查点发生时数据库处在一致的状态, 实 例恢复只需要读取并执行从最近检查点开始的重做日志. 因 此检查点越新, 那么实例恢复将会越快, 但是这也带来了一个 问题就是需要执行更多的磁盘IO从而导致系统性能的下降. • FAST_START_MTTR_TARGET 此参数用于设置实例恢复的目标时间(单位: 秒), 默认值为0. 在默认设置下DBWn遵循”尽量执行写操作, 每次尽量少写”的 原则. 如果设置了非0值, 那么系统将根据该值设置DBWn进程 的调用频率. 设置该参数的另一个效果是, 如果操作系统有额 外的空闲资源 (IO/cpu etc.), 那么会尽量利用这些资源更积极 推动检查点操作(checkpoint auto-turing).
  • 9. MTTR Advisor • oracle提供了系统当前进行实例恢复的相关信 息, 这些信息可以通过Database Control(Advisor Central)或者通过v$instance_recovery视图进行 查询, 该视图比较重要的列如下:
  • 10. Checkpoint • 如前所述, 检查点的位置决定了实例恢复时读取重做日志的起始位置. 检查 点操作分为两种类型: – full 此类型的检查点操作会将所有的脏数据块写入数据库, 11g版本中在两种情况下会 发生此种类型的检查点操作: • 手动检查点, 执行命令alter system checkpoint; • shutdown normal|immediate|transactional – partial 在执行某些动作时会导致部分检查点操作, 这些动作包括:
  • 11. Database Recoverability - Controlfile • 控制文件对于oracle数据库至关重要. 可以通过多路复用 (multiplex)或者备份(backup)的方式保护控制文件不被丢失. Tip: 采用多路复用的方式时, 控制文件最多可以有8份拷贝. Tip: 在理想情况下控制文件应当至少保存两份拷贝, 并且分 别保存在不同的磁盘上面. • 使用如下步骤实现控制文件的多路复用: – 关闭数据库 – 使用操作系统命令将控制文件移动到指定的位置 – 修改control_files实例参数以指向这些位置, 如果是pfile则直接修改文 件, 如果是spfile这将数据库启动至nomount模式执行alter system操 作, 示例: alter system set control_files="/path1/to/file", "/path2/to/file" scope=spfile; – 关闭(如果需要)并重启数据库.
  • 12. Database Recoverability - Online redo log files • 丢失当前的重做日志文件组可能会导致数据丢失, 因为实例恢复依赖于这些重 做日志. 可以使用多路复用的方式保护重做日志文件, 使用至少两个日志组, 每 个日志组设置至少两个成员(multiplex), 并将每个成员分别放在不同的磁盘上 面. • 与控制文件不同的是, 重做日志组的成员丢失或者损坏不会导致数据库崩溃, 提前是日志组中还有其他的成员可用. 通过v$log和v$logfile视图查看重做日志 组的相关信息. 示例: select group#, sequence#, members, status from v$log; sequence# 日志组处在log switch的序号 status CURRENT表示当前正在使用的日志组, 如果状态为ACTIVE则表 示该日志组会被用于实例恢复. INACTIVE表示日志组暂时不被 使 用. • 如果使用DBCA创建的数据库, 那么默认会创建3个重做日志组, 但每个组只有一 个成员, 可以在数据库打开的情况下添加或者删除重做日志组, 修改日志组的 成员. 示例添加一个日志组成员: alter database add logfile member '/path/to/logfile' to group 1;
  • 13. Database Recoverability - Archivelog Mode • oracle的实例恢复机制确保数据库不会因为崩溃而丢失数据, 如需要在介质 故障的情况下仍保持数据的完整性, 则需要将数据库设置为归档模式 (archivelog). 在归档模式下, 每次进行重做日志组的切换时会将重做日志拷 贝至相应的位置, 这样就记录了数据库所有的变更历史. • Archiver process 在归档模式下归档进程ARCn被启动, 默认情况下会启动四个归档进程分别 为ARC0, ARC1... • Archive log destination 通过数据库参数log_archive_dest_n指定归档日志的存放目录, 最多可以指 定10个目录. 这里采用了多路复用机制, 每个目录下面存储的归档日志内容 是相同的. • Archive log file name 通过数据库参数log_archive_format指定归档日志文件的名称, 可以使用如 下占位符 %d 数据库标识符 %t 线程号 %r incarnation number %s 日志切换序号
  • 14. Database Recoverability - Archivelog Mode • 默认情况下归档模式不被打开, 可以在数据库处在mount阶段时设置归档模式(SYSDBA登录), 需要执 行如下动作: – 设置归档日志目录 alter system set log_archive_dest_1='location=/opt/oracle/archive1/' scope=spfile; alter system set log_archive_dest_2='location=/opt/oracle/archive2/' scope=spfile; 最多可以设置10个目录, 并保证至少一个在本地磁盘. 每个归档目录可以指定为optional或者 mandatory, 这与另外一个参数log_archive_min_succeed_dest相关, 示例: log_archive_dest_1='location=/u02/orcl/arch1/ mandatory' log_archive_dest_2='location=/u03/orcl/arch2/ optional' log_archive_dest_3='location=/u03/orcl/arch3/ optional' log_archive_min_succeed_dest=2 – 设置归档日志文件名 alter system set log_archive_format='arch_%d_%t_%r_%s.log' scope=spfile; – 关闭数据库并将数据库启动至mount节点 shutdown immediate; startup mount; – 设置归档模式并打开数据库 alter database archivelog; alter database open; • 可以通过v$database, v$instance等性能视图查看归档模式的相关信息, 比如: select log_mode from v$database; select archiver from v$instance; 手动切换日志, 并查看归档文件: alter system switch logfile; select name from v$archived_log;
  • 15. Flash Recovery Area - Overview • 闪回区是所有与数据库还原和恢复相关文件的默认存储位 置, 闪回区可以使文件系统目录也可以是ASM磁盘组. 闪回 区可以简化与数据库还原和恢复操作相关文件的管理, 默认 情况下闪回区被禁用, 如果使用DBCA创建数据库则会自动 启用闪回区. • Recovery Files 闪回区可以存储以下文件: – Contolfile multiplexed copies 如果没有指定CONTROL_FILES和DB_CREATE_FILE_DEST参 数, 会自动在闪回区创建控制文件的拷贝. – Online redo log file multiplexed copies 如果没有指定DB_CREATE_ONLINE_LOG_DEST_N参数, 并且在 创建数据库(create database)时没有指定重做日志组成员, 将 会在闪回区创建重做日志文件. Tip: 以上两类文件在闪回区会被永久存储, 即不会被自动删除.
  • 16. Flash Recovery Area - Overview • Recovery Files 除了闪回日志文件之外, 这些闪回区文件被称为是临时 的, 它们可以被重置到其它的位置或者被RMAN删除. 可 以定义相应的规则如果清除这些文件. – Archive redo log files 如果设置归档模式时, 没有指定任何的LOG_ARCHIVE_DEST_n 参数, 则会自动设置参数LOG_ARCHIVE_DEST_10执行闪回区. – RMAN backups – RMAN copies – CONTROLFILE auto-backups – Flashback log files
  • 17. Flash Recovery Area - Configure • 使用如下两个参数对闪回区进行配置: – DB_RECOVERY_FILE_DEST 指定闪回区的位置, 可以使文件系统目录或者ASM磁盘组. – DB_RECOVERY_FILE_DEST_SIZE 此参数必须先于上一参数进行设置, 用于指定闪回区的 大小. • 通过以下视图的IS_RECOVERY_DEST_FILE字段判断文件 是否为闪回区文件, 这些视图有: v$controlfile v$logfile v$archived_log v$backup_piece
  • 18. Flash Recovery Area - Space Usage • RMAN用于对闪回区的空间进行管理, 当闪回区空 间被使用完时, 可以根据规则删除相应的文件拷 贝和备份. 另外数据库提供了相应的机制实现对 闪回区的备份. • 通过视图v$flash_recovery_area_usage查看闪回区 空间的使用情况, 该视图如下: SQL> desc v$flash_recovery_area_usage Name Null? Type ----------------------------------------- -------- ---------------------------- FILE_TYPE VARCHAR2(20) PERCENT_SPACE_USED NUMBER PERCENT_SPACE_RECLAIMABLE NUMBER NUMBER_OF_FILES NUMBER 第二, 三列根据当前使用的空间和剩余空间除以参数 DB_RECOVERY_FILE_DEST_SIZE得到.
  • 19. Flash Recovery Area - Database Control • Database Control提供了相关的链接用于对闪回 区进行查询和设置, 通过路径: Home > Availability > Recovery Settings导航到相应的页 面如下:
  • 20. END