MySQL操作:数据库迁移
2025/12/31大约 2 分钟
参考:
MySQL操作:数据库迁移
概要说明
常用命令
环境依赖
软件/系统 | 版本 | 架构 | 包名 | 安装方式 | 备注 |
---|---|---|---|---|---|
Linux | CentOS7.X | x86_64 | |||
MySQL | 5.7.x |
迁移:数据目录拷贝方式
注意:MySQL的版本需要保持一致,因为不同版本之间可能存在兼容性问题。
查看数据目录
# 登录,账户:root
mysql -u root -p
# 查看数据所在目录
show variables like 'datadir';

停止数据库运行
# 停止
sudo ./mysql.server stop
# 或(已配置启用mysql.service服务管理)
sudo systemctl stop mysql
提取原始数据
# 压缩打包原始数据
sudo tar -czvf mysql.tar.gz /var/lib/mysql
-c
:创建新的归档文件。-z
:使用gzip
进行压缩。-v
:显示打包过程中的详细信息(可选)。-f
:指定打包文件的名称。
迁入目标数据库
备份目标数据库
# 创建备份目录
sudo mkdir /data/bak/mysql
# 复制原始数据至备份目录
sudo cp -R -p /var/lib/mysql/* /data/bak/mysql/
解压缩原始数据至目标数据目录
sudo tar -xzvf mysql.tar.gz -C /var/lib/mysql --strip-components=1
-x
:解压缩文件。-z
:使用gzip
解压缩(适用于.tar.gz
文件)。-v
:显示解压缩过程中的详细信息(可选)。-f
:指定压缩文件名。-C
:指定解压缩的目标路径。--strip-components=1
: 去掉压缩包中的第一层目录,只解压缩其子文件。
检查配置文件中的数据存储目录
# 查看配置文件
cat /etc/my.cnf
重点关注:datadir、socket
启动数据库服务
# 启动
sudo ./mysql.server start
# 或(已配置启用mysql.service服务管理)
sudo systemctl start mysql