linux配置裸裝置

2021-09-06 16:39:42 字數 2799 閱讀 8450

1、什麼裸裝置?字元裝置?塊裝置?

裸裝置:也叫裸分割槽(原始分割槽),是一種沒有經過格式化,不被unix/linux通過檔案系統來讀取的特殊字元裝置。它由應用程式負責對它進行讀寫操作。不經過檔案系統的緩衝。裸裝置可以繫結乙個分割槽,也可以繫結乙個磁碟。

字元裝置:對字元裝置的讀寫不需要通過os的buffer。它不可被檔案系統mount。

塊裝置:對塊裝置的讀寫需要通過os的buffer,它可以被mount到檔案系統中。

2、在oracle中使用裸裝置的好處是什麼?

因為使用裸裝置避免了在經過unix作業系統這一層,資料直接從disk到oracle之間進行無縫傳輸,所以使用裸裝置對於讀寫頻繁的資料庫應用來說,可以極大的提高資料庫系統的效能,當然,這是以磁碟的i/o非常大,磁碟i/o已經成為系統瓶頸的情況下才能力的,如果磁碟讀寫確實非常頻繁,以至於磁碟讀寫成為系統瓶頸的情況成立,那麼採用裸裝置確實可以大大提高效能,最大甚至可以提高至40%,非常明顯。而且,由於使用了原始分割槽,沒有採用檔案系統的管理方式,對unix維護檔案系統的開銷也都沒有了。比如不在需要維護i-node,空閒塊等等,這也能夠導致效能的提高。

3、乙個系統可以有多少個裸裝置?

這個與linux的版本相關,在舊版本中,最多隻可以有256個裸裝置,linux 4下做多可以繫結8192個裸裝置。

但是在linux下,最多只能有255個分割槽,所以,如果用裸裝置繫結分割槽,最多只能繫結255個裸裝置。

如果是用lvm,則沒有這個限制。

4、linux下單個磁碟最多可以有多少個分割槽?

15個。3個主分割槽 + 1個擴充套件分割槽 + 11個邏輯分割槽。

建議的分割槽方法是:先分3個主分割槽,第四個分割槽為擴充套件分割槽,然後在擴充套件分割槽中再分成11個邏輯分割槽。

注意,裸裝置不要繫結在擴充套件分割槽上。

5、linux如何繫結裸裝置?

兩種方式:

1)命令繫結,臨時生效

raw /dev/raw/raw[n]     /dev/***

其中n的範圍是0-8191。raw目錄不存在的話會被自動建立。

執行這個命令,就會在/dev/raw下生成乙個對應的raw[n]檔案

用命令方式繫結裸裝置在系統重啟後會失效。

2)修改配置檔案,永久生效

修改/etc/udev/rules.d/60-raw.rules檔案如下,以開機時自動載入裸裝置

啟動raw裝置

rqw -qa命令列出當前已繫結的所有裸裝置。

這種方式是通過啟動服務的方式來繫結裸裝置。當然也可以把這個命令寫在/etc/rc.local上,使每次啟動都執行這些命令。

6、如何把裸裝置作為oracle資料檔案?有什麼需要注意的?

改變裸裝置屬主,把命令寫入/etc/rc.local

這個的意思是修改裸裝置的缺省屬主為oracle:dba,預設的mode是0660。

如果是用lvm,也需要把邏輯卷繫結到裸裝置上,過程和繫結到普通分割槽類似。

7、使用裸裝置作為oracle資料檔案有什麼需要注意的?

使用裸裝置作為oracle的資料檔案必須注意以下幾點:

1)乙個裸裝置只能放置乙個資料檔案

2)資料檔案的大小不能超過裸裝置的大小

如果是日誌檔案,則裸裝置最大可用大小=裸裝置對應分割槽大小 - 1 * 512 (保留乙個redo lock)

如果是資料檔案,則裸裝置最大可用大小=裸裝置對應分割槽大小 - 2 * db_block_size(保留兩個block)

為了簡單起見,對所有的檔案設定稱比裸裝置小1m即可。

3)資料檔案最好不要設定稱自動擴充套件,如果設定稱自動擴充套件,一定要把maxsize設定設定為比裸裝置小

8、是否可以直接用邏輯卷作為oracle資料檔案?

linux下oracle不能直接把邏輯卷作為裸裝置,也要進行繫結。unix下就不需要。

9、如何知道某個裸裝置的大小

比較笨的辦法是,找出看裸裝置對應的是那個實際的塊裝置,然後用fdisk -l /dev/[h,s]dxn看那個塊裝置的大小就好了。

比較簡單的辦法是用blockdev命令來計算,如:

#blockdev --getsize /dev/raw/raw1

11718750

11718750表示有多少os bliock。

一般乙個os block大小是512位元組,所以11718750*512/1024/1024/1024 = 5722(m) 就是裸裝置的大小。

10、資料庫中可以同時以檔案和裸裝置作為資料檔案嗎?

可以。甚至在同乙個表空間中,也可以部分資料檔案用檔案系統,部分檔案用裸裝置。

但是不建議這樣做,因為會增加管理的複雜度。

11、可以把至於裸裝置的資料檔案設成自動擴充套件嗎?

可以,但同時要設定maxsize,且maxsize不能超過:裸裝置大小 - 2*db_block_size

12、如何取消裸裝置的繫結

用raw把major and minor設成0就可以取消裸裝置的繫結。如:

raw  /dev/raw/raw1  0  0

這個命令取消繫結裸裝置的繫結,/dev/raw/raw1會被刪除

13、裸裝置可以繫結的物件可以什麼?

可以繫結整個沒有分割槽的硬碟、可以繫結硬碟的某個分割槽、可以繫結邏輯卷等。

Linux裸裝置相關

1 什麼裸裝置?字元裝置?塊裝置?裸裝置 也叫裸分割槽 原始分割槽 是一種沒有經過格式化,不被unix linux通過檔案系統來讀取的特殊字元裝置。裸裝置可以繫結乙個分割槽,也可以繫結乙個磁碟。字元裝置 對字元裝置的讀寫不需要通過os的buffer。它不可被檔案系統mount。塊裝置 對塊裝置的讀寫...

Linux裸裝置相關

文章分類 作業系統 1 什麼裸裝置?字元裝置?塊裝置?裸裝置 也叫裸分割槽 原始分割槽 是一種沒有經過格式化,不被unix linux通過檔案系統來讀取的特殊字元裝置。裸裝置可以繫結乙個分割槽,也可以繫結乙個磁碟。字元裝置 對字元裝置的讀寫不需要通過os的buffer。它不可被檔案系統mount。塊...

Linux裸裝置總結

1 什麼裸裝置?字元裝置?塊裝置?裸裝置 也叫裸分割槽 原始分割槽 是一種沒有經過格式化,不被unix linux通過檔案系統來讀取的特殊字元裝置。裸裝置可以繫結乙個分割槽,也可以繫結乙個磁碟。字元裝置 對字元裝置的讀寫不需要通過os的buffer。它不可被檔案系統mount。塊裝置 對塊裝置的讀寫...