技术开发 频道

Oracle数据库的备份之实现热备份

【IT168技术文档】

    热备份即数据库在开启(正常运行)的情况下并以Archive log方式运行时,进行的数据库备份。热备份可以给 Oracle用户提供一个不间断的运行环境。热备份又分在线备份和离线备份,在线和离线备份的惟一区别是数据库的tablespace是否在线,主要表现在Oracle用户可以对在线备份的tablespace进行数据操作,而离线备份的tablespace暂时不能接受用户的数据操作。我们可以根据系统的实际情况选择相应的热备份。

    因为热备份通过操作系统命令备份物理文件将消耗大量系统资源,因此通常都是安排在用户访问频率较低的时候(如夜间)进行。
    1. 查询动态性能示图v$database,并确定数据库是工作在Archive模式下的: 

SQL> select log_mode from v$database; LOG_MODE ------------ ARCHIVELOG

    或者通过下述方法查看数据库的归档信息:

SQL> archive log list Database log mode Archive Mode Automatic archival Enabled . . . . . .

    如果Database log mode显示为"Archive Mode",则数据库工作在归档模式下。否则,需要修改,如:

SQL>shutdown immediate SQL>startup mount SQL> alter database archivelog; SQL> alter database open;

    如果Automatic archival显示为"Enabled",则数据库归档方式为自动归档。否则需要手工归档,或者将归档方式修改为自动归档,如:正常shutdown数据库,在参数文件中init<sid>.ora中加入如下参数 

SQL>shutdown immediate

    修改init<sid>.ora:

LOG_ARCHIVE_START=TRUE LOG_ARCHIVE_DEST1=ORACLE_HOME/admin/o816/arch SQL>startup

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

    注意:当数据库处在ARCHIVE模式下时,一定要保证指定的归档路径可写,否则数据库就会挂起,直到能够归档所有归档信息后才可以使用。另外,为创建一个有效的备份,当数据库在创建时,必须履行一个全数据库的冷备份, 就是说数据库需要运行在归档方式, 然后正常关闭数据库,备份所有的数据库组成文件。这一备份是整个备份的基础, 因为该备份提供了一个所有数据库文件的拷贝。

0
相关文章