oracle 热备份

1首先在备份磁盘上创建一个名为weiweiBackup的目录,而后在weiweiBackup目录下建立两个目录:disk3和disk4。
二、以sys登入oracle数据库
SQL> show user
SQL> select * from v$backup;

    FILE# STATUS                CHANGE# TIME
---------- ------------------ ---------- --------------
        1 NOT ACTIVE                  0
        2 NOT ACTIVE                  0
        3 NOT ACTIVE                  0
        4 NOT ACTIVE                  0
        5 NOT ACTIVE                  0
        6 NOT ACTIVE                  0
        7 NOT ACTIVE                  0
NOT ACTIVE显示说明全部的数据文件都没有处于备份状态,而后显示全部的数据文件

SQL> col file_name for a60
SQL> set pagesize 30
SQL> select file_id,file_name from dba_data_files;
  FILE_ID FILE_NAME
---------- ------------------------------------------------------------
        4 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\USERS01.DBF
        3 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSAUX01.DBF
        2 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\UNDOTBS01.DBF
        1 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSTEM01.DBF
        5 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\EXAMPLE01.DBF
        6 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\YANSHU01.DBF
        7 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\YANSHU02.DBF
我使用7号数据文件YANSHU02.DBF做为联机备份的对象,下面开始作备份
SQL> shutdown
SQL> startup mount
SQL> alter database archivelog
SQL> archive log list;
SQL> alter database open;
SQL> alter tablespace YANSHU02 begin backup; (设置表空间YANSHU01为备份状态)
SQL> host copy  D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\YANSHU02.DBF D:\WEIWEIBackup\disk4   (进行备份)
SQL> select * from v$backup;   (查数据文件的状态)
    FILE# STATUS                CHANGE# TIME
---------- ------------------ ---------- --------------
        1 NOT ACTIVE                  0
        2 NOT ACTIVE                  0
        3 NOT ACTIVE                  0
        4 NOT ACTIVE                  0
        5 NOT ACTIVE                  0
        6 NOT ACTIVE                  0
        7 ACTIVE                 903871 08-6月 -11

SQL>  alter tablespace YANSHU02 end backup;   (将表空间pioneer_index从新设置为非备份状态)
SQL> select * from v$backup;   (再次查数据文件的状态)
    FILE# STATUS                CHANGE# TIME
---------- ------------------ ---------- ------------
        1 NOT ACTIVE                  0
        2 NOT ACTIVE                  0
        3 NOT ACTIVE                  0
        4 NOT ACTIVE                  0
        5 NOT ACTIVE                  0
        6 NOT ACTIVE                  0
        7 NOT ACTIVE             903871 08-6月 -11
此时,能够查看操做系统文件是否生成。
到此为止,表空间的联机备份就已经完成了。

3联机热备份的应用实例
对以下常常变化的表空间作联机备份:USERS,SYSTEM,YANSHU01,YANSHU02。


SQL> col file_name for a55;
SQL> col tablespace_name for a20;
SQL> set line 120;
SQL> select file_id,file_name,tablespace_name from dba_data_files;
    FILE_ID FILE_NAME                                               TABLESPACE_NAME
---------- ------------------------------------------------------- -------------------
        4 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\USERS01.DBF         USERS
        3 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSAUX01.DBF       SYSAUX
        2 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\UNDOTBS01.DBF     UNDOTBS1
        1 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSTEM01.DBF       SYSTEM
        5 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\EXAMPLE01.DBF     EXAMPLE
        6 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\YANSHU01.DBF              
        7 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\YANSHU02.DBF                                

SQL> select * from v$backup;

    FILE# STATUS                CHANGE# TIME
---------- ------------------ ---------- --------------
        1 NOT ACTIVE                  0
        2 NOT ACTIVE                  0
        3 NOT ACTIVE                  0
        4 NOT ACTIVE                  0
        5 NOT ACTIVE                  0
        6 NOT ACTIVE                  0
        7 NOT ACTIVE             903871 08-6月 -11

而后将全部与联机备份有关的 命令写入记事本,最后以hotback.sql为文件保存。

connect sys/xuwei as sysdba
alter system archive log start;
alter tablespace users begin backup;
host copy D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\USERS01.DBF D:\WEIWEIBackup\
alter tablespace users end backup;
alter system archive log current;
alter tablespace system begin backup;
host copy D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSTEM01.DBF D:\WEIWEIBackup\
alter tablespace system end backup;
alter system archive log current;
alter tablespace YANSHU01 begin backup;
host copy D:\DEMO\YANSHU01.DBF D:\WEIWEIBackup\disk3\
alter tablespace YANSHU01 end backup;
alter system archive log current;
alter tablespace YANSHU02 begin backup;
host copy D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\YANSHU02.DBF D:\WEIWEIBackup\disk4\
alter tablespace YANSHU02 end backup;
alter system archive log current;

以后在SQL*Plus下运行该脚本文件hotback.sql进行脱机备份
SQL> @E:\hotback.sql
已链接。
系统已更改。
表空间已更改。
表空间已更改。
系统已更改。
表空间已更改。
表空间已更改。
系统已更改。
表空间已更改。
表空间已更改。
系统已更改。
表空间已更改。
表空间已更改。
系统已更改。

以后再使用SQL> select * from v$backup;查数据文件的状态
SQL> select * from v$backup;
    FILE# STATUS                CHANGE# TIME
---------- ------------------ ---------- --------------
        1 NOT ACTIVE             911344 08-6月 -11
        2 NOT ACTIVE                  0
        3 NOT ACTIVE                  0
        4 NOT ACTIVE             911327 08-6月 -11
        5 NOT ACTIVE                  0
        6 NOT ACTIVE             911378 08-6月 -11
        7 NOT ACTIVE             911399 0

联机热备份的特色sql

联机热备份的要求:数据库必须运行在归档模式 数据库

特色:只要数据库运行在归档模式,就能够进行联机热备份,并且还能够进行表空间一级或数据文件一级的联机备份。在进行联机热备份时,不用关闭数据库,全部的数据库操做能够照常进行,并且想备份那个表空间或数据文件就能够备份那个。oracle

相关文章
相关标签/搜索