ASM

自動存儲管理

自動存儲管理(ASM,Automatic Storage Management)

ASM 是 Oracle 資料庫 10g 中一個非常出色的新特性,它以平台無關的方式提供了文件系統、邏輯卷管理器以及軟體 RAID(磁碟陣列)等服務。ASM 可以條帶化和鏡像磁碟,從而實現了在資料庫被載入的情況下添加或移除磁碟以及自動平衡 I/O 以刪除“熱點”。它還支持直接和非同步的 I/O 並使用 Oracle9i 中引入的 Oracle 數據管理器 API(簡化的 I/O 系統調用介面)。

基本介紹


ASM 不是一個通用的文件系統,並只能用於 Oracle 數據文件、重做日誌以及控制文件。ASM 中的文件既可以由資料庫自動創建和命名(通過使用 Oracle 管理文件特性),也可以由 DBA 手動創建和命名。由於操作系統無法訪問 ASM 中存儲的文件,因此對使用 ASM 文件的資料庫執行備份和恢復操作的唯一途徑就是通過恢復管理器 (RMAN)。
ASM 作為單獨的 Oracle 實例實施,只有它在運行時其他資料庫才能訪問它。在 Linux 上,只有運行 OCSSD 服務(由 Oracle 通用安裝程序默認安裝)才能使用 ASM。ASM 需要的內存不多:對大多數系統,只需 64 MB。
安裝 ASM
在 Linux 平台上,ASM 可以使用原始設備,或通過 ASMLib 介面管理的設備。出於易於使用和性能方面的原因,Oracle 建議在原始設備上使用 ASMLib。ASMLib 現在可以從 OTN 免費下載。本部分逐步講解使用 ASMLib 配置一個簡單 ASM 實例和構建一個使用 ASM 進行磁碟存儲的資料庫的全過程。
確定所需的 ASMLib 版本
ASMLib 以三個 Linux 程序包組成的程序包集提供:
oracleasmlib - ASM 庫
oracleasm-support - 用於管理 ASMLib 的實用程序
oracleasm - ASM 庫的內核模塊
每個 Linux 發行套件都有其自己的 ASMLib 程序包集。在每個發行套件中,每個內核版本都有一個相應的 oracleasm 程序包。