mysqldump 定时备份数据(全量)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysqldump 定时备份数据(全量)相关的知识,希望对你有一定的参考价值。

mysql 数据库备份有很多种(cp、tar、lvm2、mysqldump、xtarbackup)等等,具体使用哪一个还要看你的数据规模。下面给出一个表

 

#摘自《学会用各种姿态备份Mysql数据库》

备份方法 备份速度 恢复速度 便捷性 功能 一般用于
cp 一般、灵活性低 很弱 少量数据备份
mysqldump 一般、可无视存储引擎的差异 一般 中小型数据量的备份
lvm2 一般、支持几乎热备、速度快 一般 中小型数据量的备份
xtrabackup 较快 较快 实现innodb热备、对存储引擎有要求 强大 较大规模的备份

 

 

 

 

 

 

当然了本篇文章只讲mysqldump【官方文档】,其他方式有机会可以给大家分享。在用mysqldump做备份的时候,我的方式比较简单。就是用批处理+定时的方式来做。

mysqldump备份是说白了就是把所需要的语句保存下来。

主要特点适配mysql的所有引擎,支持温备、完全备份、部分备份(支持InnoDB热备)

 

1、首先编写shell脚本

rem *******************************start*****************************
@echo off

set "Ymdhms=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%"
C:\\myserver\\mysql-5.7.10-winx64\\bin\\mysqldump --opt -u root --password=123456 xxxdb > C:\\myserver\\mysql-5.7.10-winx64\\db_backup\\backup_%Ymdhms%.sql

@echo on
rem *******************************end*****************************

说明 

  • rem:备注
  • Ymdhms:时间
  • --opt:代表激活mysqldump命令的quick,add-drop-table,add-locks,extended-insert,lock-tables
  • >:导出
  • xxxdb:待导出的数据库

注意:

  • 一定记得要数据库密码改成自己的,不然导出来的文件会为空
  • 如果导出某一个表在数据库后面接着写表名就可以了 例如:……xxxdb  xxxtable > C:\\mysql……

 

拷贝上边的shell脚本制作成.bat批处理脚本放在合适的位置即可。

还原如下:

mysql>source C:\\xxx.sql

 

2、Windows计划任务

  打开:控制面板->管理工具->任务计划程序->创建任务

  

技术分享

 

常规


 

技术分享

 

触发器(每天凌晨3执行一次备份)


 

 

 技术分享

 

 直接保存,然后设置最后一步

操作


 

技术分享

找到你的批处理文件,添加进来然后确定保存,然后列表中就显示了刚刚设置的任务。

注意:

  比较关键的是别忘记开启

技术分享

 

 本篇做的是mysqldump的(全量备份),下一篇来说说(增量备份)

 

以上是关于mysqldump 定时备份数据(全量)的主要内容,如果未能解决你的问题,请参考以下文章

使用mysqldump进行全量+增量备份方案操作记录

MySQL5.7.18 备份Mysqldump,mysqlpump,xtrabackup,innobackupex 全量,增量备份,数据导入导出

mysqldump + binlog实现增量备份

MySQL数据库全备和增备增量数据恢复案例以及定时清理 binlog 日志

MySQL 主从复制备份策略

mysqldump全量备份与恢复