CentOS Linux更改MySQL数据库存贮目录位置
2019-05-18 本文已影响0人
MrBryan
上一篇文章地址:linux下安装mysql-5.7.23(tar.gz)
1、首先我们需要关闭MySQL,命令如下:
sudo service mysql stop
2、然后是转移数据,为了安全期间,我们采用复制命令cp,先找到mysql的原目录
cd /home/mysql/mysqldata
ls 运行这个命令之后就会看到mysqldata的目录了,然后执行cp命令
cp -a mysqldata /data/mysql/ #这样就把数据库复制到 /data/mysql/下面去了
注意:(-a这个参数一定要带着,否则复制过去的权限就不对了。)
添加权限使用
chown -R mysql:mysql /data/mysql/mysqldata
若超时,请检索超时ssh相关信息
3、然后修改配置文件,一共有二个(3.3一般不需要修改),如下:
3.1修改第一个文件:
修改之前先备份cp /etc/my.cnf /etc/my.cnfbak
vi /etc/my.cnf
打开之后修改datadir的目录为/data/mysql/mysqldata
把socket改成/data/mysql/mysqldata/mysql.sock #为了安全起见,你可以把原来的注释掉,然后重新加入一行,改成现在的目录。
3.2修改第二个文件:
修改之前先备份 cp /etc/init.d/mysqld /etc/init.d/mysqldbak
vi /etc/init.d/mysqld
注意:准确的位置是/etc/rc.d/init.d/mysqld,由于这里这里有一个/etc/init.d到/etc/rc.d/init.d的映射,
所以用上面的命令即可,也简单。
把其中datadir=/data/mysql/mysqldata一行中,等号右边的路径改成你现在的实际存放路径:/data/mysql/mysqldata
3.3 修改第三个文件(低版本可能需要修改,高版本不修改此文件)
修改之前先备份 cp /usr/local/mysql/bin/mysqld_safe /usr/local/mysql/bin/mysqld_safebak
vi /usr/local/mysql/bin/mysqld_safe
这里修改datadir的目录为/data/mysql/mysqldata
4 以上步骤操作完毕之后
sudo service mysql restart