您的位置:首页 > 运维架构 > Linux

Centos 下更改MySQL源数据存放目录(datadir)

2017-12-19 15:21 288 查看
MySQL在安装完成之后,其源数据默认存放在 /var/lib/mysql/
目录下,一般情况下,该目录在根目录下,由于Linux系统默认  根目录所在挂载的磁盘容量有限,随着生产数据的不断产生,该目录会越来越大,如果磁盘空间不足,Mysql 会报Got error 28 from storage engine错误,所以最好将MySQL的数据目录进行更改。查看MySQL源数据存放路径的命令是
show variables like 'datadir';
结果如图:

   


停止MySQL服务器,命令为:
service mysql stop 。
创建新的数据目录/home/datadir,命令为:
mkdir /home/datadir

将以前的数据文件复制到新的数据目录下,命令为:
cp -rf /var/lib/mysql /home/datadir

更改配置文件my.cnf,命令为:

vim /etc/my.cnf

将参数datadir修改为

datadir = /home/datadir/mysql

将参数sock(有两处,分别在client和mysqld)都修改为
 socket = /home/datadir/mysql/mysql.sock 修改之后如下图所示:


然后,:wq 保存退出。

.修改MySQL启动脚本,命令为:

vim /etc/init.d/mysql 。

#datadir=/var/lib/mysql(注释此行)
  datadir=/home/datadir/mysql(加上此行),如图:



然后 :wq 保存并退出
解决目录权限问题命令:
chown -R mysql:mysql /home/datadir/mysql

如果防火墙未关闭则关闭防火墙: setenforce 0
service
mysql start ,启动MySQL再次使用

show variables like 'datadir';命令查看datadir,如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: