`
hecal
  • 浏览: 79609 次
社区版块
存档分类
最新评论

ORACLE数据库备份实用方案

 
阅读更多
1 引言

---- ORACLE数据库是一种大型关系型的数据库,可以存贮达到存贮TB的数据,那么如何保证这些数据的安全尤其至关重要,我们从1991年开始使用ORACLE数据库,通过这些年的使用,我们制定了一整套的ORACLE数据库的备份制度。现在把我们的备份制度介绍给大家,供大家参考。

---- 2 根据实际需要决定数据库的运行方式

---- ORACLE数据库有两种运行方式:一是归档方式(ARCHIVELOG),归档方式的目的是当数据库发生故障时最大限度恢复所有已提交的事物;二是不归档方式(NOARCHIVELOG),恢复数据库到最近的回收点。我们根据数据库的高可用性和用户可承受丢失的工作量的多少,把我们正式运行的数据库采用为归档方式;那些正在开发和调试的数据库采用不归档方式。

---- 3 如何改变数据库的运行方式

---- 3.1在创建数据库时设置数据库的运行的方式

---- 在创建数据库时,作为创建数据库的一部分,就决定了数据库初始的存档方式。一般情况下为NOARCHIVELOG方式。当数据库创建好以后,根据我们的需要把需要运行在归档方式的数据库改成ARCHIVELOG方式。

---- 3.2改变不归档方式为为归档方式

关闭数据库,备份已有的数据
改变数据库的运行方式是对数据库的重要改动,所以要对数据库做备份,对可能出现的问题作出保护。

启动Instance ,Mount数据库但不打开数据库,来改变归档方式
sqldba lmode=y(svrmgrl)
sqldba>connect internal
sqldba>startup mount
sqldba>alter database archivelog;


使能自动存档
在初始化文件init*.ora(一般放ORACLE根目录的下层目录dbs下)加参数:
log_archive_start=true

指定存档的重做登录文件名和存放的位置
同样是在初始化文件init*.ora中加入下面的参数:
log_archive_format=%S.arc
log_archive_dest=/arch12/arch (arch12 是日志文件存放的目录)


关闭数据库,重新启动数据库,归档方式转换完成。
---- 4 回收制度
---- 4.1根据数据库的运行方式和可承受丢失的工作量来决定数据库的回收制度对于不归档方式,我们用的是ORACLE数据库的逻辑备份Export ,回收的制度是:一个月作一次全备份(x01.dmp),一周作一次累积备份(c*.dmp),一天一次增量备份(I*.dmp),具体的是星期一到星期五作增量备份,星期六做累积备份或全备份,每次做完备份后自动传到其它的机器上存储。这些备份都是自动执行的,后面给出程序文本。

---- 对于归档方式,我们用的是ORCALE的物理备份:当数据库创建好以后,做一次物理上的全备份,平时在不关闭数据库的前提下,一个星期对经常改变的数据文件做联机的数据库数据文件的物理备份;当数据库的结构发生改变,如:增加表空间,加数据文件等,如允许关机,正常关闭数据库,重新做数据库全备份,否则,备份控制文件,备份数据文件照常。联机的日志文件我们是写在阵列上的,不用镜象和备份。

---- 4.2回收的方法

---- 4.2.1不归档方式

---- 我们拿曙光AIX操作系统为例,来讲解以下如何做自动备份:

---- a.首先建UNIX用户 demo/demo

---- b.拷贝oracle用户下的 .profile 到 demo 用户下,以保证 demo 用户可以用 Export命令

---- c.用root用户登录,编辑 /var/adm/cron/cron.allow 加入用户名demo,这样demo用户就有权自动执行数据库备份的shell程序;

---- d.创建数据库备份程序,放到本用户的下层目录bin下,并且这些文件要有可 执行权文件zlbf1:(增量备份1,星期一执行的程序)

. /u11/demo/.profile
exp system/manager inctype=INCREMENTAL file=i01.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put i01.dmp
close
bye
!
文件zlbf2:(增量备份2, 星期二执行的程序)
. /u11/demo/.profile
exp system/manager inctype=INCREMENTAL file=i02.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put i02.dmp
close
bye
!
文件zlbf3:(增量备份3, 星期三执行的程序)
. /u11/demo/.profile
exp system/manager inctype=INCREMENTAL file=i03.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put i03.dmp
close
bye
!
文件zlbf4:(增量备份4, 星期四执行的程序)
. /u11/demo/.profile
exp system/manager inctype=INCREMENTAL file=i04.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put i04.dmp
close
bye
!
文件zlbf5:(增量备份5, 星期五执行的程序)
. /u11/demo/.profile
exp system/manager inctype=INCREMENTAL file=i05.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put i05.dmp
close
bye
!
文件zlbf6:(增量备份6, 星期六执行的程序)
. /u11/demo/.profile
js=`ls c*.dmp|wc -l`
if test $js = 0
then
exp system/manager inctype=CUMULATIVE file=c01.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put c01.dmp
close
bye
!
fi
if test $js = 1
then
exp system/manger inctype=CUMULATIVE file=c02.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put c02.dmp
close
bye
!
fi
if test $js = 2
then
exp system/maneger inctype=CUMULATIVE file=c03.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put c03.dmp
close
bye
!
fi
if test $js = 3
then
exp system/manager inctype=COMPLETE file=x01.dmp
ftp -n< < !
open 10.10.10.40
user demo demo
binary
prompt
cd backup40
put x01.dmp
close
bye
!
rm c*.dmp
fi

---- e.在demo 用户下建一个文件,假如叫:cron.demo,文件内容如下
59 22 * * 1 bin/zlbf1
59 22 * * 2 bin/zlbf2
59 22 * * 3 bin/zlbf3
59 22 * * 4 bin/zlbf4
59 22 * * 5 bin/zlbf5
59 22 * * 6 bin/zlbf6

---- f.在demo用户下执行下面的命令:
crontab cron.demo 执行的结果放到
/var/spool/cron/crontabs/demo文件里

---- g.重新启动cron 进程,命令:kill -1 进程号
---- h.执行结果放在本用户的邮件里

---- i.查看结果是否执行,请看:/var/adm/cron/log文件

---- 4.2.2归档方式

---- a. 找到要回收的数据文件、联机重做登录文件、控制文件和参数文件

---- b. 正常关闭数据库,作一次全回收(用操作系统的TAR命令,可以写成shell程序),然后打开数据库供正常使用,shell程序如下:

tar cvf /dev/rmt/ctape2 /u1/oracle/dbs/ctrl1ora7.ctl/
/u1/oracle/dbs/ctrl2ora7.ctl/
/u1/oracle/dbs/ctrl3ora7.ctl/
/u1/oracle/dbs/systora7.dbf/
/u1/oracle/dbs/rbsora7.dbf/
/u1/oracle/dbs/tempora7.dbf/
/u1/oracle/dbs/toolora7.dbf/
/u1/oracle/dbs/usrora7.dbf/
/ls1/ls1.dbf/
/u1/oracle/dbs/log1ora7.dbf/
/u1/oracle/dbs/log2ora7.dbf/
/u1/oracle/dbs/log3ora7.dbf
---- a. 经常作联机的表空间和数据文件的部分回收
首先标记联机表空间回收的开始
alter tablespace 表空间名 begin backup;
用操作系统命令备份数据文件

最后标记联机的表空间回收结束
alter tablespace 表空间名 end backup
---- 多个表空间可以一起做标记,备份做标记的所有数据文件后,一起标记结束。
---- d. 当数据库结构发生改变后,要对它的控制文件做回收

sqldba >alter database backup
controlfile to '文件名' reuse;

---- 5 结束语

---- 一套完善的备份制度是数据库安全运行的有利保障,文章所介绍的可供同行们参考。
分享到:
评论

相关推荐

    windows下oracle数据库备份压缩&删除历史备份.rar

    本资料"windows下oracle数据库备份压缩&删除历史备份.rar"提供了一个详细的过程,用于实现Oracle数据库的定时备份、备份文件的压缩以及自动删除两天前的旧备份。 首先,我们来讨论Oracle数据库的备份方法。在Oracle...

    基于RMAN的Oracle数据库备份与恢复机制.pdf

    本文档提供了基于RMAN的Oracle数据库备份与恢复机制的详细介绍,旨在帮助读者更好地理解RMAN的组成结构和运行机制,并提供了一个实用的解决方案来提高备份和恢复的效率和可靠性。 关键词:Oracle RMAN备份恢复机制 ...

    oracle数据库自动备份脚本带说明

    "oracle数据库自动备份脚本带说明"的标题表明这是一个关于如何自动化执行Oracle数据库备份的脚本,这对于系统管理员来说是非常实用的工具。下面我们将详细探讨Oracle数据库的备份策略、自动备份脚本的工作原理以及...

    Oracle数据库备份文件有效性检测设计方案.pdf

    本文档为企业提供了一种实用的Oracle数据库备份文件有效性检测设计方案,旨在解决企业备份数据时忽视备份文件有效性检测的问题,保护企业数据安全。 技术要点: 1. 备份检测原理:备份检测原理是指在备份数据时,...

    Oracle数据库备份策略——周备份方案

    ### Oracle数据库备份策略——周备份方案 #### 一、引言 在企业级应用中,Oracle数据库因其稳定性、可扩展性和高性能而被广泛使用。为了确保数据的安全性,制定合理的备份策略至关重要。针对大型数据库,传统的全量...

    Oracle数据库备份与恢复实例讲解ppt课件.pptx

    Oracle数据库备份与恢复实例讲解 本文档旨在介绍 Oracle 数据库备份与恢复的实例讲解。备份和恢复是数据库管理员的重要职责之一,目的是为了保护数据库免受故障的影响,确保数据的安全和可靠性。 一、数据库常见...

    Oracle数据库实用教程

    Oracle数据库实用教程主要涵盖了Oracle数据库系统的基础知识、安装配置、数据管理、SQL查询、数据库安全性、性能优化以及备份恢复等多个方面。以下是对这些知识点的详细解释: 1. **Oracle数据库介绍**:Oracle...

    Oracle数据库实用教程(第二版)

    《Oracle数据库实用教程(第二版)》是由知名数据库专家唐远新编著的一本全面介绍Oracle数据库应用的教程。本书旨在帮助读者深入理解和掌握Oracle数据库系统的核心概念、管理和开发技术,特别适合初学者和有一定经验...

    计算机软件-编程源码-oracle数据库备份的例子.zip

    综上所述,"计算机软件-编程源码-oracle数据库备份的例子.zip"这个压缩包可能提供了一整套的Oracle数据库备份解决方案,涵盖了从编写脚本到执行备份,再到验证和恢复的全过程。学习和理解这些示例,对于任何处理...

    中小企业Oracle数据库备份方案.pdf

    本文将探讨一种针对中小企业Oracle数据库的备份方案,旨在确保数据的安全性和可用性,同时考虑到资源有限的情况。 首先,中小企业的硬件设施可能并不奢华,可能没有专用的备份设备,如磁带机或磁盘陈列。在这种情况...

    Oracle数据库自动备份工具

    总之,"Oracle数据库自动备份工具"是一个实用的解决方案,它减轻了数据库管理员的负担,提高了备份效率,是企业数据库管理中的得力助手。通过熟练掌握并利用这类工具,可以更好地保障数据的安全,降低因数据丢失带来...

    oracle数据库定时备份

    总之,"Oracle数据库定时备份"是一个实用的解决方案,通过自动化的方式确保了数据的安全。理解和掌握RMAN及其与批处理文件的结合使用,是每个Oracle DBA必备的技能之一。记得定期检查和优化备份过程,以适应不断变化...

    大型ORACLE数据库优化设计方案

    本文将深入探讨大型Oracle数据库优化设计方案,从架构选择、系统参数调优、表设计原则、索引策略以及并行查询和资源管理等多个维度展开,旨在为Oracle数据库管理员提供实用的优化指南。 #### 一、Oracle数据库架构...

    ORACLE数据库备份方法及策略.pdf

    【Oracle数据库备份方法及策略】 Oracle数据库作为一款广泛使用的大型关系型数据库管理系统,其数据安全性至关重要。数据库备份是确保数据安全的重要手段,特别是在面临硬件故障、软件错误、人为操作失误或者灾难性...

    Oracle数据库备份与恢复策略研究.pdf

    因此,制定并执行一套合理的Oracle数据库备份与恢复策略显得尤为关键。 Oracle数据库的备份与恢复工作是确保数据库系统安全稳定运行的重要环节。备份工作的主要目标是保护数据不受损害,而恢复工作则是应对故障或...

    优化Oracle数据库备份和恢复.pdf

    Oracle数据库的备份与恢复是确保数据安全性的重要环节,特别是在关键业务中,如医疗信息系统,数据库必须7x24小时不间断运行。Oracle提供了多种备份策略,包括逻辑备份(Export)、脱机备份(Offline backup)和联机...

    Oracle数据库备份与恢复专题.pdf

    总结来说,Oracle数据库备份与恢复涉及多种策略和工具,如exp/imp用于逻辑备份,而tar结合RMAN则提供了物理备份的解决方案。理解并熟练掌握这些工具的使用,对于保障Oracle数据库的安全运行至关重要。同时,定期进行...

    地震前兆Oracle数据库备份策略与应用.pdf

    传统的Oracle数据库备份方法包括应用级的管理系统备份、冷备份和导入导出备份。管理系统备份利用表级别的增量备份,通过在数据表中标记来实现。冷备份则涉及在数据库关闭状态下直接复制数据库文件,简单但可能导致长...

    LGWR & ARCH 数据库的备份与恢复

    1. Oracle数据库备份概述:备份是将数据库内容复制到转储设备(如磁带或磁盘)的过程。Oracle数据库的备份主要分为物理备份和逻辑备份两种。 2. 物理备份:物理备份是指将数据库的实际文件(数据文件、控制文件、...

Global site tag (gtag.js) - Google Analytics