11gR2集羣件任務角色分離(Job Role Separation)簡介

在這篇文章中,咱們將對11gR2 的新特性任務角色分離(Job Role Separation)進行介紹。linux

在11gR2,操做系統用戶grid成爲了集羣件(GI)的owner,而且ASM成爲了集羣件的一部分,因此grid用戶也成爲了ASM 磁盤的owner。數據庫

一般有3種方式配置ASM磁盤,asmlib, 裸設備和塊設備。oracle

1. asmlib操作系統

配置asm 磁盤的owner和group。blog

# /etc/init.d/oracleasm configureget

…..it

Default user to own the driver interface : gridio

Default group to own the driver interface : asmadminasm

……集羣

查看ASM磁盤的設置:

ls –l /dev/oracleasm/disks

brw-rw---- 1 grid asmadmin 8, 33 Jul 2 18:21 DATA

注意: 從linux 2.6 內核開始,塊設備的權限和路徑配置在重啓以後再也不被保留,除非使用udev 建立規則文件固定。例如塊設備/dev/sda在重啓以後可能變成/dev/sdb。若是使用udev,那麼在添加新磁盤時,須要修改規則文件以確保設備名和權限在重啓以後不發生改變。

若是使用asmlib, 只須要肯定做爲asm 磁盤的範圍,asmlib會維護磁盤的標籤和權限,以便在操做系統升級後磁盤標籤仍然有效。 因此,asmlib 和udev實現的功能基本是相同的。

2. 裸設備。按照如下設置配置磁盤的owner和group:

crw-rw---- 1 grid asmadmin 162, 1 Jul 18 21:40 /dev/raw/raw1

3.塊設備。按照如下設置配置磁盤的owner和group:

# chown grid:asmadmin /dev/rhdiskn

# chmod 660 /dev/rhdiskn

接下來解釋任務角色分離中oracle可執行文件的權限和group 設置。

在上面的例子中,ASM磁盤的group是asmadmin,這意味着組asmadmin中的成員能夠對asm磁盤進行讀寫操做,固然grid用戶也能夠。而其餘用戶,例如oracle,則須要經過oracle_home/bin下的oracle可執行文件訪問asm 磁盤。

這意味着oracle可執行文件不只須要黏着位(stick bit),還須要是設置group 爲asmadmin。當使用srvctl(srvctl start database/instance)啓動數據庫時oracle會自動調用<rdbms_home>/bin/setasmgid設置oracle 可執行文件的group爲asmadmin。

因此,若是問題出如今oracle不能訪問asm 磁盤,須要檢查如下的內容。固然因爲oracle 能夠直接訪問asm磁盤,而不須要經過asm 實例,因此問題的症狀可能不少,甚至ora-600錯誤均可能是這個緣由。

1. Asmlib標識過的磁盤的權限和group設置

brw-rw---- 1 grid asmadmin 8, 49 Dec 31 12:14 DATA

2. 裸設備或者塊設備的權限和group設置

crw-rw---- 1 grid asmadmin 162, 1 Jul 18 21:40 /dev/raw/raw1

3. RDBMS和GI 主目錄下的oracle可執行文件的權限和group設置

rdbms_home : -rwsr-s--x 1 oracle asmadmin 188832561 Oct 30 21:22 oracle

gi_home: -rwsr-s--x 1 grid oinstall 166530359 Nov 16 14:31 oracle

注意黏着位(stick bit)的設置

最後咱們對11gR2中安裝oracle 集羣件和數據庫軟件中的一些group進行簡單的介紹。

* oinstall : 這個group是GI 和RDBMS軟件的擁有者。

* dba : 這個group是數據庫的dba group, 對數據庫具備最高權限。

* asmdba : 這個group是asm實例的dba group, 能夠啓動/關閉實例,掛載/卸載asm 磁盤組。

* asmadmin: 這個group是asm的管理員group,它包含asmdba的所有權限,同時還能夠增長/刪除 asm 磁盤,磁盤組等。

相關文章
相關標籤/搜索