Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104609340
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-04-04 13:29:22

来源:赛迪网    作者:wang

由于Oracle数据库备份有三种方式,每种方式具有不同的恢复特性,因此应集成数据库与文件系统备份,集成逻辑备份和物理备份。

一、备份策略

1.在操作系统级,使用大容量磁盘阵列,通过磁盘映像技术使每一个数据库文件自动分布于每个物理磁盘。这样,当某个磁盘出现物理损坏时,操作系统会自动引发映像磁盘来取代失效的磁盘,保证数据库的正常运行。

由于我们使用的是双服务器,因此在另一服务器上保留一个备份数据库。备份数据库与正在使用的数据库具有相同的参数状态,这样在数据库故障中,只需作必须的最少恢复,最大限度地缩短了恢复时间。

在多个不同的物理磁盘上保持多个控制文件的备份。控制文件在数据库恢复期间用于引导Oracle,因此保持多个控制文件的备份,可以确保在出现磁盘故障后,能有可用的控制文件用于数据库恢复。

使数据库运行在ARCHIVELOG(归档)方式下,归档日志存放于另一映像的逻辑磁盘上。

每晚进行一次联机备份操作,备份所有数据文件、所有归档日志文件、一个控制文件。

每周进行一次输出(Export)操作。

二、恢复策略

1.实例失败

从实例失败中恢复是自动进行的。实例失败一般是由服务器失败引起的,当数据库实例失败后,重新启动服务器,启动数据库,Oracle检查数据文件和联机日志文件,并把所有文件同步到同一个时间点上。

2.磁盘失败

如果丢失的是控制文件,只要关闭数据库,从保留有控制文件的地方拷贝一份即可。

如果丢失的是数据文件,可用前一天晚上的联机备份进行恢复,步骤如下:

(1)从备份中把丢失的文件存在原来位置。

(2)加载数据库

(3)恢复数据库

(4)打开数据库

3.错误删除或修改对象

 

在这种情况下,一般希望能追溯返回到错误发生前的那个时间点上。这叫做时间点恢复。完成恢复的步骤如下:

(1)从当前数据库输出(Export),输入(Import)到备用数据库,使备用数据库与当前数据库保持一致。

(2)向前滚动备用数据库到错误发生前的那个时间点。

(3)从备用数据库输出受错误影响的逻辑对象。

(4)使用上一步产生的输出文件输入那些受影响的对象到当前数据库。

三、用户角色管理

1.对所有客户端按工作性质分类,分别授予不同的用户角色。

2.对不同的用户角色,根据其使用的数据源,分别授予不同的数据库对象存取权限。

基于以上的安全策略,可以防止非法用户访问数据库,限制合法用户操纵数据库的权限;可以使数据库在故障发生后,不会丢失任何数据,并能使数据库迅速恢复到故障发生前的那一时间点上,最大限度的保证数据的安全和整个系统的连续运行。

阅读(124) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~