备份恢复前准备

  1. 务必确保数据库版本为5.7或者8.0(这两个版本数据可跨版本恢复)

  2. 确保源数据库和目标数据库必要参数已被修改且一致

  3. 如果数据准备恢复至其他用户(原用户与目标用户名不一致),需在目标库建一个相同权限的同名用户即可,或者在备份完成后对备份文件进行处理,在linux下执行如下命令

    1
    2
    [root@localhost ~]# sed -i "s/DEFINER=\`[^\`]\+\`@\`[^\`]\+\`//g" bak.sql
    [root@localhost ~]# sed -i "s/DEFINER = '[^']\+'@'[^']\+'//g" bak.sql

工具备份迁移

  • 推荐使用sqlyog进行备份,不要使用navicate,因为navicate在备份数据库时函数和存储过程被视为同一类数据库对象处理,在导入时常常因为导入的先后问题导致导入失败
  • 导出过程:右键要导出的数据库,备份/导出-备份数据库