CentOS6.7 修改MySQL默認的數據文件目錄


隨着業務量的增長,MySQL默認安裝數據文件存放位置分區大小出現瓶頸,通常需要將datadir換到較大的分區。
CentOS6.7下MySQL5.6認安裝數據文件存放位置/var/lib/mysql
修改MySQL數據文件存放路徑到擴展分區/data/mysql下:

1.關閉MySQL

[root@vm-vc02 ~]# service mysql stop

2.移動mysql默認的數據文件到/data/下

[root@vm-vc02 ~]# mv /var/lib/mysql /data/

3.修改mysql配置文件/etc/my.cnf

修改# datadir = .....
為datadir = /data/mysql/
修改# socket = .....
為socket = /data/mysql/mysql.sock

4.檢查SELinux狀態(CentOS必須)

[root@vm-vc02 ~]# getenforce
若收到的返回值為”Permissive”或者”Disabled”,則此步驟結束,直接進入下一步。
若收到的返回值為”Enforcing”,則調整SELinux參數以接受MySQL配置的更新:
安裝policycoreutils-python
[root@vm-vc02 ~]# yum provides /usr/sbin/semanage
[root@vm-vc02 ~]# yum whatprovides /usr/sbin/semanage
[root@vm-vc02 ~]# yum -y install policycoreutils-python
這里要注意,semanage使用的是python2.X,因為本機的環境默認是python3.X,所以要修改semanage配置文件/usr/sbin/semanage,文件頭改成python2.X.
#! /usr/bin/python -Es改為
#! /usr/bin/python2.6 –Es
運行semanage命令,為新的mysql數據文件路徑添加上下文映射
[root@vm-vc02 ~]# semanage fcontext -a -t mysqld_db_t "/data/mysql(/.*)?"
使上面的映射生效
[root@vm-vc02 ~]# restorecon -Rv /data/mysql

5.啟動MySQL
[root@vm-vc02 ~]# service mysql start

如果這一步失敗,可以disable掉selinux,重啟服務器后重新用semanage設置selinux狀態:

[root@vm-vc02 ~]# vi /etc/selinux/config

#SELINUX=enforcing

SELINUX=disabled

[root@vm-vc02-SR910 ~]# reboot

服務器重啟后再次修改selinx配置文件,修改SELINUX=enforcing

啟動mysql

[root@vm-vc02 ~]# service mysql start

6.查看mysql進程,檢查配置是否生效
[root@vm-vc02 ~]# ps -ef | grep mysql
root     10304     1  0 13:54 pts/0    00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/data/mysql/ --pid-file=/data/mysql//vm-vc02-SR910.pid
mysql    10651 10304  0 13:54 pts/0    00:00:01 /usr/sbin/mysqld --basedir=/usr --datadir=/data/mysql/ --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/data/mysql//vm-vc02-SR910.err --pid-file=/data/mysql//vm-vc02-SR910.pid --socket=/data/mysql/mysql.sock --port=3306
root     10710  3269  0 14:32 pts/0    00:00:00 grep mysql
[root@vm-vc02 ~]#

7.操作驗證
登錄mysql,新建數據庫/新建表進行驗證,操作都順利完成的話,mysql數據文件路徑修改
完成。

參考文獻:http://crashmag.net/change-the-default-mysql-data-directory-with-selinux-enabled




注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com