首页 > 精品范文库 > 12号文库
oracle数据库自动备份方案
编辑:梦里花开 识别码:21-365584 12号文库 发布时间: 2023-04-09 23:34:41 来源:网络

第一篇:oracle数据库自动备份方案

1.目的

编写本文档的目的为实现ORACLE数据库的自动备份,为不动产数据增加一份数据安全按保障。

2.软件环境

数据库服务器:oracle 11g atabase x64 v11.2.0.4.0 客户端:Oracle client x64 v11.2.0.4.0 注意:数据库服务器和客户端版本必须保持一致,否则会出现无法预知的错误。

3.实施方案

3.1.编写数据库自动备份脚本

脚本内容如下,将文件存储为oraclebackup.bat:

@echo off echo 删除10天前的备分文件和日志

forfiles /p “D:oraclebackup” /m *.dmp /d-10 /c “cmd /c del @path” forfiles /p “D:oraclebackup” /m *.log /d-10 /c “cmd /c del @path” echo 正在备份 oracle 数据库,请稍等……

exp BDCDJ_CP/BDCDJ_CP@10.6.161.70/orcl file=D:/oraclebackup/BDCDJ_CP%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=D:/oraclebackup/BDCDJ_CP%date:~0,4%%date:~5,2%%date:~8,2%.log echo 任务完成!注意:

1)修改数据库连接用户名、密码、数据库地址和实例名

2)修改备份文件存储地址,以上脚本存储位置为D:oraclebackup 3.2.新建任务计划

1)打开任务计划程序

2)打开创建基本任务,输入任务名称、选择任务执行时间和执行的脚本,完成任务计划创建。

第二篇:Oracle数据库备份和恢复论文

摘要:本文从Oracle的体系结构开始,由原理到实践,论述了Oracle数据库备份的方式和策略。包括IMp/EXp,RMAN,OS备份等。

Abstract: Starting from the architecture of ORACLE, this paper discusses the backup method and strategy of database Oracle, including IMp/EXp, pMAN and OS theoretically and practically.关键字:Oracle, 备份, 恢复, RMAN

Keywords: Oracle;Backup;Restoration;RMAN

概述

在大型软件运行系统中,存在着很多备份策略,如RAID技术,CLUSTER技术等等。很多时候,这些系统的备份就能够解决数据库备份的问题。但是,这种备份成本很高。同时,硬件的备份有时根本满足不了现实的需要,如果用户不小心误删了一个表,又想恢复的时候,数据库的备份就变的重要了。

Introduction: In the running system of some big software, there exist many backup strategies such as RAID technology and CLUSTER technology etc.In most cases, these system backup strategies can fulfill the database backup.However the cost is rather high.At the same time, hardware backup sometimes is far from the actual requirement.The database backup becomes very important when a table is deleted by accident and needs to be restored.Oracle的运行方式

Oracle数据库有两种运行方式:一是归档方式(ARCHIVELOG),归档方式的目的是当数据库发生故障时最大限度恢复数据库,可以保证不丢失任何已提交的数据;二是不归档方式(NOARCHIVELOG),只能恢复数据库到最近的回收点(冷备份或是逻辑备份)。根据数据库的高可用性和用户可承受丢失的工作量的多少,对于实时性要求高的数据库,强烈要求采用为归档方式;不归档方式只用在那些开发和调试的数据库等。

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

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

2.修改初试化参数,使能自动存档。

修改(添加)初始化文件init[SID].ora参数:

log_archive_start=true #启动自动归档

log_archive_format=ARC%T%S.arc #归档文件格式

log_archive_dest=/archdir/arch #归档路径

在8i中,可以最多有五个归档路径,并可以归档到其它服务器,如备用数据库(standby database)服务器。

3.启动Instance到Mount状态,即加载数据库但不打开数据库。

$> svrmgrl

SVRMGRL> connect internal

SVRMGRL> startup mount

SVRMGRL> alter database archivelog;// 使数据库运行在归档方式

SVRMGRL> alter database open;

Oracle的备份方案

按照备份的方式,可以分为逻辑备份、冷备份(脱机备份)、热备份(联机备份),其中冷备份与热备份又可以合称为物理备份。按照备份的工具,可以分为EXp/IMp备份、操作系统备份、RMAN、第三方工具备份,如VERITAS等。下面分别介绍Oracle本身提供的几种备份工具和操作。

1.EXp/IMp备份(逻辑备份)

EXp/IMp属于逻辑备份的范畴,逻辑备份是指只备份数据库中的数据但不记录数据物理位置的一种备份。导出为数据库作一个二进制的备份,并且这个备份只能由其姊妹程序imp(import)来读取。具体的使用方法如下。(因为EXp和IMp使用上参数基本相同,所以只以EXp为例。)

EXp的命令格式和参数

格式:KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)

例程: EXp SCOTT/TIGER GRANTS=Y TABLES=(EMp,DEpT,MGR)

USERID 必须是命令行中的第一个参数

关键字 说明(默认)关键字 说明(默认)

USERID 用户名/口令 FULL 导出整个文件(N)

BUFFER 数据缓冲区的大小 OWNER 所有者用户名列表

FILE 输出文件(EXpDAT.DMp)TABLES 表名列表

COMpRESS 导入一个范围(Y)RECORDLENGTH IO记录的长度

GRANTS 导出权限(Y)INCTYpE 增量导出类型

INDEXES 导出索引(Y)RECORD 跟踪增量导出(Y)

ROWS 导出数据行(Y)pARFILE 参数文件名

CONSTRAINTS 导出限制(Y)CONSISTENT 交叉表一致性

LOG 屏幕输出的日志文件 STATISTICS 分析对象(ESTIMATE)

DIRECT 直接路径(N)TRIGGERS 导出触发器(Y)

FEEDBACK 显示每 x 行(0)的进度 FILESIZE 各转储文件的最大尺寸

QUERY 选定导出表子集的子句

注:可以通过exp -help命令查看exp的使用方法;imp-help命令查看imp的使用方法.2.操作系统备份(冷备份和热备份)

操作系统备份有两类,冷备份(Cold backup)和热备份(Hot backup)。操作系统备份和上面的逻辑备份有本质的区别,它将拷贝整个的数据文件。

冷备份

在文件级备份开始前数据库必须彻底关闭。关闭操作必须用带有normal、immediate、transaction选项的shutdown来执行。

数据库使用的每个文件都被备份下来,这些文件包括: 所有数据文件、所有控制文件、所有联机重做日志文件和INIT.ORA文件(建议)。

作冷备份一般步骤是:

1)正常关闭要备份的实例(instance);

2)备份整个数据库到一个目录

3)启动数据库

即:

SVRMGRL>connect internal

SVRMGRL >shutdown immediate

SVRMGRL >!cp

or

SVRMGRL >!tar cvf /dbbak/fullbk.tar /u01/oracle/oradata/dbname

SVRMGRL >startup

热备份

热备份是当数据库打开时的操作系统备份。热备份只能用于ARCHIVELOG方式的数据库。热备份没有必要备份联机日志,但必须是归档状态,在实例恢复的时候,可能需要用到归档日志。当前联机日志一定要保护好或是处于镜相状态,当前联机日志的损坏,对于数据库的损坏是巨大的,只能以数据的丢失来进行数据库的恢复工作。对于临时表空间,存放的是临时信息,在热备份是也可以考虑不用备份,如果临时文件发生故障,可以删除该数据文件与表空间,重建一个临时表空间。

热备份备份的内容和冷备份备份的内容一样,操作一般步骤是:

1)备份的表空间通过使用ALTER TABLESpACE …… BEGIN BACKUp使表空间进入热备份方式。

2)用类似冷备份的操作系统命令对组成表空间的数据文件进行拷贝。

3)使用ALTER TABLESpACE …… END BACKUp命令使表空间脱离热备份方式。

4)使用ALTER DATABSE …… BACKUp CONTROLFILE命令备份控制文件。

即:

SVRMGRL>connect internal;

SVRMGRL>alter tablespace User begin backup;

SVRMGRL>!cp /u01/oradata/dbname/user01.ora /dbbak/user01.ora

SVRMGRL>alter tablespace User end backup;

SVRMGRL>alter database backup controlfile to ;

or

SVRMGRL>alter database backup controlfile to trace;

注意:因为热备份的时候,用户还在操作数据库,所以最好是让每个表空间处于备份状态的时间最短,这样就要求一个表空间一个表空间的备份,不要一起使表空间处于备份状态而同时拷贝数据文件。

3.RMAN

Recovery Manager(RMAN)是一个使DBA能很方便地对数据库执行备份和恢复任务的Oracle应用工具,能够提供DBA对企业数据库备份与恢复操作的集中控制。RMAN只能用于ORACLE8或更高的版本中。它能够备份整个数据库或数据库部件,其中包括表空间、数据文件,控制文件和归档文件。RMAN可以按要求存取和执行备份和恢复。

RMAN支持六种不通的类型的备份,经常用到的有两种:

FULL 数据库全备份,包括所有的数据块。

INCREMENTAL 增量备份,是指只备份在同级别或更低级别上进行的前一次备份之后的作过改动的那些数据块。这其中需要一个0级的增量作为增量的基础,它备份包括全部曾经被数据库使用过的数据块(但不是完全数据库备份)。RMAN共可以支持7级增量。

BACKUp,RESTORE,RECOVER是RMAN最基本的三个命令,分别可以进行数据库的备份,复原以及恢复操作。restore命令用于恢复来自备份集或映像拷贝的数据文件、控制文件或归档重做日志。recovery命令用于进行介质恢复应用重做日志文件。

RMAN的备份信息一般保存在恢复目录中,恢复目录也是一个数据库,只不过这个数据库用来保存备份信息,一个恢复目录可以用来保存多个数据库的备份信息。RMAN也可以在没有恢复目录(NOCATALOG)下运行,这个时候备份信息保存在控制文件。这种情况比较危险,因为一旦控制文件被破坏,将导致所有数据库备份信息的丢失和恢复的失败,而且,没有恢复目录,很多RMAN的命令将不被支持。所以对于重要的数据库,建议创建恢复目录。

创建恢复目录一般有以下步骤。(例子数据库为db)

1)为目录创建一个单独的表空间

SQL>create tablespace tsrman datafile ’/dbbak/rman/rsrman.dbf’ size 50M;

2)创建RMAN用户

SQL>create user rman identified by rman default tablespace rsrman temporary tablespace temp;

3)给RMAN授予权限

SQL>grant connect, resource, recovery_catalog_owner to rman;

4)打开RMAN

$rman

5)连接恢复目录数据库

RMAN>connect catalog rman/rman@db

6)创建恢复目录

RMAN>create catalog tablespace tsrman 在对某个数据库进行备份之前,必须先在恢复目录上注册该数据库,这一过程操作如下(假定目标数据库连接字符串为db100)。

1)连接到恢复目录数据库

$rman rman/rman@db

2)在RMAN中连接到目标数据库(即要进行备份的数据库)

RMAN>connect target sys/change_on_install@db100

3)注册数据库

RMAN>register database;

注册完数据库后,就可以进行数据库的备份了。有完全数据库备份、表空间备份、控制文件备份、和归档日志备份等。操作分别如下。

1)完全数据库备份

要求:ARCHIVELOG模式,在DB OpEN的情况下进行数据库完全备份。

RMAN>run{

allocate channel c1 type=disk;

backup database;

release channel c1;

}

2)表空间备份

要求:ARCHIVELOG模式

RMAN>run{

allocate channel c1 type=disk;

backup tablespace “ts_users” filesperset 3 format ‘aatst_%t%s.%p’;

release channel c1;

}

3)控制文件备份

RMAN>run{

allocate channel c1 type=disk;

backup current controlfile tag=weekly_sat_backup;

release channel c1;

}

在对数据库进行完全备份时,控制文件自动包含其中。也可以在表空间或数据文件的备份中包含一个控制文件。

RMAN>run{

allocate channel c1 type=disk;

backup tablespace “ts_users”

filesperset 3 format ‘aatst_%t%s.%p’;

include current controlfile;

release channel c1;

}

4)归档日志备份

通过查询数据字典表V$ARCHIVED_LOG获取要备份的日志序列号,然后执行命令:

RMAN>run{

allocate channel c1 type=disk;

backup archivelog low logseq 3 high logseq 10 thread 1;

release channel c1;

}

Oracle的备份策略

正确的备份策略不仅能保证数据库服务器的24*7的高性能的运行,还能保证备份与恢复的快速性与可靠性。我们将以RMAN的多级增量备份作为一个备份策略的例子来讨论。采用多级备份就是为了减少每天备份所需要的时间,而又保证系统有良好的恢复性。恢复时间与备份时间要有一个权衡。比如只要进行一个数据库的全备份,然后就只备份归档也可以保证能把数据库恢复到最新的状态,但是这样的恢复时间将是不可容忍的。多级备份也正是为了解决这种问题,结合某些应用的特点,可以采用如下的备份策略:

每个月做一个数据库的全备份(包括所有的数据和只读表空间);

每个星期一做一次零级备份(不包含只读表空间);

每个星期三做一次一级备份;

每天做一次二级备份。

每天做一次恢复目录的热备份。

任何数据库的更改需要重新同步CATALOG目录并重新备份(如添加数据文件)或重新备份(如修改表空间为只读)。

每次备份后都可以备份归档日志或定期备份归档日志。如果可能,可以直接备份到磁带上。

Oracle的恢复

下面的操作约定恢复目录存储在db118中,目标数据库是db100。

1.数据库恢复

1)启动SQL*pLUS,使用正确的init.ora文件,使用NOMOUNT选项启动目标数据库实例。

2)启动RMAN并连接到恢复目录,如下:

$rman catalog rman/rman@db118

恢复管理器: Release 9.2.0.1.0production

Copyright(c)1995, 2002, Oracle Corporation.All rights reserved.连接到恢复目录数据库

RMAN>

3)连接到目标数据库

RMAN>connect target internal/oracle@demo.oracle

连接到目标数据库: db(DBID=1142471523)

4)一旦连接到目标数据库,执行restore命令恢复控制文件

RMAN>run{

2>allocate channel c1 type disk;

3>restore controlfile;

4>}

小结

保证Oracle数据库的安全是系统安全的重要组成部分,必须要设计完善的数据库备份和恢复方案。Oracle提供的各种工具结合起来使用能够使数据库的备份和恢复变得简单。在实际的Oracle数据库的备份和恢复中,会有许多不通的和复杂的情况出现,针对不同的情况,要本着使数据具有最大的可恢复性和恢复时间最短的原则去进行数据库的恢复,这需要大量的实践和经验积累。

参考文献

[1] Oracle8i Backup and Recovery Guide Oracle Document

[2] Oracle8i Recovery Manager User’s Guide and Reference Oracle Document

[3] Oracle9i:A Beginner’s Guide(美)Michael Abbey Michael Corey Ian Abramson 2002.3 机械工业出版社

[4] Oracle8i备份与恢复手册(美)Rama Velpuri Anand Adkoli 蒋蕊 王磊等译 2001.9 机械工业出版社

第三篇:Oracle数据库的不同备份方法

Oracle数据库的备份方法

1、引言

Oracle数据库的备份方法很多,无论使用那种备份方法,备份的目的都是为了在出现故障后能够以尽可能小的时间和代价恢复系统。比如使用export实用程序导出数据库对象、使用Oracle备份数据库、使用Oracle对称复制、使用Oracle并行服务器、使用Oracle冷备份、使用Oracle热备份等各种备份方法都有其优缺点、适用的场合和相应的软硬件要求。本文主要就用export实用程序导出数据库对象、Oracle冷备份、Oracle热备份这三种最基本的备份方法进行详细的探讨,分析各自的优缺点和适用的场合,并给出自动执行这些备份方案的脚本文件。

2、三种备份方案的比较

2.1 冷备份

冷备份是Oracle最简单的一种备份;执行冷备份前必须关闭数据库;然后使用操作系统实用工具或者第三方工具备份所有相关的数据库文件。

优点:能简单快速地备份。能简单快速地恢复。执行简单。缺点:必须关闭数据库,不能进行点恢复。

2.2 热备份

热备份是当数据库正在运行时进行数据备份的过程。执行热备份的前提是:数据库运行在可归档日志模式。适用于24X7不间断运行的关键应用系统。

优点:备份时数据库可以是打开的。热备份可以用来进行点恢复。初始化参数文件、归档日志在数据库正常运行时是关闭的,可用操作系统命令拷贝。

缺点:执行过程复杂。由于数据库不间断运行,测试比较困难。不能用操作系统实用工具拷贝打开的文件。必须使用Oracle提供的ocopy工具来拷贝打开的文件。热备份可能造成CPU、I/O过载,应在数据库不太忙时进行。

2.3 Export导出数据库对象

冷备份和热备份都备份物理数据库文件,因而被称为物理备份。而export备份的是数据库对象,因此被称为逻辑备份。

优点:能执行对象或者行恢复。备份和恢复速度更快。能够跨操作系统平台迁移数据库。数据库可一直运行。

缺点:export并不是冷备份和热备份的替代工具。冷、热备份可保护介质失效。export备份可保护用户或应用错误。

3、冷备份方案的实施

3.1 冷备份数据库的步骤

(1)关闭数据库;

(2)备份所有相关的数据库文件:初始化参数文件、控制文件(可用select

第1页

name from v$controlfile;列出所有控制文件)、数据文件(可用select name from v$datafile;列出所有数据文件)、Redo日志(可用select member from v$logfile;列出所有redo日志文件)、归档的Redo日志(可用select sequence#,first_time from v$loghist;列出所有归档redo日志文件的顺序号和产生时间)。

3.2 冷备份数据库的脚本文件

coldbackup.bat

4、热备份方案的实施

4.1 热备份数据库的前提条件:数据库运行在归档模式

Oracle数据库的redo日志记录在数据库上进行的所有活动。LGWR后台进程以一种循环方式写这些日志文件,从第一个redo日志到下一个,直到该组的最后一个,然后由从第一个日志写起。

在非归档模式下,当循环写到最后一个日志文件后,就重写第一个日志。因此,非归档模式下唯一的数据库恢复办法就是使用冷备份。

在归档模式下,当redo日志满时,一个ARCH后台进程就读取全部redo日志,然后将其写到归档日志。因此,可以使用热备份和点恢复。在归档日志模式下,如果归档日志目的空间已满,数据库活动将暂时停止,只有释放一些空间后,数据库才能继续运行。通常,background_dump_destination将产生一个跟踪文件来显示归档方面的问题。

Oracle数据库安装默认运行在非归档模式,通过以下步骤可以从非归档模式转换为归档模式:

(1)编辑参数文件init.ora,设置以下参数 # 设置数据库自动归档 log_archive_start = true

# 设置归档日志文件的目录,该目录必须事先已建立,并有大量可利用的空间

log_archive_dest_1=“location=%oracle_base% oradata%oracle_sid%archive” # 设置归档日志文件名的格式。%s表示顺序号,%t表示线程号。log_archive_format = “%oracle_sid%%T%S.ARC”(2)在sqlplus上运行以下命令 sqlplus>;connect sys/qazwsx as sysdba sqlplus>;shutdown immediate;sqlplus>;startup mount exclusive;sqlplus>;alter database archivelog;sqlplus>;alter database open;sqlplus>;shutdown immediate;(3)执行数据库冷备份

当数据库运行在归档模式下,数据库恢复过程要求使用冷备份时,归档日志是必需的。

(4)正常启动数据库,并确认数据库运行在归档模式 sqlplus>;startup;

第2页

sqlplus>;select * from v$database;其log_mode会显示数据库是否归档模式 sqlplus>;archive log list;也会显示数据库是否归档模式

如果Oracle数据库运行在归档模式,当进行数据库维护时,可能需要暂停数据库的归档,在完成维护后,再重新启动归档模式。通过以下步骤可以从归档模式转换为非归档模式:

sqlplus>;connect sys/qazwsx as sysdba sqlplus>;shutdown immediate;sqlplus>;startup mount exclusive;sqlplus>;alter database noarchivelog;sqlplus>;alter database open;

sqlplus>;select * from v$database;其log_mode会显示数据库是否归档模式 sqlplus>;archive log list;也会显示数据库是否归档模式

4.2 热备份数据库的步骤

(1)拷贝init.ora文件到备份目录(参数文件在数据库启动后处于关闭状态)。(2)将需要备份的某个表空间置于开始备份模式。

(3)使用ocopy.exe拷贝表空间,然后将该表空间置于结束备份模式中(ocopy.exe不能用于直接拷贝联机的数据库文件)。

(4)对数据库中的每个表空间执行步骤2和3(可以通过视图dba_tablespaces和v$datafile查看数据库中有哪些表空间和数据文件)。

(5)通过在sqlplus上执行archive log list命令获取当前的日志顺序号,从oldest online log sequence开始到current log sequence的联机redo日志应该是热备份的一部分。

(6)在sqlplus上执行alter system switch logfile;命令来强迫日志切换,以便所有的日志都被归档。

(7)使用alter database backup controlfile to trace;命令获得控制文件的一个备份,可以到%oracle_base%admin%oracle_sid%udump目录中寻找最新的跟踪文件,其中有重建控制文件的全部命令。

(8)使用windows nt的命令从%log_archive_dest%中拷贝归档的日志文件到备份目录。

4.3 热备份数据库的脚本文件

hotbackup.bat

5、使用export作为备份策略

5.1 export的命令选项说明

Oracle数据库的exp工具提供tables、users、full database、tablespace四种级别的导出方式,把指定的数据库内容导出到一个或者多个oracle二进制文件中,该文件只允许用imp工具来读取,imp的命令选项可用imp help=y来查阅。您可以通过输入 EXP 命令以及各种自变量来控制“导出”的运行方式。要指定参数,您可以使用关键字:

格式:EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)

第3页

实例:EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)或 TABLES=(T11,T12),如果 T1 是分区表 USERID 必须是命令行中的第一个参数。

下列关键字仅用于可传输的表空间

TRANSPORT_TABLESPACE 导出可传输的表空间元数据(N)TABLESPACES 将传输的表空间列表

5.2 export备份数据库的脚本文件

expbackup.bat

6、各种备份策略的自动执行方法

不管是冷备份、热备份,还是export备份;不管是unix平台,还是windows平台,都可以利用at命令来定时、自动执行上述备份策略。AT 命令安排在特定日期和时间运行命令和程序,在windows nt平台上必须首先运行调度服务(schedule),才能使用at命令。

AT命令用法如下:

AT [computername] [ [id] [/DELETE] | /DELETE [/YES]] AT [computername] time [/INTERACTIVE] [ /EVERY:date[,...] | /NEXT:date[,...]] “command”

computername 指定远程计算机。如果省略这个参数,会计划在本地计算机上运行命令。

id 指定给已计划命令的识别号。

/delete 删除某个已计划的命令。如果省略 id,计算机上所有已计划的命令都会被删除。

/yes 不需要进一步确认时,跟删除所有作业的命令一起使用。time 指定运行命令的时间。

/interactive 允许作业在运行时,与当时登录的用户桌面进行交互。

/every:date[,...] 每个月或每个星期在指定的日期运行命令。如果省略日期,则默认为在每月的本日运行。

/next:date[,...] 指定在下一个指定日期(如下周四)运行命令。如果省略日期,则默认为在每月的本日运行。

“command” 准备运行的 Windows NT 命令或批处理程序。举例如下:

(1)每周五19:00执行冷备份 at 19:00 /every:F “coldbak.cmd”(2)每周二20:00执行热备份 at 20:00 /every:T “coldbak.cmd”

(3)每周一、二、三、四、五21:00执行export备份 at 20:00 /every:M,T,W,Th,F “expbak.cmd”

第4页

第四篇:oracle rac和备份方案

ORACLE RAC及备份方案

ORACLE RAC 简介:

ORACLE RAC集群是实现多机共享数据库,以保证应用的高可用性。同时可以自动实现并行处理及均分负载,还能实现数据库在故障时的容错和无断点恢复。

集群内部的所有服务器共享存储,所有服务器都接入公共网络,通过集群唯一的别名对外形成逻辑上单一的数据库提供服务,对内实现集群数据库的高可用性、节点间的负载均衡和Failover(失败切换)。

逻辑结构:

集群纵向看是由存储、数据库集群、应用集群三部分组成,横向来看,是由多台应用服务器、数据库服务器和存储设备组成。

Intelnet应用集群应用服务器1应用服务器2应用服务器NORACLE RAC集群SCANRAC节点2心跳RAC节点1存储数据存储数据 物理结构:

RAC物理结构图。

应用集群应用服务器应用服务器Intelnet交换机ORACLE RAC集群RAC节点1存储RAC节点2

优势:

高可用性:

RAC 为数据中心的高可用性奠定了基础。它也是 Oracle 最高可用性架构不可或缺的一部分,为实现数据中心的最高可用性提供了最佳实践。RAC 还为高可用性数据管理提供了以下至关重要的关键特性: 可靠性:

Oracle 数据库以其可靠性而著称。RAC Clusters 消除了数据库服务器单点故障问题,从而使可靠性更上一层楼。如果一个实例发生故障,服务器池中的其余实例仍将保持运行状态。Oracle Clusterware 可监视所有 Oracle 进程,并能立即重启任何生故障的组件。恢复能力:

Oracle 数据库包含的许多特性有助于数据库轻松地从各类故障中恢复。如果Oracle RAC 数据库中的一个实例出现故障,服务器池中的另外一个实例将察觉到这一故障,随后自动进行故障恢复。利用快速应用程序通知(FAN)、快速连接故障切换(FCF)和透明应用程序故障切换(TAF)这三个功能,应用程序可以轻松地掩藏组件故障,使用户无法察觉。

错误检测:

Oracle Clusterware 可自动监视 Oracle RAC 数据库和其他 Oracle 进程(ASM、监听器等),并快速诊断环境中的问题。它还经常能在用户察觉之前自动完成故障恢复。利用快速应用程序通知(FAN),应用程序即可在集群组件出现故障时立即得到通知,以便在故障显现之前重新发布事务。

持续运行:

RAC Clusters 可在计划内和计划外停机期间提供持续的服务。如一台服务器(或一个实例)出现故障,数据库仍将保持运行状态,应用程序仍可访问数据。大多数数据库维护操作均可在不停机的情况下完成,并对用户保持透明。许多其他的维护任务都可以通过滚动方式完成,从而能最大限度地减少(甚至避免)应用程序停机。快速应用程序通知和快速连接故障切换可帮助应用程序满足对服务级别的要求。

可伸缩性:

RAC Clusters 提供了独一无二的应用程序伸缩技术。过去,当数据库服务器容量不足时,我们会使用容量更大的新服务器取而代之。随着服务器容量的增加,其成本也日益攀升。但 Oracle RAC 为数据库提供了增加容量的其他方法。通过 OracleClusterware 和 Oracle RAC 向服务器池中添加服务器时并不需要停机,并且,一旦启用新的实例,应用程序就可立即享有新增的容量。服务器池中的所有服务器必须使用同一操作系统和相同版本的 Oralce 软件,但不必具备相同的容量。如今,根据自己的需要选择服务器池的客户通常会选用特性不同(略有差别)的服务器。

备份

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

一、导出/导入(Export/Import)

利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。

1、简单导出数据(Export)和导入数据(Import)2、Oracle支持三种方式类型的输出:

(1)、表方式(T方式),将指定表的数据导出。

(2)、用户方式(U方式),将指定用户的所有对象及数据导出。(3)、全库方式(Full方式),瘵数据库中的所有对象导出。

数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。

3、增量导出/导入

增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。增量导出包括三种类型:

(1)、“完全”增量导出(Complete)即备份三个数据库,比如: exp user/password file=123.dmp(2)、“增量型”增量导出

备份上一次备份后改变的数据,比如:

exp user/password inctype=y record=y file=456.dmp 进行增量备份前,必须有个完全备份。

二、冷备份(COPY)冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是: 1、是非常快速的备份方法(只需拷文件)2、容易归档(简单拷贝即可)

3、容易恢复到某个时间点上(只需将文件再拷贝回去)4、能与归档方法相结合,做数据库“最佳状态”的恢复。5、低度维护,高度安全。但冷备份也有如下不足:

1、单独使用时,只能提供到“某一时间点上”的恢复。

2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。

3、若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。4、不能按表或按用户恢复。

如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括: 1、所有数据文件 2、所有控制文件 3、所有联机REDO LOG文件 4、Init.ora文件(可选)

值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。下面是作冷备份的完整例子。关闭数据库

(1)sqlplus /nolog(2)sql>connect /as sysdba(3)sql>shutdown immediate;用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件 重启Oracle数据库 sql>startup;

三、热备份(RMAN)热备份是在数据库运行的情况下,采用归档模式(archivelog mode)方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成: 1. 数据文件一个表空间一个表空间的备份。(1)设置表空间为备份状态(2)备份表空间的数据文件(3)回复表空间为正常状态 2. 备份归档log文件(1)临时停止归档进程

(2)log下那些在archive rede log目标目录中的文件(3)重新启动archive进程(4)备份归档的redo log文件

3. 用alter database bachup controlfile命令来备份控制文件 热备份的优点是:

1. 可在表空间或数据库文件级备份,备份的时间短。2. 备份时数据库仍可使用。3.可达到秒级恢复(恢复到某一时间点上)。4. 可对几乎所有数据库实体做恢复

5. 恢复是快速的,在大多数情况下爱数据库仍工作时恢复。

例: $rman target user/password backup full database format=’/../..’;热备份的不足是:

1. 不能出错,否则后果严重

2. 若热备份不成功,所得结果不可用于时间点的恢复

3. 因难于维护,所以要特别仔细小心,不允许“以失败告终”。

第五篇:sybase数据库自动备份方案(forwindows)

2.2版财务软件、3.0集中核算版财务软件自动备份方案

作者:yaya

感谢:scott 大力支持

准备工作:

1、下载WinRAR3.0压缩工具(假设安装在D盘)

2、检查Sybase BCKServer(sybase备份服务)服务是否启动

3、Task Scheduler(计划任务)服务是否启动

4、创建备份用文件夹,本文以E:backup 为例

5、用记事本编写一个sql文件,文件名为backup.sql,内容如下: use master go dump database cwbase1 to “e:backupback.dat” go exit 并将此文件拷贝至D:sybase文件夹下(假设sybase装在D盘)

操作过程:

一、数据库自动备份

1、点击我的电脑-控制面板-计划任务

2、添加“计划任务”,应用程序选择D:Sybasebinisql.exe(假设sybase装在D盘)

3、选择

每天

序1

4、输入服务器系统管理员密码(进入Windows2000的密码)

5、选择打开高级属性选项

6、如图,在运行里输入isql.exe-Usa-Paaaaaa-id:sybasebackup.sql(-U是指用户,后面紧跟数据库管理员用户名,默认是sa,-P是密码,后面紧跟数据库管理员密码,目前系统默认为空,必须设置上密码,可以通过2.2版本的帐套管理修改数据库管理员密码,本文以aaaaaa为例;-i,是指路径,后面紧跟要执行的sql语句路径)

7、选择日程安排,选择一个不工作的时段启动计划任务。

自动备份功能至此结束,然后我们借用WinRAR自带的RAR工具将备份好的数据压缩并按3 照日期命名保存。

二、自动压缩并按日期命名

1、再添加一个计划任务,运行栏输入 “D:Program FilesWinRARRar.exe” a-ag-df e:backupback e:backupback.dat

2、将该任务定义为每天自动启动,要比数据库自动备份任务延迟30分钟以上。即可实现自动将备份数据库压缩并删除原文件生成以日期命名的文件。

3、定期将该文件夹下的文件刻录成光盘永久保存。

数据恢复时,启动sql advantage,执行 load database cwbase1 from “e:backupback.dat” 即可

oracle数据库自动备份方案
TOP