CentOS 7 下 修改Mysql 5.7datadir的位置,无法启动的问题解决
2017-10-20 08:57
1016 查看
CentOS 7 下MySQL 默认安装在/var/lib/mysql目录下,但是随着存储数据的增多,所在的硬盘空间很快被占满,导致无法进行插入、建表等操作。
这时需要将mysql数据存储文件夹移植到别的文件夹下,网上有很多教程,如http://www.cnblogs.com/5201351/p/4912614.html,是一篇很好的教程,但是在实际移植过程发现,只有Mysql的数据文件夹/var/lib/mysql被改为其他目录,无论如何修改/etc/my.cnf配置中的datadir和socket参数,都无法移动mysqld。
使用如下命令,启东mysql
service mysqld start
会出现如下错误:
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
如果使用如下命令查看
service mysqld status
会得到如下错误信息
Redirecting to /bin/systemctl status mysqld.service
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: failed (Result: start-limit) since Fri 2017-10-20 09:03:33 CST; 1min 11s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 5130 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=1/FAILURE)
Process: 5108 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 15110 (code=exited, status=0/SUCCESS)
Oct 20 09:03:33 bigdata-6 systemd[1]: Failed to start MySQL Server.
Oct 20 09:03:33 bigdata-6 systemd[1]: Unit mysqld.service entered failed state.
Oct 20 09:03:33 bigdata-6 systemd[1]: mysqld.service failed.
Oct 20 09:03:33 bigdata-6 systemd[1]: mysqld.service holdoff time over, scheduling restart.
Oct 20 09:03:33 bigdata-6 systemd[1]: start request repeated too quickly for mysqld.service
Oct 20 09:03:33 bigdata-6 systemd[1]: Failed to start MySQL Server.
Oct 20 09:03:33 bigdata-6 systemd[1]: Unit mysqld.service entered failed state.
Oct 20 09:03:33 bigdata-6 systemd[1]: mysqld.service failed.
一开始总以为是配置的问题,后来仔细查看一下msyql的日志文件: /var/log/mysqld.log
出现了几个Warning,说文件无法创建
120609 11:31:31 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
120609 11:35:12 mysqld_safe Starting mysqld daemon with databases from /mnt/hgfs/mysql_data
120609 11:35:13 [Warning] Can't create test file /home/mysql_data/data.lower-test
120609 11:35:13 [Warning] Can't create test file /home/mysql_data/data.lower-test
/usr/libexec/mysqld: Can't change dir to '/home/mysql_data/' (Errcode: 13)
120609 11:35:13 [ERROR] Aborting
120609 11:35:13 [Note] /usr/libexec/mysqld: Shutdown complete
120609 11:35:13 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
解决方案:
关闭mysql: service mysqld stop
1、编辑/etc/selinux/config 文件,将其中的SELINUX禁用,SELINUX=disabled,重新启动系统。
2、移动/var/lib/mysql到你需要的文件夹,mv /varlib/mysql /home/mysqldata
3、在/var/lib下创建一个链接ln -s /home/mysqldata mysql (这种方法可以不用修改my.cnf配置)
4、启动mysql: service mysqld start
记录一下,
这时需要将mysql数据存储文件夹移植到别的文件夹下,网上有很多教程,如http://www.cnblogs.com/5201351/p/4912614.html,是一篇很好的教程,但是在实际移植过程发现,只有Mysql的数据文件夹/var/lib/mysql被改为其他目录,无论如何修改/etc/my.cnf配置中的datadir和socket参数,都无法移动mysqld。
使用如下命令,启东mysql
service mysqld start
会出现如下错误:
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
如果使用如下命令查看
service mysqld status
会得到如下错误信息
Redirecting to /bin/systemctl status mysqld.service
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: failed (Result: start-limit) since Fri 2017-10-20 09:03:33 CST; 1min 11s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 5130 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=1/FAILURE)
Process: 5108 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 15110 (code=exited, status=0/SUCCESS)
Oct 20 09:03:33 bigdata-6 systemd[1]: Failed to start MySQL Server.
Oct 20 09:03:33 bigdata-6 systemd[1]: Unit mysqld.service entered failed state.
Oct 20 09:03:33 bigdata-6 systemd[1]: mysqld.service failed.
Oct 20 09:03:33 bigdata-6 systemd[1]: mysqld.service holdoff time over, scheduling restart.
Oct 20 09:03:33 bigdata-6 systemd[1]: start request repeated too quickly for mysqld.service
Oct 20 09:03:33 bigdata-6 systemd[1]: Failed to start MySQL Server.
Oct 20 09:03:33 bigdata-6 systemd[1]: Unit mysqld.service entered failed state.
Oct 20 09:03:33 bigdata-6 systemd[1]: mysqld.service failed.
一开始总以为是配置的问题,后来仔细查看一下msyql的日志文件: /var/log/mysqld.log
出现了几个Warning,说文件无法创建
120609 11:31:31 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
120609 11:35:12 mysqld_safe Starting mysqld daemon with databases from /mnt/hgfs/mysql_data
120609 11:35:13 [Warning] Can't create test file /home/mysql_data/data.lower-test
120609 11:35:13 [Warning] Can't create test file /home/mysql_data/data.lower-test
/usr/libexec/mysqld: Can't change dir to '/home/mysql_data/' (Errcode: 13)
120609 11:35:13 [ERROR] Aborting
120609 11:35:13 [Note] /usr/libexec/mysqld: Shutdown complete
120609 11:35:13 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
解决方案:
关闭mysql: service mysqld stop
1、编辑/etc/selinux/config 文件,将其中的SELINUX禁用,SELINUX=disabled,重新启动系统。
2、移动/var/lib/mysql到你需要的文件夹,mv /varlib/mysql /home/mysqldata
3、在/var/lib下创建一个链接ln -s /home/mysqldata mysql (这种方法可以不用修改my.cnf配置)
4、启动mysql: service mysqld start
记录一下,
相关文章推荐
- Mysql修改datadir导致无法启动问题解决方法
- Mysql修改datadir导致无法启动问题解决方法
- MySQL服务在windows系统中修改Data路径后无法启动问题解决
- Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini及服务无法启动的快速解决办法(问题小结)
- MySQL在windows系统中修改datadir路径后无法启动问题,报错1067
- mysql 5.7以上免安装版本无法找到data文件夹问题的解决办法
- 问题解决:mysql 5.7安装包没有data文件夹启动mysql
- nginx在centos中遇到无法正常启动问题,及mysql修改root用户的密码
- Wamp2.5 64bit,无法修改MySQL datadir位置
- CentOS7中MariaDB修改datadir后无法启动的解决方法
- 解决centos下MYSQL无法启动但存在锁定sock的问题
- 解决修改mysql的data_dir所引发的错误问题
- Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini以及服务无法启动的解决办法
- WINDOWS下更改MYSQL数据路径(datadir)后服务启动碰到1067问题及解决
- WINDOWS下更改MYSQL数据路径(datadir)后服务启动1067解决不能改变mysql数据库存储位置
- 远程Linux服务器修改Mysql数据库编码及解决编码修改后Mysql无法启动的问题
- 解决XAMPP中,MYSQL因修改my.ini后,无法启动的问题
- mysql 5.7版本无法启动/目录无data文件夹 的解决办法
- mysql更改datadir后无法启动解决
- WINDOWS下更改MYSQL数据路径(datadir)后服务启动1067解决不能改变mysql数据库存储位置