linux mysql 共享存储空间_Linux UDEV和为MySQL InnoDB共享表空间配置裸设备

⑴ UDEV 基础

udev 可管理保存在/dev 目录下的文件、文件只有在接入相应设备后才会生成、设备被拔出后自动删除

它还允许用户添加规则、以便修改/dev中默认的名称和权限、规则保存在/etc/udev/rules.d/目录下

⑵ MySQL 绑定裸设备

只有InnoDB可以用裸设备

优点:绕过了文件系统,读写速度会有提高,并且数据会比较安全、同时降低文件系统负担、也改善系统性能

缺点:太安全了,好多备份工具可能没法用、dd可以考虑

下面介绍如何为mysql共享表空间绑定裸设备

㈠ 制作裸设备

# 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服务,待其完成分区初始化工作后,再关闭mysql服务

③ 修改raw属性

innodb_data_home_dir =

innodb_data_file_path = /dev/mapper/mysqlvg-sharespace:60Mraw

④ 重启mysql服务

如果整个系统重启、裸设备的权限会被回收、导致mysql无法开启

官网描述如下:

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 报警如下:

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.

此时可选方案:

1)写个简单的初始化脚本、当重启的时候自动授权

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"

推荐阅读:

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值