zoukankan      html  css  js  c++  java
  • 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"

    By WaterBin

    2013-07-20

    Good LUCK



  • 相关阅读:
    606. Construct String from Binary Tree
    696. Count Binary Substrings
    POJ 3255 Roadblocks (次短路)
    POJ 2823 Sliding Window (单调队列)
    POJ 1704 Georgia and Bob (博弈)
    UVa 1663 Purifying Machine (二分匹配)
    UVa 10801 Lift Hopping (Dijkstra)
    POJ 3281 Dining (网络流之最大流)
    UVa 11100 The Trip, 2007 (题意+贪心)
    UVaLive 4254 Processor (二分+优先队列)
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3202836.html
Copyright © 2011-2022 走看看