linux mysql 共享存储空间_Linux UDEV和为MySQL InnoDB共享表空间配置裸设备
⑴ UDEV 基礎(chǔ)
udev 可管理保存在/dev 目錄下的文件、文件只有在接入相應(yīng)設(shè)備后才會(huì)生成、設(shè)備被拔出后自動(dòng)刪除
它還允許用戶添加規(guī)則、以便修改/dev中默認(rèn)的名稱和權(quán)限、規(guī)則保存在/etc/udev/rules.d/目錄下
⑵ MySQL 綁定裸設(shè)備
只有InnoDB可以用裸設(shè)備
優(yōu)點(diǎn):繞過了文件系統(tǒng),讀寫速度會(huì)有提高,并且數(shù)據(jù)會(huì)比較安全、同時(shí)降低文件系統(tǒng)負(fù)擔(dān)、也改善系統(tǒng)性能
缺點(diǎn):太安全了,好多備份工具可能沒法用、dd可以考慮
下面介紹如何為mysql共享表空間綁定裸設(shè)備
㈠ 制作裸設(shè)備
# fdisk /dev/sda
==> /dev/sda5
# partprobe
# fdisk -l
# pvcreate /dev/sda5
# vgcreate -s 16M mysqlvg /dev/sda5
# lvcreate -L 90M -n sharespace mysqlvg
# vim /etc/sysconfig/rawdevices
==> /dev/raw/raw1? /dev/mysqlvg/sharespace
# service rawdevices start
# chkconfig rawdevices on
# chown -R mysql:dba /dev/mapper/mysqlvg-sharespace
㈡ 配置MySQL
① 指定newraw屬性
innodb_data_home_dir =
innodb_data_file_path = /dev/mapper/mysqlvg-sharespace:60Mnewraw
② 重啟mysql服務(wù),待其完成分區(qū)初始化工作后,再關(guān)閉mysql服務(wù)
③ 修改raw屬性
innodb_data_home_dir =
innodb_data_file_path = /dev/mapper/mysqlvg-sharespace:60Mraw
④ 重啟mysql服務(wù)
如果整個(gè)系統(tǒng)重啟、裸設(shè)備的權(quán)限會(huì)被回收、導(dǎo)致mysql無法開啟
官網(wǎng)描述如下:
will fail after the next reboot, if the /dev-tree is dynamically created by, e.g. udev, a MAKEDEV-script or similar.
After reboot, the device will regain its former permission, typically excluding access by mysql.
alert 報(bào)警如下:
130719 20:42:43? InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /dev/mapper/mysqlvg-sharespace
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
此時(shí)可選方案:
1)寫個(gè)簡(jiǎn)單的初始化腳本、當(dāng)重啟的時(shí)候自動(dòng)授權(quán)
2)配置 udev條目、
[root@odd rules.d]# pwd
/etc/udev/rules.d
[root@odd rules.d]# cat 60-raw.rules
ACTION=="add", KERNEL=="sda5", GROUP=="dba", MODE=="0660", RUN+="/bin/raw /dev/raw/raw1 %N"
[root@odd rules.d]# cat 65-raw-permissions.rules
KERNEL=="sda5", GROUP="dba", MODE="0660"
推薦閱讀:
總結(jié)
以上是生活随笔為你收集整理的linux mysql 共享存储空间_Linux UDEV和为MySQL InnoDB共享表空间配置裸设备的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ALEX net 解读
- 下一篇: 英伟达jetson TX1的caffe-