mysql 数据存储路径迁移

mysql 数据存储路径迁移

*重要
在开始之前,我们用mysqldump对所有数据库做下备份,防止数据损坏导致数据丢失

迁移事项

1.导出备份所有的db

mysqldump -uroot -pxxx xxx > xx.sql

2.mysql配置文件备份

# 停止数据库
systemctl stop mysqld
cp /etc/my.cnf /etc/my.cnf.bak
# 然后修改数据存储路径为你要调整的数据路径

3.数据路径创建及授权

# /data/path是你要更改的数据路径,这里我授权具体路径,/data最外层路径是root,发现还是没写入权限,必须整个data全给才可以,不知道是不是mysql独有的特性
mkdir -p /data/path
chmod 755 -R /data
chown mysql:mysql -R /data

# mysql5.7不需要配置文件也能启动,我在这里踩坑,配置文件是root权限mysql无权限读取,导致走的默认配置
chmod 755 -R /etc/my.cnf
chown mysql:mysql -R /etc/my.cnf

4.对新路径初始化数据

# 就是创建test\mysql等4个默认表
#然后对你的新进目录进行初始化,记得目录里面不要有任何文件
 mysqld --initialize --user=mysql --datadir=/data/path
# 如果文件属主属组有非mysql的,再次授权
chmod 755 -R /data
chown mysql:mysql -R /data

5.重启数据库

systemctl start mysqld
如果启动失败就看看日志
posted @ 2024-10-16 09:38  liwenchao1995  阅读(46)  评论(0编辑  收藏  举报