MySQL操作:数据库迁移

12/31/2025 后端数据库MySQL

目录


参考:


# MySQL操作:数据库迁移

# 概要说明

# 常用命令


1

# 环境依赖

软件/系统 版本 架构 包名 安装方式 备注
Linux CentOS7.X x86_64
MySQL 5.7.x

# 迁移:数据目录拷贝方式

注意:MySQL的版本需要保持一致,因为不同版本之间可能存在兼容性问题。

# 查看数据目录

# 登录,账户:root
mysql -u root -p
# 查看数据所在目录
show variables like 'datadir';
1
2
3
4

image-20250325104536458

# 停止数据库运行

# 停止
sudo ./mysql.server stop
# 或(已配置启用mysql.service服务管理)
sudo systemctl stop mysql
1
2
3
4

# 提取原始数据

# 压缩打包原始数据
sudo tar -czvf mysql.tar.gz /var/lib/mysql
1
2
  • -c:创建新的归档文件。
  • -z:使用gzip进行压缩。
  • -v:显示打包过程中的详细信息(可选)。
  • -f:指定打包文件的名称。

# 迁入目标数据库

备份目标数据库

# 创建备份目录
sudo mkdir /data/bak/mysql
# 复制原始数据至备份目录
sudo cp -R -p /var/lib/mysql/* /data/bak/mysql/
1
2
3
4

解压缩原始数据至目标数据目录

sudo tar -xzvf mysql.tar.gz -C /var/lib/mysql --strip-components=1
1
  • -x:解压缩文件。
  • -z:使用gzip解压缩(适用于.tar.gz文件)。
  • -v:显示解压缩过程中的详细信息(可选)。
  • -f:指定压缩文件名。
  • -C:指定解压缩的目标路径。
  • --strip-components=1: 去掉压缩包中的第一层目录,只解压缩其子文件。

检查配置文件中的数据存储目录

# 查看配置文件
cat /etc/my.cnf 
1
2

重点关注:datadir、socket

# 启动数据库服务

# 启动
sudo ./mysql.server start
# 或(已配置启用mysql.service服务管理)
sudo systemctl start mysql
1
2
3
4
上次更新时间: 3/25/2025, 9:45:18 AM