Oracle 12c 創建共享 ORACLE_HOME的ACFS文件系統

轉自:http://blog.itpub.net/20482996/viewspace-1291876/

背景介紹:

ORACLE 的集羣文件系統ACFS (ASM Cluster FileSystem) 是Oracle 在11.2 之後引入的新特性,可在ASM磁盤組上創建卷(volumn)進而創建文件系統(ACFS),可存放的目標文件支持二進制格式的文件,這樣我們就可以把ORACLE_HOME 目錄放在ACFS上,此時多個RAC 節點共享一個ORACLE_HOME, 在升級打patch的時候非常方便。 本文就來實現如果創建共享ORACLE_HOME的ACFS。

前提: ORACLE RAC的GI部分(CRS 和 ASM)已經安裝完畢, 數據庫軟件還沒有安裝。
操作系統版本: Solaris 11.1
數據庫版本: Oracle 12.1.0.1

1. 用root用戶在各個節點啓動crs,啓動ACFS驅動程序,執行:
 

  1. $CRS_HOME/bin/crsctl start crs
  2. $CRSHOME/bin/acfsload start

2.  在主節點上創建 volumn:
 

  1. $CRSHOME/bin/asmca -silent -createVolume -volumename ${VOL_NAME} -volumeDiskGroup ${DISKGRP_ACFS} -volumeSizeGB ${VOL_SIZE}\

命令解釋:使用asmca的靜默模式。
VOL_NAME -> 自助命名的卷名稱
DISKGRP_ACFS  -> 選擇在哪個磁盤組上創建卷
VOL_SIZE -> 創建卷的大小,如果安裝ORACLE_HOME,一般要大於5G

3.  用crs的用戶查看卷信息:
 

  1. $CRSHOME/bin/asmcmd volinfo -G ${DISKGRP_ACFS} ${VOL_NAME}

4. 以crs用戶執行命令,作用是格式化卷,創建ACFS文件系統:
 

  1. $CRSHOME/bin/asmca -silent -createACFS -acfsVolumeDevice ${VOL_DEVICE} -acfsMountPoint ${mount_dir} -acfsUserName ${DB_USER} -acfsGroupName oinstall

命令解釋: -acfsVolumeDevice 參數制定在哪個捲上創建(格式化)爲ACFS文件系統; -acfsMountPoint 參數表示把ACFS文件系統mount到操作系統的具體目錄,這個目錄就是我們的ORACLE_HOME的位置,比如 /u01/app/oracle/product/12.1.0/dbhome_1;
-acfsUserName 和 -acfsGroupName 就是爲了設置這個目錄的權限,所以分別爲 oracle:oinstall (數據庫的用戶和組)

5.  以root用戶在執行步驟4的節點執行腳本:
 

  1. 1 $CRSHOME/bin/srvctl add filesystem -d ${VOL_DEVICE} -m ${mount_dir} -u ${DB_USER} -autostart ALWAYS
  2. 2
  3. 3 if [ $? = "0" -o $? = "2" ]; then
    4    $CRSHOME/bin/srvctl start filesystem -d ${VOL_DEVICE}
    5    if [ $? = "0" ]; then
  4. 6        chown ${DB_USER}:oinstall ${mount_dir}
    7        chmod 775 ${mount_dir}
    8    fi
    9    else
    10        echo "Creating CRS resources failed "
    11        exit 1
    12 fi

解釋:1行把ACFS加入 集羣的資源,隨着crs啓動自動啓動, 如果成功啓動ACFS,效果就是RAC的各個節點的 mount_dir 目錄是共享的,在一個節點創建測試文件,其它節點就可以看到了。

6.  繼續RAC的安裝,執行database的安裝過程。

注意事項:

mount_dir的選擇:如果選定ORACLE_HOME爲/u01/app/oracle/product/12.1.0/dbhome_1, 那麼mount_dir 最好選擇它的上級目錄:/u01/app/oracle/product/12.1.0, 因爲ACFS創建成功之後會在mount_dir 下自動生成一個lost_found文件夾,而且刪不掉,有些版本的oracle是不允許在安裝之前家目錄爲非空,所以當installer發現有一個lost_found 文件夾會停止安裝並報錯。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章