Home 技术笔记 Linux MySQL 备份与恢复完整...

MySQL 备份与恢复完整指南(本地 + 远程)

0

🗄️ MySQL 数据备份是保障数据安全的重要环节,无论是本地数据库还是远程服务器,本教程提供最常用、最标准的备份与恢复命令示例。


一、本地 MySQL 数据库备份与恢复

📌 1. 本地备份数据库

备份命令格式:

mysqldump -u用户名 -p密码 数据库名 > 备份文件名.sql

⚠ 注意事项:

  • -u-p 后面不能有空格
  • 建议给备份文件加日期方便管理

示例:

mysqldump -uroot -p123 wordpress > /home/wwwroot/123-$(date +%Y%m%d).sql

输出:自动生成形如 123-20250101.sql 的文件。


📌 2. 本地恢复数据库

恢复命令格式:

mysql -u用户名 -p密码 数据库名 < 备份文件.sql

示例:

mysql -uroot -p123 wordpress < /home/wwwroot/123-20250101.sql

⚠ 恢复前确保目标数据库已存在:
CREATE DATABASE 数据库名;


二、远程服务器 MySQL 备份与恢复

🌐 1. 远程备份数据库

场景:本机连接远程 MySQL,将远程数据库备份到本地

命令格式:

mysqldump -h 远程IP -P 端口 -u用户名 -p密码 数据库名 > 本地备份文件.sql

示例:

mysqldump -h 11.22.33.44 -P 3306 -uroot -p123 wordpress > wordpress-$(date +%Y%m%d).sql

🌐 2. 远程恢复数据库

可将本地备份恢复到远程 MySQL:

命令格式:

mysql -h 远程地址 -P 端口 -u用户名 -p密码 要恢复的数据库 < 本地备份文件.sql

示例:

mysql -h 11.22.33.44 -P 3306 -uroot -p123 wordpress < wordpress-20250101.sql

📌 实用提示(必读)

✔ 导出包含表结构 + 数据

mysqldump 默认包含结构和数据,无需额外参数。

✔ 若备份大库,提高速度可添加:

mysqldump --single-transaction --quick --lock-tables=false ...

✔ 若远程连接失败,检查:

  • MySQL 是否开放远程连接
  • bind-address 是否为 0.0.0.0
  • 用户是否授权远程访问: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION; FLUSH PRIVILEGES;

✔ 恢复前请确保数据库已创建:

CREATE DATABASE wordpress CHARACTER SET utf8mb4;

NO COMMENTS

LEAVE A REPLY

Please enter your comment!
Please enter your name here

退出移动版