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