日期:2014-05-16  浏览次数:20549 次

ORACLE备份的方法
备份的方法
??? ORACLE数据库有三种标准的备份。导出/导入(EXPORT/IMPORT) 、冷备份、热备份。
??? 导出备份是一种逻辑备份,这种方法包括读取一系列的数据库日志,并写入文件中,这些日志的读取与其所处位置无关。
??? 冷备份和热备份是物理备份(也称低级备份),它涉及到组成数据库的文件,但不考虑逻辑内容。
??? 下面我们分别介绍一下这三种备份方法及其特点:
??? (一)、导出/导入(EXPORT/IMPORT)
??? EXPORT/IMPORT是用来将ORACLE中数据移出/移入数据库。
??? 1、EXPORT将数据库中数据备份成一个二进制系统文件称为“导出转储文件”(EXPORT DUMP FILE),并将重新生成数据库写入文件中。
??? 它有三种模式:
?????? a.用户模式:导出用户所有对象以及对象中的数据;
?????? b.表模式:导出用户所有表或者指定的表;
?????? c.整个数据库:导出数据库中所有对象。
??? 它的备份有三种类型:
?????? a.完全型(COMPLETE EXPORT):备份整个数据库;
?????? b.积累型(COMULATIVE ERPORT):备份上一次积累型备份所改变的数据;
?????? c.增量型(INCREAMENTAL EXPORT):备份上一次备份后改变的数据。
??? EXPORT 的命令可以交互式进行,各参数的具体含义见附录。
??? 在进行导出备份时我们要考虑一点问题,那就是导出的一致性,在导出过程 中导出每读一次就读取一个表,因而尽管导出是在一个特点时自己开始的,但不同的表读取的时间不同,因此,导出开始读一个表时,此时表中的数据才是导出的数据,这样当大多数表按内部关键字和外部关键字相互联系时,在导出过程中这些相关联表的改变就会导致导出的不一致性,要避开这个,我们可以将导出过程安排在不对表操作的时候进行。另外,当ORACLE中RESTRICTEP CONSISTENT 选项就可以保证导出数据一致性。

??? 2、IMPORT导入:
??? 导入的过程是导出的逆过程,这个命令先读取导出来的导出转储二进制文件,并运行文件,恢复对象用户和数据。
??? IMPORT命令执行的方法和EXPORT方案有关。
??? 1、如果EXPORT所实施的是完全型方案(FULL)则在IMPORT时所有的数据对象,包括表空间,数据文件,用户都会在导入时创建,但考虑到数据库中的物理布局,预先创建表空间和用户是有用的。
??? 2、如果EXPORT使用的是INCREMENTAL/CUMULATIVE方式,则需要预先设置好表空间、用户、数据文件。
(二):冷备份
??? 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。
?
备份的方法
    ORACLE数据库有三种标准的备份。导出/导入(EXPORT/IMPORT) 、冷备份、热备份。
    导出备份是一种逻辑备份,这种方法包括读取一系列的数据库日志,并写入文件中,这些日志的读取与其所处位置无关。
    冷备份和热备份是物理备份(也称低级备份),它涉及到组成数据库的文件,但不考虑逻辑内容。
    下面我们分别介绍一下这三种备份方法及其特点:
    (一)、导出/导入(EXPORT/IMPORT)
    EXPORT/IMPORT是用来将ORACLE中数据移出/移入数据库。
    1、EXPORT将数据库中数据备份成一个二进制系统文件称为“导出转储文件”(EXPORT DUMP FILE),并将重新生成数据库写入文件中。
    它有三种模式:
       a.用户模式:导出用户所有对象以及对象中的数据;
       b.表模式:导出用户所有表或者指定的表;
       c.整个数据库:导出数据库中所有对象。
    它的备份有三种类型:
       a.完全型(COMPLETE EXPORT):备份整个数据库;
       b.积累型(COMULATIVE ERPORT):备份上一次积累型备份所改变的数据;
       c.增量型(INCREAMENTAL EXPORT):备份上一次备份后改变的数据。
    EXPORT 的命令可以交互式进行,各参数的具体含义见附录。
    在进行导出备份时我们要考虑一点问题,那就是导出的一致性,在导出过程 中导出每读一次就读取一个表,因而尽管导出是在一个特点时自己开始的,但不同的表读取的时间不同,因此,导出开始读一个表时,此时表中的数据才是导出的数据,这样当大多数表按内部关键字和外部关键字相互联系时,在导出过程中这些相关联表的改变就会导致导出的不一致性,要避开这个,我们可以将导出过程安排在不对表操作的时候进行。另外,当ORACLE中RESTRICTEP CONSISTENT 选项就可以保证导出数据一致性。

    2、IMPORT导入:
    导入的过程是导出的逆过程,这个命令先读取导出来的导出转储二进制文件,并运行文件,恢复对象用户和数据。
    IMPORT命令执行的方法和EXPORT方案有关。
    1、如果EXPORT所实施的是完全型方案(FULL)则在IMPORT时所有的数据对象,包括表空间,数据文件,用户都会在导入时创建,但考虑到数据库中的物理布局,预先创建表空间和用户是有用的。
    2、如果EXPORT使用的是INCREMENTAL/CUMULATIVE方式,则需要预先设置好表空间、用户、数据文件。
 (二):冷备份
    冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。
    数据库使用的每个文件都被备份下来,这些文件包括:
    ☆所有数据文件
    ☆所有控制文件
    ☆所有联机REDO LOG 文件
    ☆INIT.ORA文件(可选)
    值得注意的是冷备份必须是数据库关闭的情况下完成,当数据库开着的时候,执行数据库文件系统备份无效。
    作冷备份一般步骤是:
       1:正常关闭要备份的实例(instance);
       2: 备份整个数据库到一个目录
       3:启动数据库
         1:  SQLDBA>connect internal
               SQLDBA>shutdown normal
         2: SQLDBA>! cp <file> <backup directory>
              或
              SQLDBA>!tar cvf /dev/rmt/0 /wwwdg/oracle
         3:  SQLDBA>startup


??? 数据库使用的每个文件都被备份下来,这些文件包括:
??? ☆所有数据文件
??? ☆所有控制文件
??? ☆所有联机REDO LOG 文件
??? ☆INIT.ORA文件(可选)
??? 值得注意的是冷备份必须是数据库关闭的情况下完成,当数据库开着的时候,执行数据库文件系统备份无效。
??? 作冷备份一般步骤是:
?????? 1:正常关闭要备份的实例(instance);
?????? 2: 备份整个数据库到一个目录
?????? 3:启动数据库
???????? 1:? SQLDBA>connect internal
?????????????? SQLDBA>shutdown normal
???????? 2: SQLDBA>! cp <file> <backup directory>
????????????? 或
????????????? SQLDBA>!tar cvf /dev/rmt/0 /wwwdg/oracle
???????? 3:? SQLDBA>startup

三)热备份(ACHIRELOG)
??? 数据库需要二十四小时运行,而且随时有新的数据加入.数据丢失将影响整个公司.采用archivelog mode物理备份.
?设置数据库为automatic archivelog mode,
???????? #su - oracle
???????? %svrmgrl
???????? svrmgrl>connect internal
??????