服务报价 | 域名主机 | 网络营销 | 软件工具| [加入收藏]
 热线电话: #
当前位置: 主页 > 开发教程 > linux教程 >

CentOS7使用SELinux修改MySQL的Datadir路径

时间:2016-04-29 00:10来源:未知 作者:最模板 点击:
CentOS7使用SELinux修改MySQL的Datadir路径,有一些permission的问题。可能是SELinux造成的。 尝试使用mv和ln的方法 service mysqld stopmv /var/lib/mysql/* /home/data/mysql/ #移动数据ln -s /home/data/mysql/ /var/li

CentOS7使用SELinux修改MySQL的Datadir路径,有一些permission的问题。可能是SELinux造成的。
尝试使用mv和ln的方法

service mysqld stop
mv /var/lib/mysql/* /home/data/mysql/  #移动数据
ln -s /home/data/mysql/ /var/lib/mysql/  #创建软连接
service mysqld start #启动mysql

然而结果是

[root@slave02 lib]# service mysqld start
Redirecting to /bin/systemctl start  mysqld.service
.......  #一直停在这里

在长久的等待后

[root@slave02 lib]# service mysqld start
Redirecting to /bin/systemctl start  mysqld.service
Job for mysqld.service failed because a timeout was exceeded. See "systemctl status mysqld.service" and "journalctl -xe" for details.

selinux

[root@slave02 lib]# getenforce 
Enforcing
[root@slave02 lib]# ls -Zl /var/lib/mysql
lrwxrwxrwx. 1 unconfined_u:object_r:mysqld_db_t:s0 mysql mysql 17 Mar  3 14:27 /var/lib/mysql -> /home/data/mysql/

在另一台正常安装mysql的机器上尝试:

[root@slave01 lib]# ls -Zl /var/lib/mysql
total 110604
-rw-rw----. 1 system_u:object_r:mysqld_db_t:s0 mysql mysql       56 Mar  3 14:27 auto.cnf
-rw-rw----. 1 system_u:object_r:mysqld_db_t:s0 mysql mysql 12582912 Mar  3 14:27 ibdata1
-rw-rw----. 1 system_u:object_r:mysqld_db_t:s0 mysql mysql 50331648 Mar  3 14:27 ib_logfile0
-rw-rw----. 1 system_u:object_r:mysqld_db_t:s0 mysql mysql 50331648 Mar  3 14:26 ib_logfile1
drwx------. 2 system_u:object_r:mysqld_db_t:s0 mysql mysql     4096 Mar  3 14:26 mysql
srwxrwxrwx. 1 system_u:object_r:mysqld_var_run_t:s0 mysql mysql        0 Mar  3 14:27 mysql.sock
drwx------. 2 system_u:object_r:mysqld_db_t:s0 mysql mysql     4096 Mar  3 14:26 performance_schema

但是我懒得了,我要用暴力方法。

关闭SELinux:

1、快速关闭SElinux,使用如下命令就可以:

/usr/sbin/setenforce 0 立刻关闭 SELINUX
/usr/sbin/setenforce 1 立刻启用 SELINUX

2、加到系统默认启动里面

echo "/usr/sbin/setenforce 0" >> /etc/rc.local

3、可以编辑配置文件达到同样的目的

 vi /etc/selinux/conf
 set SELINUX=disabled
(责任编辑:最模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------