在windows下,mysql的备份其实也很简单。

写bat文件

首先,需要知道mysql备份的关键语句:

mysqldump.exe --opt --single-transaction=TRUE --user=xxx(自己的用户名) --password=xxx(自己的密码) --default-character-set=utf8 database(需要备份的数据库名称) >X:\BACKUP\mysql_backup\backup.sql(自己的备份路径)

注意括号的内容,替换成自己的内容即可完成备份。

然后,我们就可以基于这个写一个bat文件:

::设置时间变量
set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%"
::进入mysql安装目录的bin
cd C:\Program Files\MySQL\MySQL Server 8.0\bin\
::执行备份操作
mysqldump.exe --opt --single-transaction=TRUE --user=xxx(自己的用户名) --password=xxx(自己的密码) --default-character-set=utf8 database(需要备份的数据库名称) >X:\BACKUP\mysql_backup\backup_%Ymd%.sql

理解一下内容,set一个变量Ymd,将其放到文件路径后面拼成一个新的备份文件名。因为我们平时很可能一天备份多次,或者一天一次,所以时间名称就很重要了。

删除之前多天的备份文件

备份多了之后,所以之前的文件就没什么用了,可以通过bat将其删除。

forfiles /p "X:\BACKUP\mysql_backup" /m backup_*.sql -d -7 /c "cmd /c del /f @path"

这段循环查找指定文件夹下的所有符合查找文件名规则的文件,并指定日期。最后将其删除。

所以完整的bat文件内容如下:

rem ***** MySQL backup start *****
@echo off
::删除一周之前的备份文件
forfiles /p "X:\BACKUP\mysql_backup" /m backup_*.sql -d -7 /c "cmd /c del /f @path"
::设置时间变量
set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%"
::进入mysql安装目录的bin
cd C:\Program Files\MySQL\MySQL Server 8.0\bin\
::执行备份操作
mysqldump.exe --opt --single-transaction=TRUE --user=xxx(自己的用户名) --password=xxx(自己的密码) --default-character-set=utf8 database(需要备份的数据库名称) >X:\BACKUP\mysql_backup\backup_%Ymd%.sql@echo on
rem ***** MySQL backup end *****

文件中需要注意你的文件路径,同时,需要注意中间进入mysql的bin文件夹,因为mysqldump.exe是bin文件中的文件,如果没有配置全局环境的话,需要先进入到bin文件夹才能继续操作。

写完之后,将bat文件放到我们需要的一个地方。

多说一个小坑

我上面的代码适合一天一次备份。有时候我们需要一天多次备份,这时候Ymd就需要补充时间内容了。

set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%"

这个就是完整的时间格式。

但是我们经常都在凌晨备份,这时time函数有一个坑,在cmd中打印完整的time就可以发现:

这个问题就会导致在备份的时候出现文件名中间有一个空格,无法备份。所以需要解决一下。

最简单的解决方案,使用0替换所有空格:

%Ymd: =0%

将它放到文件名的位置,也就是:

mysqldump.exe --opt --single-transaction=TRUE --user=xxx(自己的用户名) --password=xxx(自己的密码) --default-character-set=utf8 database(需要备份的数据库名称) >X:\BACKUP\mysql_backup\backup_%Ymd: =0%.sql

另外还可以跳过time的第一位,这里就不多说了。

windows下自动化

windows有一个很方便的工具:任务计划。

右键 我的电脑/此电脑,点击管理:

打开后找到 计算机管理 > 系统工具 > 任务计划程序,然后点击右侧的创建基本任务:

打开对话框,首先输入名称:

然后根据需要选择触发器,我这里只需要每天执行一次就可以:

选择具体的时间:

选择具体的操作,这里我们是要运行我们自己的bat文件,所以选择运行程序即可:

选择启动文件路径,这里我们选择我们的bat文件,并不需要参数:

然后会显示概览,最后点击完成,就可以在计划任务中看到我们的添加项:

然后,我们就可以让它自动的运行了~

windows下mysql自动备份相关推荐

  1. linux删除mysql临时文件_linux下mysql自动备份数据库与自动删除临时文件_MySQL

    bitsCN.com linux下mysql自动备份数据库与自动删除临时文件 一.每日23:00自动删除临时文件 首先查看一下crontab的任务列表:crontab -l然后新建:crontab - ...

  2. win+mysql自动备份吗_Windows下mysql自动备份的最佳方案

    网上有很多关于window下Mysql自动备份的方法,其实不乏一些不好的地方和问题,现总结出一个最好的方法供大家参考: 新建一个记事本,然后重命名为: mysql_backup.bat 然后单击右键选 ...

  3. linux mysql 临时文件_linux下mysql自动备份数据库与自动删除临时文件

    一.每日23:00自动删除临时文件 首先查看一下crontab的任务列表: crontab -l 然后新建: crontab -e 添加一行: 00 03 * * * rm -rf /www/cmst ...

  4. Windows环境MySQL自动备份脚本

    Windows环境MySQL自动备份脚本 备份需求 每个库单独一个文件 压缩备份文件 晚上23点定时备份 解决方案 创建一个MySQL备份脚本mysql_backup.bat,并在Windows任务计 ...

  5. mysql自动备份脚本linux_一个Mysql自动备份脚本,定时备份MYSQ脚本,linux下Mysql自动备份脚本...

    本文转自:http://hi.baidu.com/visual_art/item/6713e2091b41ea33a2332a15 #!/bin/bash #This is a ShellScript ...

  6. Windows下Mysql定时备份的实现

    使用mysql的mysqldump命令,结合windows的任务计划程序,可以实现Mysql数据的自动备份. 一.批处理文件bat的创建 @echo off set "Ymd=%date:~ ...

  7. 自动备份html文件,windows下定期自动备份本地文件(文件夹)

    虽然网上有一些免费的文件自动备份软件,但是没有自己编写一段批处理来完成备份任务来的放心,而且不用占用系统资源. 就给大家讲一下如何利用批处理完成本地文件或者文件夹的备份. 1.批处理脚本 该方法可把某 ...

  8. oracle 备份批处理,windows下oracle自动备份批处理

    上一篇日志中,我将windows下的备份流程分成了五步走.本日志就结合上篇的理论来个实例.该实例是来自于我现网的中的一个备份示例(不要想着弄我密码啊,内容改过的,呵呵).费话少说,直接上脚本: @ec ...

  9. linux中mysql自动备份操作文档_linux下mysql自动备份和自动删除文件功能实现

    1 , mysql无密码登录shell>vi ~/.my.cnf [client] host=localhost user=root password=123456 2,备份脚本#!/bin/b ...

最新文章

  1. 阿里云Windows服务器重启后无法远程桌面连接,大量注册表在检测
  2. jsp里面的input的值吗_一个jsp页面中的input框向另一个jsp页面的input框传值
  3. OpenCV检测平面物体
  4. Windows Azure Cloud Service (23) 使用Full IIS模式部署多站点和虚拟目录
  5. 容器编排技术 -- Kubernetes kubectl get 命令详解
  6. c语言troubc int类型占几个字节,程序设计基础(C)第06讲例程
  7. AI佳作解读系列(二)——目标检测AI算法集杂谈:R-CNN,faster R-CNN,yolo,SSD,yoloV2,yoloV3...
  8. Atitit 软件开发中的艾提拉思想与理念总结 后端优先 手机优先 做好政治动员 高层抽象 一定要出理论结果书籍总结 技术就是艺术 三个软件层次的划分 实现层 规划层 艺术层 无限生
  9. 剥丝抽茧|阿里面试题解读:MQ消费端遇到瓶颈该怎么办?
  10. java批量生成条形码图片 打包zip
  11. 蓝桥杯 2015 javaB组 校赛
  12. 如何挑选童书《神奇的校车》
  13. GBase 8c核心技术简介
  14. OpenSSL SSL_read: Connection was aborted, , errno 10053
  15. 强大的 mysql管理工具之 Mysql Query Browser
  16. linux yum报错:Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile
  17. 51单片机实例5——基于单片机的花样彩灯
  18. 车辆识别号(VIN)验证
  19. linux系统下怎么安装.deb文件?
  20. 视频教程-JAVAEE真实课堂之MySQL数据库-云计算基础架构

热门文章

  1. python在线运行-在线 Python运行工具
  2. kubernetes集群配置Cgroups驱动
  3. jQuery(三)—节点操作和元素尺寸
  4. Connections could not be acquired from the underly
  5. 点菜系统源代码 php,微信点餐系统php源代码.doc
  6. css继承-文字及inherit/优先级-权重/盒子问题box-sizing/溢出overflow
  7. 123变321(练习)
  8. android sax创建xml文件
  9. 石家庄盛鼎科技有限公司笔试题
  10. 物流机器人的智能化与自动驾驶技术的应用