- 备份源数据库(生产环境)
- 使用mysqldump工具备份指定数据库
mysqldump -u [用户名] -p[密码] --databases [数据库名] > [备份文件名].sql
例:mysqldump -u root -p123456 --databases mydb > mydb_backup_20250904.sql
- 更完善的备份命令(包括存储过程,事件,触发器)
mysqldump -u [用户名] -p[密码] --databases [数据库名] \
--routines --events --triggers --single-transaction \
--default-character-set=utf8mb4 > [备份文件名].sql
--routines:备份存储过程和函数
--events:备份事件
--triggers:备份触发器
--single-transaction:确保数据一致性(InnoDB 引擎)
--default-character-set:指定字符集
二:将备份文件传输到测试环境
Scp工具
scp mydb_backup_20250904.sql [测试服务器用户名]@[测试服务器IP]:/tmp/
例如:
三、在测试环境还原数据库
1.登陆到m测试环境的mysql
mysql -u [测试环境用户名] -p[测试环境密码]
- 创建目标数据库(如果不存在)
检查源库配置
SHOW CREATE DATABASE 原库名;
输出示例
CREATE DATABASE `testdb` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci */;
在目标数据库使用相同配置
CREATE DATABASE IF NOT EXISTS <数据库名testdb>
CHARACTER SET <字符集utf8mb4>
COLLATE <排序规则utf8mb4_unicode_ci>;
exit;
3.执行还原操作
mysql -u [测试环境用户名] -p[测试环境密码] [数据库名] < /tmp/mydb_backup_20250904.sql(批量导入)
SOURCE /tmp/db.sql;(单一文件导入)(进入到mysql执行)
- 验证还原结果
- 登陆到测试环境的mysql
mysql -u [测试环境用户名] -p[测试环境密码]
- 检查数据库是否存在并验证数据
-- 查看数据库列表(确认新数据库已存在)
SHOW DATABASES;
-- 使用还原的数据库
USE [数据库名];
-- 查看表结构
SHOW TABLES;
-- 抽查部分数据
SELECT COUNT(*) FROM [表名];




