Oracle數據庫的安全策略
Oracle是關系型數據庫管理系統,它功能強大、性能卓越,在當今大型數據庫管理系統中占有重要地位。在我們開發的一MIS系統中,選用了Oracle7.3數據庫。在正常情況下,Oracle數據庫會保證數據的安全、穩定,為用戶提供正確的數據,但由於計算機系統的故障(硬件故障、軟件故障、網絡故障和系統故障)影響數據庫系統的操作,影響數據庫中數據的正確性,甚至破壞數據庫,使數據庫中全部或部分數據丟失,整個系統都將處於癱瘓狀態。因此,如何保證Oracle數據庫的安全就成為整個MIS系統安全的重要組成部分。
Oracle數據庫的安全策略包括數據庫的備份和恢復、用戶角色管理。
一、數據庫備份所使用的結構
Oracle數據庫使用幾種結構來保護數據:數據庫後備、日志、回滾段和控制文件。
1.數據庫後備是由構成Oracle數據庫的物理文件的操作系統後備所組成。當介質故障時進行數據庫恢復,利用後備文件恢復毀壞的數據文件或控制文件。
2.每一個Oracle數據庫實例都提供日志,記錄數據庫中所作的全部修改。每一個運行的Oracle數據庫實例相應地有一個在線日志,它與Oracle後台進程LGWR一起工作,立即記錄該實例所作的全部修改。歸檔(離線)日志是可選擇的,一個Oracle數據庫實例一旦在線日志填滿後,可形成在線日志歸檔文件。歸檔的在線日志文件被唯一標識並合並成歸檔日志。
3.回滾段用於存儲正在進行的事務(為未提交的事務)所修改值的老值,該信息在數據庫恢復過程中用於撤消任何非提交的修改。
4.控制文件,一般用於存儲數據庫的物理結構的狀態。控制文件中某些狀態信息在實例恢復和介質恢復期間用於引導Oracle。
二、在線日志
一個Oracle數據庫的每一實例有一個相關聯的在線日志。一個在線日志由多個在線日志文件組成。在線日志文件(online redo log file)填入日志項(redo entry),日志項記錄的數據用於重構對數據庫所作的全部修改。
三、歸檔日志
Oracle要將填滿的在線日志文件組歸檔時,則要建立歸檔日志(archived redo log)。其對數據庫備份和恢復有下列用處:
1.數據庫後備以及在線和歸檔日志文件,在操作系統和磁盤故障中可保證全部提交的事物可被恢復。
2.在數據庫打開和正常系統使用下,如果歸檔日志是永久保存,在線後備可以進行和使用。
數據庫可運行在兩種不同方式下:NOARCHIVELOG方式或ARCHIVELOG 方式。數據庫在NOARCHIVELOG方式下使用時,不能進行在線日志的歸檔。如果數據庫在ARCHIVELOG方式下運行,可實施在線日志的歸檔。
四、Oracle的備份特性
Oracle備份包括邏輯備份和物理備份。
1.邏輯備份
數據庫的邏輯備份包含讀一個數據庫記錄集和將記錄集寫入文件。
(1)輸出(Export)輸出可以是整個數據庫、指定用戶或指定表。
(2)輸入(Import)輸入將輸出建立的二進制轉儲文件讀入並執行其命令。
2.物理備份
物理備份包含拷貝構成數據庫的文件而不管其邏輯內容。
Oracle支持兩種不同類型的物理文件備份:脫機備份(offline backup)和聯機備份(online backup)。
(1) 脫機備份
脫機備份用在當數據庫已正常關閉,數據庫處於"offline"時,要備份下列文件: