服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - 如何更改Linux(CentOS)系统下的MySQL数据库目录位置

如何更改Linux(CentOS)系统下的MySQL数据库目录位置

2020-12-31 20:35纳米积木 Mysql

由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据, 没有办法,只能想办法转移数据的目录。 简单整理一下这几天把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql下面具体操作

如何更改CentOS系统下的MySQL数据库目录位置

1、首先我们需要关闭MySQL,命令如下:

?
1
service mysqld stop

2、然后是转移数据,为了安全期间,我们采用复制的命令cp,先找到mysql的原目录

?
1
2
cd /var/lib
ls

运行这个命令之后就会看到mysql的目录了,然后执行cp命令

?
1
cp -a mysql /home/mysql_data/

这样就把数据库复制到/home/mysql_data下面去了

注意:(-a这个参数一定要带着,否则复制过去的权限就不对了。)

如果数据库比较大的话,时间会比较长,可能会超时,具体怎么设置ssh不超时的办法,请大家自己找相关资料。

3、然后我们修改配置文件,一共有三个,下面我一一说明:

修改第一个文件:修改之前先备份

?
1
cp /etc/my.cnf /etc/my.cnfbak
?
1
vi /etc/my.cnf

打开之后修改datadir的目录为/home/mysql_data/mysql

socket改成/home/mysql_data/mysql/mysql.sock,为了安全起见,你可以把原来的注释掉,然后重新加入一行,改成现在的目录。

修改第二个文件:修改之前先备份

?
1
cp /etc/init.d/mysqld /etc/init.d/mysqldbak
?
1
vi /etc/init.d/mysqld

注意:准确的位置是/etc/rc.d/init.d/mysqld,由于这里这里有一个/etc/init.d/etc/rc.d/init.d的映射,

所以用上面的命令即可,也简单。

把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:/home/mysql_data/mysql

修改第三个文件:修改之前先备份

?
1
cp /usr/bin/mysqld_safe /usr/bin/mysqld_safebak
?
1
vi /usr/bin/mysqld_safe

这里也是修改datadir的目录为/home/mysql_data/mysql

4、下面需要建立一个mysql.sock的链接:

?
1
ln -s /home/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sock

至此所有的修改都完成了,下面启动mysql

?
1
service mysqld start

或者重启linux

?
1
reboot

看下Mysql是否正常运行,如果能正常启动,那基本上就没什么问题了。

更多关于Mysql的基础教程请点击下面的相关文章

原文链接:https://www.cnblogs.com/hekw07/p/4042665.html

延伸 · 阅读

精彩推荐