首页 > 数据库 >简单的mysqldump备份(windows)

简单的mysqldump备份(windows)

时间:2024-08-06 11:32:07浏览次数:14  
标签:set windows 备份 localip% mysqldump dir% _% backup

备份

小数据库用mysql自带的mysqldump就可以完成备份,写一个简单的适用于windows下跑的脚本。

策略

每天凌晨1点全备,保留7天

备份脚本dbbak.bat

set day=%date:~0,4%%date:~5,2%%date:~8,2%
set localip=xxx.xxx.xxx.xxx
set backup_path=D:\dbbak\%localip%
set backup_dir=D:\dbbak\%localip%\%day%
set uname=root
set password=xxxxxxxx
set port=3306
set mysqlhome=D:\apps\app\mysql
set mysqlhomebin=%mysqlhome%\bin

:: create backup_dir
if not exist %backup_dir% ( 
md %backup_dir% 2>nul 
) 
if not exist %backup_dir% ( 
echo Backup path: %backup_dir% not exists, create dir failed. 
goto exit 
) 

:: locate mysql_home/bin
cd /d %mysqlhomebin%
mysqldump -h %localip% -P %port% -u %uname% -p%password% --all-databases --single-transaction --set-gtid-purged=OFF > %backup_dir%\mysqldump_%localip%_%day%.sql


rem --- if you need to compress the dumpfile by winrar and delete source dumpfile, unmark rem
set rar="C:\Program Files\WinRAR\WinRAR.exe"
cd /d %backup_dir%
%rar% a -df mysqldump_%localip%_%day%.rar mysqldump_%localip%_%day%.sql

rem --- remain day for dmp file
set remain_day=7
rem --- delete files before 7 days
forfiles /p "%backup_path%" /s /d -%remain_day% /c "cmd /c del /f @path"

加入定时任务msyql_cron_add.bat

@echo off 

:: ------- 配置项 ------- 

:: 要执行的文件名 
set FILE=D:\dbbak\dbbak.bat 

:: 计划频率类型 
set FREQUENCY=DAILY 

:: 频率,与上面的计划频率类型对应 
set MODIFIER=1 

:: 该计划执行的时间(24 小时制) 
set DATETIME=00:30:00 

:: 计划的名字 
set NAME="Mysql Backup Cron Job" 

:: 计划执行用户,不建议修改 
set USER="System" 

:: ------- 以下请勿修改 ------- 

schtasks /Create /RU %USER% /SC %FREQUENCY% /MO %MODIFIER% /ST %DATETIME% /TN %NAME% /TR %FILE% 
pause 
 
其中的 

:: 计划频率类型,可选项: 
:: MINUTE 分钟 
:: DAILY 天 
:: HOURLY 小时 
:: WEEKLY 周 
:: MONTHLY 月 

:: 频率,与上面的计划频率类型对应 
:: MINUTE: 1 到 1439 分钟 
:: HOURLY: 1 - 23 小时 
:: DAILY: 1 到 365 天 
:: WEEKLY: 1 到 52 周 
:: MONTHLY: 1 到 12,或 FIRST, SECOND, THIRD, FOURTH, LAST, LASTDAY 

标签:set,windows,备份,localip%,mysqldump,dir%,_%,backup
From: https://www.cnblogs.com/haiyoyo/p/18344795

相关文章

  • 简单的mysqldump备份(linux)
    备份小数据库用mysql自带的mysqldump就可以完成备份,写一个简单的适用于linux下跑的脚本。策略每天凌晨1点全备,保留7天备份脚本dbbak.sh#!/bin/bashexportPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin:/usr/local/......
  • 备份和容灾
    备份:备份是容灾的基础,通常指在数据中心内,将全部或部分数据集合从应用主机的硬盘或阵列复制到其他的存储介质的过程。(数据,保证主数据损坏时,有备份数据可以使用)容灾:容灾系统是指相隔较远的异地,建立两套或多套功能相同的IT系统,互相之间可以进行健康状态监视和功能切换,当一处系统因意......
  • Windows bat批处理 新建一个日期时间文件夹 变日期和时间两个文件夹
    前言全局说明Windowsbat批处理新建一个日期时间文件夹变日期和时间两个文件夹一、说明环境:Windows11家庭版23H222631.3737二、错误的结果文件名:time_dir_Y-M-D_H-M_err.bat@echooff::获取当前日期,格式:20190909SETyear=%date:~0,4%SETmonth=%date:~5,......
  • Windows11系统PeoplePane.dll文件丢失问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个PeoplePane.dll文件(挑选合适的版本文件)把......
  • Node.js安装配置(Windows系统)
    一、Node.js简单说就是运行在服务端的JavaScript二、安装Node.js步骤:1、首先找到Windows下的安装包(.msi)       建议安装Node.js v4.4.3(长期支持版本)  ^_^-------本安装教程以v5.2.0为例   Node.js安装包及源码下载地址为:https://no......
  • windows下RabbitMQ安装后,无法进入web管理页面问题
    在window安装rabbitmq,访问http://127.0.0.1:15672/,访问不了;有可能是没开启网页管理界面1、在cmd窗口下进入rabbitmq安装目录下的sbin目录,使用rabbitmq-plugins.batlist查看已安装的插件列表。 2、使用rabbitmq-plugins.batenablerabbitmq_management开启网页管理界面 ......
  • windows C++-使用 C++/WinRT 创作 API(一)
    这个系列中的"投影”不太好有准确的翻译,它的原文是"projection",最开始我觉得可能翻译为实现,但C++本身也有"实现(implementation )",这两个不同的词翻译为一个总觉得怪怪的。本文展示了如何直接或间接使用winrt::implements基本结构来拓展创作C++/WinRTAPI。在此上......
  • windows C++-使用 C++/WinRT 创作 API(二)
    可扩展应用程序标记语言(XAML)是一种声明性语言。具体来讲,XAML可初始化对象和设置对象的属性,使用一种可显示多个对象间分层关系的语言结构,还使用了一种支持类型扩展的支持类型约定。可以在声明性XAML标记中创建可见的UI元素。然后,可以为每个XAML文件关联单独的代码隐藏......
  • WindowsUpdate 更新错误 0x80244018
     更新windows的时候遇到了下载进度始终0%的问题,在网上检索了好多办法,最后在这个回答下(WindowsUpdate更新错误0x80244018-MicrosoftCommunity)解决了这次问题。   当提醒重启计算机的时候,重启,同时会显示正在更新。开机后我的电脑显示已经更新到最新版本。 ......
  • 十万个为什么 [串口] Windows 串口读写
    #include<Windows.h>#include<stdint.h>#include<stdio.h>//---------------------------------------------------------------------------classserial_t{public: ~serial_t(){close();} boolis_open(){returnm_handle!=INVALID......