在unix下和linux下建立裸裝置總結

guyuanli發表於2009-06-30
(一)AIX下建立裸裝置:
1.建立VG卷組:
#mkvg -S -y'datavg' -s'128'hdisk1 hdisk2....
其中:-S表示建立scalable-type的VG;-y表示建立vg的名稱;-s表示PP SIZE的大小。
2.從VG中建立一個LV,名稱為lv_db_test_1g:
#mklv -y'lv_db_test_1g' -t'raw' '-S128k' datavg 16 hdisk1 hdisk2...hdiskn
其中:在vg中建立一個lv_db_test_1g的lv;分別在pv上條帶尺寸為128K,-t 表示型別為raw,這個型別只是個標誌,可以隨意指定。
3.修改相應許可權:
chown oracle:oinstall /dev/rlv_db_test_1g;
注意"rlv"表示字元裝置[@more@]4.掛載資料檔案:
ln -s /dev/rlv_db_test_1g /oracle/oradata/dgdemo/temp01.dbf
5.在資料庫中建立表空間:
create tablespace temp datafile '/oracle/oradata/dgdemo/temp01.dbf' size 1000M reuse;

(二)linux下建立裸裝置:

1.建立分割槽:

利用fdisk分一個區,比如劃分/dev/hdb1;

2.掛載分割槽:

#raw /dev/raw/raw1 /dev/hdb1;

3.修改許可權:

#chown oracle:oinstall /dev/raw/raw1

4.連結裸磁碟:

#ln -s /dev/raw/raw1 /oracle/oradata/dgdemo/temp.dbf

5.建立oracle的資料檔案:

create tablespace temp datafile '/oracle/oradata/dgdemo/temp.dbf' size 1000M reuse;

備註:如果使用LVM來建立LV型別的裸裝置:由於LVM建立的LV是塊裝置,不是字元裝置,只有塊裝置;

#raw /dev/raw/raw1 /dev/lv_db_test_1g;

(三)裸裝置備份:

使用dd命令:

if=file 指定輸入檔案,預設值為標準輸入

of=file 指定輸出檔案,預設值為標準輸出

bs=n 設定輸入和輸出的塊大小為N位元組(以k為單位)

skip=n 複製之前跳過n個資料塊,預設值為0

seek=n 複製之前從輸出檔案首部跳過N塊,預設值為0

count=0 指定複製的塊數,預設到複製到輸入檔案結束。

注意:資料檔案複製在資料庫OFFILE或者資料庫沒有OPEN狀態下複製:

dd精確複製:

dd if=/dev/rlv_db_test_1g f=/oracle/test01.dbf bs=4k skip=1 count=512002

dd整個資料檔案複製:

dd if=/dev/rlv_db_test_1g f=/oracle/test01.dbf bs=4k seek=1

使用RMAN進行備份,必須在MOUNT和OPEN狀態下複製:

rman>copy '/oracle/oradata/dgdemo/test01.dbf' to '/oracle/test01.dbf'

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7490392/viewspace-1023651/,如需轉載,請註明出處,否則將追究法律責任。

相關文章