數據庫的備份操作是在整個項目運行中最重要的工作之一。
一、數據的導出和導入
數據的導出和導入是針對於一個用戶的備份操作,可以按照如下的方式完成:
1、 數據的導出
- 在硬盤上建立一個文件夾:c:\backup;
- 輸入exp指令;
- 輸入用戶名和密碼;
- 設置導出文件的名稱:導出文件: EXPDAT.DMP;
-
-
-
2、 數據的導入
- 先將表刪除干凈;
- 進入到導出文件所在的文件夾之中:c:\backup;
- 輸入imp指令;
- 輸入用戶名和密碼;
- 導入整個導出文件 (yes/no): no > yes
但是以上的操作只是做為一個演示,因為這種備份操作本身只適合數據量小的情況,如果數據量較大的話,這種操作是會損耗性能的,而且時間也會很長,要想解決大數據量的問題只能對數據分區操作。
二、數據表的冷備份
在數據操作之中,有可能有些用戶不會進行事務的提交,那么在這種情況下很可能無法進行完整的備份操作,而所謂的冷備份指的就是在閉數據庫實例的情況下進行數據庫備份操作的實現。
如果要進行冷備份,則需要備份出數據庫中的一些幾個核心內容:
- 控制文件,指的是控制整個Oracle數據庫的實例服務的核心文件,直接通過”v$controlfile”找到;
- 重做日志文件,可以進行數據的災難恢復,直接通過”v$logfile”找到;
- 數據文件,表空間文件,通過”v$datafile”和”v$tablespace”找到;
- 核心操作的配置文件(pfile),通過”SHOW PARAMETER pfile”找到;
從實際的Oracle的部署來講,所有的文件為了達到IO的平衡操作,要分別保存在不同的硬盤上。
確定了要備份的文件之后,下面按照如下的步驟查找:
1、 使用超級管理員登錄
CONN sys/change_on_install AS SYSDBA;
2、 查找所有的控制文件目錄
SELECT * FROM v$controlfile;
3、 備份重做日志文件
SELECT * FROM v$logfile;
4、 查找表空間文件
SELECT * FROM v$tablespace; SELECT * FROM v$datafile;
5、 找到pfile文件
SHOW PARAMETER pfile;
6、 關閉數據庫實例
SHUTDOWN IMMEDIATE;
7、 將所有查找到的數據備份到磁盤上;
8、 啟動數據庫實例
STARTUP;
一般一個專業的DBA開發人員,必須熟練以上的步驟,這樣才可能在出現災難之后進行及時的恢復。