-------先查看datadir的路径------------------------------------

use mysql
show variables like '%datadir%';

————————————————————————
--datadir=/data/mysqldata/mysql      老的

--datadir=/bigdata/new_mysqldata    新的

————————————————————————

改变MySQL数据文件的存储目录时,需要执行以下步骤:

1.新建一个用于存储数据的目录

 mkdir -p /bigdata/new_mysqldata

2.停止MySQL服务器:

 systemctl stop mysql.service

也可以先再次启动下看看是否能正常启动,排除其他人改了配置未重启

3.执行计划任务中的备份脚本,备份当前最新的mysql数据

4.将当前的MySQL数据目录```到新的目录 /bigdata/new_mysqldata

 cp -a /data/mysqldata/mysql /bidata/new_mysqldata

5.修改 MySQL 配置文件 /etc/my.cnf。将 datadir 参数设置为新的 MySQL 数据目录 /bigdata/new_mysqldata, 其他相关的老路径都改为新目录

 sed -i 's/data\/mysqldata/bigdata\/new_mysqldata/' /etc/my.cnf | grep new_mysqldata

 [mysqld]
 datadir=/bigdata/new_mysqldata

6.将binlog-index进行编辑,将源路径修改为目标(实际)路径,读取新的binlog位置

 sed -i 's/data\/mysqldata/bigdata\/new_mysqldata/' binlog-index | grep new_mysqldata

7.重启 MySQL 服务器

 systemctl start mysql.service

8.确认 MySQL 数据库是否已经正常启动

systemctl status mysql.service    

ps -ef |grep mysql

确认下是否改成功,以及库是否正确————————————————————————

show databases;

use mysql

show variables like '%datadir%'; #查看datadir的路径是否已经更改

将老的/data/mysqldata/mysql 移走,mv /data/mysqldata /data/oldmysqldata

如果遇到启动问题参考链接与错误日志一步一步排查: https://blog.csdn.net/xiaojie12312/article/details/123998691


参考链接:

https://blog.csdn.net/weixin_34722157/article/details/113286099?ops_request_misc=&request_id=&biz_id=102&utm_term=mysql%E5%A6%82%E4%BD%95%E5%86%B7%E5%A4%87%E4%BB%BD&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-2-113286099.142^v88^control_2,239^v2^insert_chatgpt&spm=1018.2226.3001.4449