增加ORACLE歸檔位置到NFS
原文:http://space.itpub.net/10522540/viewspace-661561
NFS檔案系統搭建
1什麼是NFS
NFS(network file system),網路檔案系統,不同的作業系統可以透過NFS來共享檔案,可以簡單地將之看成是一個檔案伺服器。可以將遠端的主機分享目錄掛載到本地的目錄下,使用的時候就像本地的目錄一樣,只要許可權足夠,可以直接在目錄中建立檔案並使用mv,cp,,rm等命令直接對之進行。用起來相當的方便。
2 NFS的原理
NFS使用TCP/IP協議進行通訊。所以肯定需要port埠進行通訊。這個埠是從1—1024中隨機取得的埠。因為NFS的功能很多,需要分配很多的埠,客戶端透過RPC來找到這個埠並進行通訊。NFS每次啟動的時候都要向RPC進行註冊才行。而RPC服務重啟後,所有的埠資訊都會丟失,所以如果RPC重啟,則NFS SERVICE也必需重新啟動重新向RPC服務註冊。這樣客戶端才能知道該使用哪個埠通訊。客戶端連線NFS伺服器的步驟。
1使用者向伺服器端的RPC(port 111)提出訪問請求
2伺服器端查詢NFS damon埠地址,提供給client端。
3 client透過port和端進行通訊。
3 NFS的後臺程式
NFS主要用來做檔案的分享。最主要有兩個後臺程式,一個接受連線,一個提供服務。
rpc.nfsd校驗登入許可權。
rpc.mount管理檔案系統。讀設定檔案/etc/exports,確定許可權。
rpc.lockd 這個程式不是必需的。用途加鎖管理。避免併發問題。如果多個會話同時存取一個檔案,可能會有併發問題。為了解決這個問題。增加了這個程式,注意必需客戶端和伺服器端同時啟動才行。通常與rpc.statd同時啟用。
Rpc.statd,校驗檔案一致性的程式。通常與ntplockd同時啟動
4許可權問題:
NFS共享目錄的許可權是透過UID,GID來判斷的。比方在伺服器端共享目錄的屬主為503,503。如果共享目錄的許可權比較小,而如果客戶端沒有503,503的使用者。用gid,uid為501的使用者登入的時候,就既不能讀,也不能寫。。所以通常情況下都會將共享目錄設定成777的許可權。
當登入使用者為root 0:0的時候,對映到服務端如果也是0:0就會有安全上的隱患。NFS預設將uid,0,gid0當成nobody來處理,
當登入的使用者對應的uid,gid在服務端存在的時候,在該目錄中的許可權和服務端對應使用者相同。
當登入的使用者不存在的時候。建立的uid,gid為使用者的uid,gid,服務端看到的檔案有uid,gid,但是沒有使用者名稱。其讀取的許可權和nobody相同。
總之,只要client登入使用者的uid和gid和伺服器端的不對應,就會造成困擾。這也是NFS檔案系統許可權管理上的一個很容易引起混亂的問題。要有合適的讀寫許可權。需要
/etc/export中的合理設定。以及登入者的對應使用者在共享目錄的許可權足夠才行。
5配置NFS服務
前面說配置NFS需要RPC服務的啟動。在系統上RPC對應的服務名是portmap.所以首先需要啟動portmap服務。而且如果portmap服務重啟,NFS服務就會變得不可用,必須重新啟動。
service portmap restart;
service nfs restart;
NFS的配置檔案是/etc/exports.格式是
共享目錄,主機ip(許可權關鍵字)可用主機名帶萬用字元的主機名(許可權)。
一個例子
<!--[if !vml]-->[root@vdx2 rmanbak]# more /etc/exports
/home/oracle/aa 10.10.100.14(rw,nohide,no_subtree_check)
<!--[endif]-->
()內的語法可以透過man exports來檢視,在此不做詳述。
與許可權有關的有rw表示允許讀寫共享,ro表示只讀共享。
配置完/etc/exports以後,只要重新啟動NFS,伺服器端的配置就完成了。
另外需要注意,只要修改了/etc/exports檔案,NFS都要重新啟動。
為了避免NFS SERVER重啟後服務未啟動,使用setup工具把portmap, nfs,
nfslock配置為自動啟動。
為ORACLE配置NFS服務客戶端
1掛載選項
如果僅僅只是做簡單的複製動作,只要直接mount就OK了。但是如果想讓ORACLE直接訪問NFS目錄,除了許可權設定正確外,mount必需加上-o選項。否則ORACLE無法直接讀寫,會給出mount選項不對的錯誤。
根據ORACLE,metalink Doc ID:359515.1,不同平臺不同情況下的mount選項是不同的,如下是ORACLE提供的對照表。針對二進位制檔案(ORACLE_HOME,CRS_HOME),資料檔案(包括控制檔案和日誌檔案,資料檔案),OCR和VOTING DISK的不同情況可以在如下表中查詢。
注意linux核心版本需要>=2.6
情況下。
Operating System |
Mount options for Binaries |
Mount options for Oracle Datafiles |
Mount options for CRS Voting Disk and OCR |
Sun Solaris * |
rw,bg,hard,nointr,rsize=32768, |
rw,bg,hard,nointr,rsize=32768, |
rw,bg,hard,nointr,rsize=32768, |
AIX (5L) ** |
rw,bg,hard,nointr,rsize=32768, |
,rw,bg,hard,nointr,rsize=32768, |
cio,rw,bg,hard,intr,rsize=32768, |
HPUX 11.23 ****– |
rw,bg,vers=3,proto=tcp,noac, |
rw,bg,vers=3,proto=tcp,noac, |
rw,bg,vers=3,proto=tcp,noac, |
Linux x86# |
rw,bg,hard,nointr,rsize=32768, |
rw,bg,hard,nointr,rsize=32768, |
rw,bg,hard,nointr,rsize=32768, |
Linux x86-64 # |
rw,bg,hard,nointr,rsize=32768, |
rw,bg,hard,nointr,rsize=32768, |
rw,bg,hard,nointr,rsize=32768, |
Linux x86-64 # |
rw,bg,hard,nointr,rsize=32768, |
rw,bg,hard,nointr,rsize=32768, |
rw,bg,hard,nointr,rsize=32768, |
根據BUG 5856342,在RAC使用網路儲存裝置,作業系統為linux X86或者X86_64, oracle版本低於10.2.0.4的情況下,必需設定初始化引數
filesystemio_options = DIRECTIO
在單例項(single-Instance)情況下的對照表
Operating System |
Mount options for Binaries |
Mount options for Oracle Datafiles |
Sun Solaris * |
rw,bg,hard,rsize=32768, |
rw,bg,hard,rsize=32768, |
AIX (5L) ** |
rw,bg,hard,rsize=32768, |
rw,bg,hard,rsize=32768, |
HPUX 11.23 **** |
rw,bg,hard,rsize=32768, |
rw,bg,hard,rsize=32768, |
Linux x86 |
rw,bg,hard,rsize=32768, |
rw,bg,hard,rsize=32768, |
Linux x86-64 # |
rw,bg,hard,rsize=32768, |
rw,bg,hard,rsize=32768, |
Linux–Itanium |
rw,bg,hard,rsize=32768, |
rw,bg,hard,rsize=32768, |
其中acime=0*,*代表也可以使用noac
我們的作業系統為linux X86.所以可以root帳號執行以下語句來掛載
Shell> mount –t nfs –orw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,tcp 10.10.100.14:/home/oracle/aa /14dir;
2必需啟動的服務
注意:ORACLE直接歸檔到nfs的時候必需啟動ntfslock 服務,這個服務通常與rfs.statd同時啟動。在server和client都需要,否則歸檔時會出現如下的錯誤。
ORA-19504: failed to create file "/u03/245dir/1_8665_567259761.dbf"
ORA-27086: unable to lock file - already in use
Linux Error: 37: No locks available
Additional information: 10
3修改歸檔位置
直接修改歸檔引數就可以了
ALTER SYSTEM SET LOG_ARCHIVE_DEST_2=’LOCATION=/14dir’;
後續處理
1修改/ETC/fstab檔案實現自動掛載
為了避免系統重啟需手動掛載NFS,可修改/etc/fstab檔案來實現自動掛載。
使用root來編輯,加入一行
10.10.100.14:/home/oracle/aa /14dir nfs rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,vers=3,timeo=600,actimeo=0 0 0
2將必需的服務設定為自動啟動
客戶端需要設定portmap,nfslock自動啟動。可以用setup工具來實現。
服務端配置portmap,nfs,nfslock自動啟動。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-749273/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle rac歸檔使用nfs 導致oracle hungOracleNFS
- Oracle - AIX上NFS目錄歸檔失敗OracleAINFS
- 【oracle 】閃回與歸檔位置的理解Oracle
- 配置歸檔位置和檔案格式
- RAC歸檔配置方案:使用NFS共享儲存儲存歸檔檔案NFS
- oracle 歸檔/非歸檔Oracle
- SharePlex跳過歸檔或從指定歸檔位置開始
- ORACLE expdp備份到windows網路共享檔案目錄(NFS)OracleWindowsNFS
- RAC 設定NFS作為歸檔目錄NFS
- oracle歸檔Oracle
- 從一種強制停庫方法到Oracle NFS檔案鎖OracleNFS
- 通過nfs共享目錄實現oracle 歸檔日誌遠端備份NFSOracle
- 使用NFS共享RAC節點的歸檔目錄NFS
- 使用nfs作為歸檔目錄的問題NFS
- 更改Oracle檔案位置Oracle
- Oracle歸檔模式和非歸檔模式Oracle模式
- Backup And Recovery User's Guide-還原歸檔重做日誌到新位置GUIIDE
- oracle歸檔模式Oracle模式
- oracle 開歸檔Oracle
- Oracle 歸檔模式Oracle模式
- 更改ORACLE歸檔路徑及歸檔模式Oracle模式
- Oracle 歸檔與非歸檔模式的更改Oracle模式
- Oracle RAC 歸檔與非歸檔切換Oracle
- Backup And Recovery User's Guide-還原歸檔重做日誌到多個位置GUIIDE
- 增加oracle的控制檔案Oracle
- Oracle歸檔模式與非歸檔模式設定Oracle模式
- ORACLE資料庫歸檔改為非歸檔Oracle資料庫
- oracle歸檔日誌Oracle
- ORACLE刪除歸檔Oracle
- Oracle 修改歸檔模式Oracle模式
- Oracle 歸檔日誌Oracle
- oracle歸檔模式管理Oracle模式
- oracle的歸檔模式Oracle模式
- oracle 歸檔設定Oracle
- oracle archive歸檔初步OracleHive
- OracleRAC新增asm磁碟組並設定歸檔位置OracleASM
- Oracle RAC NFS掛載檔案系統OracleNFS
- Oracle歸檔模式和非歸檔模式的區別Oracle模式