Centos 通过yum安装(RPM分发进行安装)MySQL的几个人默认目录如下:
目录 目录内容
/usr/bin 客户端程序和脚本
/usr/sbin mysqld服务器
/var/lib/mysql 日志文件,数据库文件
/usr/share/mysql 错误消息和字符集文件
/etc/my.cnf 配置文件
假如要把目录移到/home/data下需要进行下面几步:
1、home目录下建立data目录
1 mkdir -p /home/data & cd /home/data/
2、把MySQL服务进程停掉
1 [root@localhost data]# mysqladmin -u root -p shutdown
2 Enter password:
3、把/var/lib/mysql整个目录移到/home/data
1 mv /var/lib/mysql /home/data/
或者
1 cp -R /var/lib/mysql /home/data/
这样就把MySQL的数据文件移动到了/home/data/mysql下
4、设置/home/data/下mysql文件夹的属主和权限
1 chown -R mysql:mysql /home/data/mysql
复制代码
1 [root@localhost data]# ls
2 mysql
3 [root@localhost data]# ll
4 drwxr-x–x. 5 root root# 4096 10月 31 04:03 mysql
5 [root@localhost data]# chown -R mysql:mysql /home/data/mysql
6 [root@localhost data]# ll
7 drwxr-x–x. 5 mysql mysql# 4096 10月 31 04:03 mysql
复制代码
5、修改配置文件/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/data/mysql/mysql.sock 以及修改datadir为/home/data/mysql操作如下:
1 #datadir=/var/lib/mysql
2 datadir=/home/data/mysql
3 #socket=/var/lib/mysql/mysql.sock
4 socket=/home/data/mysql/mysql.sock
6、重新启动MySQL服务
1 service mysqld start
往往坑总是一个接着一个。
启动异常
以上截图看不到任何问题,我们来查看一下日志
1 tail -n 1000 /var/log/mysqld.log -f
详细的日志信息
1 2017-10-31T08:48:06.533321Z 0 [Warning] Can’t create test file /home/data/mysql/localhost.lower-test
2 2017-10-31T08:48:06.533401Z 0 [Note] /usr/sbin/mysqld (mysqld 5.7.20) starting as process 25325 …
3 2017-10-31T08:48:06.536585Z 0 [Warning] Can’t create test file /home/data/mysql/localhost.lower-test
4 2017-10-31T08:48:06.536617Z 0 [Warning] Can’t create test file /home/data/mysql/localhost.lower-test
解决:
设置一个SELinux即可
1 setenforce 0
纵然世间炎凉百态!我自依旧初心不改!!
