linux下更改MySQL数据库存储路径

魔王先生 建站知识 11个月前 1674℃ 0
摘要:

一直用的军哥的lnmp一键包,这个一键包默认的数据库数据文件(主要是各个站点的数据库,数据库日志文件)存储在/usr/local/mysql/var这个文件夹下,最近有个机器出现了数据库空间不足的情...

一直用的军哥的lnmp一键包,这个一键包默认的数据库数据文件(主要是各个站点的数据库,数据库日志文件)存储在/usr/local/mysql/var 这个文件夹下,最近有个机器出现了数据库空间不足的情况,所以想把数据库存储换到空间更充足的目录下,下面记录一下操作的方法,这里就以更改到/home/sql/var 举例说明。

1、首先修改/etc/my.cnf 文件,把其中的3个地方修改成你想要更改的路径(默认路径是这个/usr/local/mysql/var),需要说明的是我是使用了innodb的,如果你没有用,只修改第一个就行了,修改的方法可以直接vi改也可以把my.cnf文件下载下来本地修改后上传:

datadir = /usr/local/mysql/var
innodb_data_home_dir = /usr/local/mysql/var
innodb_log_group_home_dir = /usr/local/mysql/var

修改为:

datadir = /home/sql/var
innodb_data_home_dir = /home/sql/var
innodb_log_group_home_dir = /home/sql/var

如果硬盘空间有限、可以注销掉下面这2行,详情请看我的这篇文章:
《关于“MySQL server PID file could not be found!”问题的解决方法》

# log-bin=mysql-bin
# binlog_format=mixed

2、关闭lnmp,主要是避免数据转移时正在读写造成的文件损坏:

lnmp stop

3、复制var文件夹到你指定的/home/sql/下:

cp -r /usr/local/mysql/var /home/sql/

4、使用下面的命令给数据库目录 /home/sql/var 赋予 mysql 权限:

chgrp -R mysql /home/sql/var && chown -R mysql /home/sql/var

5、启动lnmp

lnmp start

搞定收工!

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。