一:這部分是網上搜到的,掃盲,我的操作在第二部分。
1.創建pv
pvcreate -M2 --metadatasize 100M /dev/sda
pvcreate -M2 --metadatasize 100M /dev/sdb1
pvcreate -M2 --metadatasize 100M /dev/sdb2
pvcreate -M2 --metadatasize 100M /dev/sdc
物理卷可以是整個硬盤(lun),也可以是硬盤上的一個分區
補充:元數據(Meta Data)是關于數據倉庫的數據,指在數據倉庫建設過程中所產生的有關數據源定義,目標定義,轉換規則等相關的關鍵數據。
元數據(meta data),關于數據庫中表的定義、字段的定義,元組的定義等等,是數據庫中最基礎的描述,所以稱之為元數據。 又稱為數據目錄,關于數據庫的數據庫。
一
個數據存儲在共享卷里時,我們可以直接看到它是一個文檔、或圖片、或視頻、或數據庫文件,這些都是數據本身。然而在存儲該數據時,文件系統還會產生很多無
法直接看到的,與該數據有關的數據,如文件系統中文件檢索表,路徑信息、地址信息等,而這些數據就稱之為文檔、圖片、視頻等在共享卷中的元數據。
SAN網絡存儲共享軟件管理的主要內容就是元數據,控制元數據在多主機之間的傳輸。
我們可以在很多地方看到元數據的存儲,網上DOWN下來的電影本身一個視頻文件數據,而點擊右鍵查到看的視頻文件屬性,如存儲路徑、碼率、文件大小、及導演、演員、制作單位等就是視頻文件的元數據。
-M2指定meta data 使用lvm2格式??
2.創建vg
vgcreate vg_db /dev/sda /dev/sdb1 /dev/sdb2 /dev/sdc -s128m
-s, --physicalextentsize PhysicalExtentSize[kKmMgGtT]
Sets the physical extent size on physical volumes of this volume group.
3.創建lv
lvcreate -L2048m -i4 -I64k vg_db -n lv_2g_001
lvcreate -L2048m -i4 -I64k vg_db -n lv_2g_002
4.綁定
raw /dev/raw/raw1 /dev/mapper/vg_db-lv_2g_001
raw /dev/raw/raw2 /dev/mapper/vg_db-lv_2g_002
要注意的是lv的命名方式,命名方式分解如下:
/dev/mapper/ vgname '-' lvname.
使用raw命令綁定的裸設備在重啟后會失效。
*對于AS4
所以需要修改/etc/sysconfig/rawdevices配置文件,在文件中加入如下內容(每個裸設備一行):
/dev/raw/raw1 /dev/mapper/vg_db-lv_2g_001
/dev/raw/raw2 /dev/mapper/vg_db-lv_2g_002
執行 /etc/init.d/rawdevices restart 使配置文件中的裸設備生效
執行 /sbin/chkconfig rawdevices on 保證機器啟動的時候裸設備能夠加載
*對于AS5
raw 設備映射
raw 設備接口在 紅帽企業 Linux 5 里已經被取消了;raw 設備映射現在通過 udev 規則進行配置。要配置 raw 設備映射,可以在 /etc/udev/rules.d/60-raw.rules 里加入以下格式的條目:
設備名稱:
ACTION=="add", KERNEL="<device name>", RUN+="raw /dev/raw/rawX %N"
主/次號碼:
ACTION=="add", ENV{MAJOR}="A", ENV{MINOR}="B", RUN+="raw /dev/raw/rawX %M %m"
用你需要綁定的設備名稱替換 <device name>(如:/dev/sda1)。"A" 和 "B" 是設備的主/次號碼,X 是系統使用的 raw 設備號碼。
另外關于此處的配置有一點非常奇怪,我看到red hat官方文檔中關于raw.rule的示例中說KERNEL==..或ENV{MAJOR}...只需要任意配置一個就可以,但我在具體配置過程中發現百試不爽,我嘗試了各種組合發現都不生效,必須二者同時配置才可以
5.授權
chown -R oracle.dba /dev/mapper
修改配置文件/etc/udev/permissions.d/50-udev.permissions
注釋掉raw/*:root:disk:0660
添加新行raw/*:oracle:dba:0660
6.鏈接(可選)
ln -s /dev/raw/raw1 /oradata/ningoo/system01.dbf
ln -s /dev/raw/raw2 /oradata/ningoo/undo01.dbf
二 我的操作
注:查看pv,vg,lv命令:pvdisplay,vgdisplay,lvdisplay
創建pv
[root@RHEL5 opt]# pvcreate pvcreate -M2 --metadatasize 100M /dev/hdc
Device pvcreate not found (or ignored by filtering).
Physical volume "/dev/hdc" successfully created
創建vg
[root@RHEL5 opt]# vgcreate vg_oradata /dev/hdc -s128m
Volume group "vg_oradata" successfully created
創建LV
[root@RHEL5 opt]# lvcreate -L 384m -I64k vg_oradata -n control_1
Ignoring stripesize argument with single stripe
Logical volume "control_1" created
另外還需要創建的裸設備有:
lvcreate -L 384M -n control_2 -I64k vg_oradata
lvcreate -L 384M -n control_3 -I64k vg_oradata
lvcreate -L 128M -n redo01_1 -I64k vg_oradata
lvcreate -L 128M -n redo01_2 -I64k vg_oradata
lvcreate -L 128M -n redo02_1 -I64k vg_oradata
lvcreate -L 128M -n redo02_2 -I64k vg_oradata
lvcreate -L 128M -n redo03_1 -I64k vg_oradata
lvcreate -L 128M -n redo03_2 -I64k vg_oradata
lvcreate -L 1024M -n system -I64k vg_oradata
lvcreate -L 1024M -n sysaux -I64k vg_oradata
lvcreate -L 1024M -n temp -I64k vg_oradata
lvcreate -L 2048M -n undodbs -I64k vg_oradata
lvcreate -L 1024M -n tools -I64k vg_oradata
lvcreate -L 3072M -n data -I64k vg_oradata
綁定
raw /dev/raw/raw1 /dev/mapper/vg_oradata-control_1
raw /dev/raw/raw2 /dev/mapper/vg_oradata-control_2
raw /dev/raw/raw3 /dev/mapper/vg_oradata-control_3
raw /dev/raw/raw4 /dev/mapper/vg_oradata-redo01_1
raw /dev/raw/raw5 /dev/mapper/vg_oradata-redo01_2
raw /dev/raw/raw6 /dev/mapper/vg_oradata-redo02_1
raw /dev/raw/raw7 /dev/mapper/vg_oradata-redo02_2
raw /dev/raw/raw8 /dev/mapper/vg_oradata-redo03_1
raw /dev/raw/raw9 /dev/mapper/vg_oradata-redo03_2
raw /dev/raw/raw10 /dev/mapper/vg_oradata-system
raw /dev/raw/raw11 /dev/mapper/vg_oradata-sysaux
raw /dev/raw/raw12 /dev/mapper/vg_oradata-temp
raw /dev/raw/raw13 /dev/mapper/vg_oradata-undodbs
raw /dev/raw/raw14 /dev/mapper/vg_oradata-tools
raw /dev/raw/raw15 /dev/mapper/vg_oradata-data
使用裸設備作為oracle數據文件有什么需要注意的?
使用裸設備作為oracle的數據文件必須注意以下幾點:
1)一個裸設備只能放置一個數據文件
2)數據文件的大小不能超過裸設備的大小
如果是日志文件,則裸設備最大可用大小=裸設備對應分區大小 - 1 * 512 (保留一個redo lock)
如果是數據文件,則裸設備最大可用大小=裸設備對應分區大小 - 2 * db_block_size(保留兩個block)
為了簡單起見,對所有的文件設置稱比裸設備小1M即可。
3)數據文件最好不要設置稱自動擴展,如果設置稱自動擴展,一定要把maxsize設置設置為比裸設備小
如創建錯了,刪除!!!
lvremove /dev/vg_oradata/lv_10g_02
綁定
[root@RHEL5 opt]# raw /dev/raw/raw1 /dev/mapper/vg_oradata-lv_10g_01
/dev/raw/raw1: bound to major 253, minor 3
[root@RHEL5 opt]# raw /dev/raw/raw2 /dev/mapper/vg_oradata-lv_10g_02
/dev/raw/raw2: bound to major 253, minor 2
避免重起失效:
編輯/etc/udev/rules.d/60-raw.rules,添加
ACTION=="add", KERNEL=="/dev/mapper/vg_oradata-lv_10g_01", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="/dev/mapper/vg_oradata-lv_10g_02", RUN+="/bin/raw /dev/raw/raw2 %N"
或者
ACTION=="add", ENV{MAJOR}=="253", ENV{MINOR}=="3", RUN+="/bin/raw /dev/raw/raw1 %M %m"
ACTION=="add", ENV{MAJOR}=="253", ENV{MINOR}=="2", RUN+="/bin/raw /dev/raw/raw2 %M %m"
查看是否生效:
raw -qa
結果,不生效,google下,還沒人解決這個問題,替代的方法,寫在/etc/rc.d/rc.local里
raw /dev/raw/raw1 /dev/mapper/vg_oradata-control_1
raw /dev/raw/raw2 /dev/mapper/vg_oradata-control_2
raw /dev/raw/raw3 /dev/mapper/vg_oradata-control_3
raw /dev/raw/raw4 /dev/mapper/vg_oradata-redo01_1
raw /dev/raw/raw5 /dev/mapper/vg_oradata-redo01_2
raw /dev/raw/raw6 /dev/mapper/vg_oradata-redo02_1
raw /dev/raw/raw7 /dev/mapper/vg_oradata-redo02_2
raw /dev/raw/raw8 /dev/mapper/vg_oradata-redo03_1
raw /dev/raw/raw9 /dev/mapper/vg_oradata-redo03_2
raw /dev/raw/raw10 /dev/mapper/vg_oradata-system
raw /dev/raw/raw11 /dev/mapper/vg_oradata-sysaux
raw /dev/raw/raw12 /dev/mapper/vg_oradata-temp
raw /dev/raw/raw13 /dev/mapper/vg_oradata-undodbs
raw /dev/raw/raw14 /dev/mapper/vg_oradata-tools
raw /dev/raw/raw15 /dev/mapper/vg_oradata-data
至此,裸設備建立完成
如果要取消裸設備的綁定,可以重建綁定這個裸設備到0 0。
raw /dev/raw/raw1 0 0
參考:
以下為創建數據文件對應的裸設備
lvcreate -L 384M -n control_1 vg_oradata
lvcreate -L 384M -n control_2 vg_oradata
lvcreate -L 384M -n control_3 vg_oradata
lvcreate -L 128M -n redo01_1 vg_oradata 100 4組,每組6個
lvcreate -L 128M -n redo01_2 vg_oradata
lvcreate -L 128M -n redo02_1 vg_oradata
lvcreate -L 128M -n redo02_2 vg_oradata
lvcreate -L 128M -n redo03_1 vg_oradata
lvcreate -L 128M -n redo03_2 vg_oradata
lvcreate -L 1024M -n system vg_oradata
lvcreate -L 1024M -n sysaux vg_oradata
lvcreate -L 1024M -n temp vg_oradata
lvcreate -L 2048M -n undodbs vg_oradata
lvcreate -L 1024M -n tools vg_oradata
lvcreate -L 3072M -n data vg_oradata
由于linux下的裸設備還需要進行綁定,所以還需進行以下操作:
raw /dev/raw/raw1 /dev/mapper/vg_oradata-control_1
raw /dev/raw/raw2 /dev/mapper/vg_oradata-control_2
raw /dev/raw/raw3 /dev/mapper/vg_oradata-control_3
raw /dev/raw/raw4 /dev/mapper/vg_oradata-redo01_1
raw /dev/raw/raw5 /dev/mapper/vg_oradata-redo01_2
raw /dev/raw/raw6 /dev/mapper/vg_oradata-redo02_1
raw /dev/raw/raw7 /dev/mapper/vg_oradata-redo02_2
raw /dev/raw/raw8 /dev/mapper/vg_oradata-redo03_1
raw /dev/raw/raw9 /dev/mapper/vg_oradata-redo03_2
raw /dev/raw/raw10 /dev/mapper/vg_oradata-system
raw /dev/raw/raw11 /dev/mapper/vg_oradata-sysaux
raw /dev/raw/raw12 /dev/mapper/vg_oradata-temp
raw /dev/raw/raw13 /dev/mapper/vg_oradata-undodbs
raw /dev/raw/raw14 /dev/mapper/vg_oradata-tools
raw /dev/raw/raw15 /dev/mapper/vg_oradata-data