[备忘]mysql备份与还原基操实践

初心:

由于Navicat同步的数据库较大时,同步速度很慢,所以想用更快的方式,至少要比这种方式快。

现象-工具备份:

如图所示,经测试,Navicat同步一个1991kb的库用了近4秒。

当数据量更大的时候,毫无疑问,时间将会多到你怀疑人生。

工具还原:

测试结果:

如图所示,执行结果用时近9秒。

测试环境:

Navicat for mysql15.*

mysql8.0

windows10 i5 12核

命令行备份:

操作步骤

  1. 进入MySQL的bin目录
  2. 书写命令:mysqldump -uroot -p zc_game_admin > F:/whua/databackup/zc_game_admin .db(这里要注意的是,备份文件扩展名为db,导出的名称要和导入目标数据库名要一致,否则无法导入)
  3. 回车确认
  4. 输入密码并执行导出

测试结果:

当输入密码执行导出那一刻开始,到备份完成,明显很快且不足1秒。

命令行还原:

操作步骤

  1. 进入MySQL的bin目录
  2. 书写命令:mysql -uroot -p test < F:/whua/databackup/test.db(这里第1个test为已有的数据库名称,第2个test.db为之前导出的数据库文件,前后必须一致)
  3. 回车确认
  4. 输入密码并执行导入

测试结果:

当输入密码执行导出那一刻开始,到备份完成,时间平均约为15.75秒,后面多次测试都比较多,有18秒、15秒、16秒、14秒的。

小贴士:

  • 导出符号为 >
  • 导入符号为 <
  • 导出的文件名要与导入的目标数据库名要一致

总结:

命令行备份比工具备份快3倍,命令行还原比工具还原慢一倍。

由于线上环境随时都有人在使用,为避免用户端长时间等待,所以建议用命令行备份,用工具还原。(不绝对,具体可视情况而定)

Guess you like

Origin blog.csdn.net/qq_15941409/article/details/118524055