oracle 数据库备份脚本 ORACLE数据库备份与恢复详解[通俗易懂]

03/14 23:17:19 来源网站:seo优化-辅助卡盟平台

通常情况下,DBA们所要做的,就是按照企业指定或者是自己习惯的标准(如果是自己指定的标准,建议写好计划说明),一般,我们采用普遍认可的下面的方式进行每天的增量备份:

Mon: 完全备份(A)

Tue: 增量导出(B)

Wed:增量导出(C)

Thu: 增量导出(D)

Fri: 累计导出(E)

Sat: 增量导出(F)

Sun: 增量导出(G)

这样,我们可以保证每周数据的完整性,以及恢复时的快捷和最大限度的数据损失。恢复的时候,假设事故发生在周末,DBA可按这样的步骤来恢复数据库:

第一步:用命令CREATE DATABASE重新生成数据库结构;

第二步:创建一个足够大的附加回滚。

第三步:完全增量导入A:

imp system/manager inctype=RESTORE FULL=y FILE=A

第四步:累计增量导入E:

imp system/manager inctype=RESTORE FULL=Y FILE=E

第五步:最近增量导入F:

imp system/manager inctype=RESTORE FULL=Y FILE=F

通常情况下,DBA所要做的导入导出备份就算完成,只要科学的按照规律作出备份,就可以将数据的损失降低到最小,提供更可靠的服务。另外,DBA最好对每次的备份做一个比较详细的说明文档,使得数据库的恢复更加可靠。

$B 物理备份之冷备份(条件-NonArchiveLog):

当数据库可以暂时处于关闭状态时,我们需要将它在这一稳定时刻的数据相关文件转移到安全的区域,当数据库遭到破坏,再从安全区域将备份的数据库相关文件拷 贝回原来的位置,这样,就完成了一次快捷安全等数据转移。由于是在数据库不提供服务的关闭状态,所以称为冷备份。冷备份具有很多优良特性,比如上面图中我 们提到的,快速,方便,以及高效。一次完整的冷备份步骤应该是:

1,首先关闭数据库(shutdown normal)

2,拷贝相关文件到安全区域(利用操作系统命令拷贝数据库的所有的数据文件、日志文件、控制文件、参数文件、口令文件等(包括路径))

3,重新启动数据库(startup)

以上的步骤我们可以用一个脚本来完成操作:

su – oracle select log_mode from v$database;

如果不是Archive模式

则设定数据库运行于归档模式下:SQL>shutdown immediate

SQL>startup mount

SQL> alter database archivelog;

SQL> alter database open;

如果Automaticarchival显示为“Enabled”,则数据库归档方式为自动归档。否则需要手工归档,或者将归档方式修改为自动归档,如:

正常shutdown数据库,在参数文件中init.ora中加入如下参数

SQL>shutdown immediate

修改init.ora:

LOG_ARCHIVE_START=TRUE

LOG_ARCHIVE_DEST1=ORACLE_HOME/admin/o816/arch(归档日值存放位置可以自己定义)

SQL>startup

然后,重新启动数据库,此时Oracle数据库将以自动归档的方式工作在Archive模式下。其中参数LOG_ARCHIVE_DEST1是指定的归 档日志文件的路径,建议与Oracle数据库文件存在不同的硬盘,一方面减少磁盘I/O竞争,另外一方面也可以避免数据库文件所在硬盘毁坏之后的文件丢 失。归档路径也可以直接指定为磁带等其它物理存储设备,但可能要考虑读写速度、可写条件和性能等因素。

    暂无相关资讯
oracle 数据库备份脚本 ORACLE数据库备份与恢复详解[通俗易懂]