频道栏目
首页 > 资讯 > MySQL > 正文

MySQL5.6修改数据库存储路径

17-08-09        来源:[db:作者]  
收藏   我要投稿

再次提醒:这篇文章只在MySQL5.6.28测试通过

网上修改存储路径的文章各种各样,之前服务器搬迁的时候,因为原本的空间不足,修改的时候也是照着网上的来,期间各种错误,最后也是莫名其妙的成功了(三台服务器只成功了两台)!这次测试服务器重做系统再次操作的时候,仔细看了MySQL的err日志,发现竟然如此简单!请看小弟一一道来!

背景:数据库全部默认装完以后,数据库存储路径是在/var/lib/mysql下,我需要将其更改到/data/下,我在/data/挂载了一块300G的硬盘。

首先,将/var/lib/mysql复制到/data/下,命令如下:

cp -rp /var/lib/mysql /data/

注意,这里的-p参数是重点!!!

-p:源目录或者文件的属性保留

网上基本上大部分的文章都没有提到这点,所有会有一部分文章说后续还要更改权限啊,用户啊之类的,其实你需要在复制的时候加上这个参数就可以全部解决!

然后,因为我的配置文件在安装的时候默认是/usr/my.cnf,下面是安装完的提示:

New default config file was created as /usr/my.cnf and
will be used by default by the server when you start it.
You may edit this file to change server settings

但是我更习惯在/etc/my.cnf。所以复制一份到/etc/下,然后在配置文件中增加以下两行即可!

    socket = /data/mysql/mysql.sock
    datadir = /data/mysql

然后就可以正常启动了,是不是特!别!简!单!还需要注意以下几点:

所有操作都得先关闭数据库! 将/usr/my.cnf复制一份到/etc/my.cnf后,/usr/my.cnf下的配置自动就失效了。这个不知道是不是所有版本的都这样,没仔细研究过。 MySQL报错习惯看错误日志,比控制台输出的错误信息要详细的多。比方说如果是普通的复制,修改完配置文件控制台报的是”pid”文件错误还是”mysql.sock”错误来着。但是你在err日志中查看,会看到‘./mysql/XXX.frm’ 之类的错误。但是这个文件确实存在,仔细看就会发现,所属用户从mysql变成了root,导致mysql启动的时候权限不足!
相关TAG标签
上一篇:Linux&Win双系统下时间显示不正常的问题
下一篇:linux 常用命令
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站