bat脚本备份mysql数据库

贾琮
• 阅读 185
@echo off
@echo 开始备份数据库
set hour=%Time:~0,2%
if "%Time:~0,1%"==" " set hour=0%Time:~1,1%
set now=%Date:~0,4%%Date:~5,2%%Date:~8,2%-%hour%%Time:~3,2%%Time:~6,2%
set host=IP地址
set port=3306
set user=root
set pass=123456
set dbname=escdb
set back_path=D:\MySQL5\MySQL_back
set backupfile=%back_path%\%dbname%-%now%.sql
"D:\MySQL5\bin\mysqldump" -h%host% -P%port% -u%user% -p%pass% -c --add-drop-table %dbname% > %backupfile%
@echo 数据库备份成功
@echo 删除2天前备份的文件
forfiles /p "%back_path%" /s /m *.sql /d -2 /c "cmd /c del @path"
@echo 完成,3秒后程序退出
以下是对上边代码的解释:

@echo off

@echo 开始备份数据库 //命令行窗口中显示此条信息

set hour=%Time:~0,2% //将hour设置为此刻小时位的时间,从0位置开始取2位

if "%Time:0,1%"==" " set hour=0%Time:1,1% //(小时位如果是个位数例如9点,则默认不是09,而是 9,前一位位空)判断小时位第一位是否为空,如果为空则添加上0,如果不为空则不执行,hour为前一条语句设置的。

set now=%Date:0,4%%Date:5,2%%Date:8,2%-%hour%%Time:3,2%%Time:~6,2% //获取具体时间

set host=192.168.6.246 //设置数据库的ip地址

set port=3308 //设置数据库端口号

set user=root //设置用户名

set pass=123456 //设置用户密码

set dbname=abcd //设置数据库名称

set back_path=D:\MySQL5\MySQL_back //设置备份的数据库的存储文件夹路径

set backupfile=%back_path%%dbname%-%now%.sql //设置每次备份的数据库名称(此处为“数据库名-时间”)

"D:\MySQL5\bin\mysqldump" -h%host% -P%port% -u%user% -p%pass% -c --add-drop-table %dbname% > %backupfile% //备份数据库的语句。(前方引号中的路径,为数据库安装目录下,mysqldump.exe程序的路径)

@echo 数据库备份成功 //命令行窗口中显示此条信息

@echo 删除2天前备份的文件 //命令行窗口中显示此条信息

forfiles /p "%back_path%" /s /m *.sql /d -2 /c "cmd /c del @path" //删除文件修改日期为2天前的数据库备份文件(如果更改删除文件的时间,只需更改语句中数字)注意:如果没有两天前的备份,会报错,没关系

@echo 完成,3秒后程序退出 //命令行窗口中显示此条信息

点赞
收藏
评论区
推荐文章
胖大海 胖大海
2年前
Linux mysql数据库自动备份脚本策略
1.创建保存备份文件的文件夹mkdir/data/mysqlbak2.编写脚本cd/data/mysqlbakvisqlAutoBak.shSH脚本内容:DBUSER"root"DBPASS"root"你的数据库密码DBHOST"localhost"DBNAME"test"你要备份的数据库BINDIR"/usr/bin"BCKDIR"/d
Wesley13 Wesley13
3年前
RMAN备份恢复
1介绍RMAN是RecoveryManager的缩写,为Oracle的恢复管理器,是Oracle数据库推荐提供的一种恢复和备份数据库的工具,也是数据库管理员管理数据库常用的工具之一。它是物理备份,而EXP是逻辑备份它可以实现一致性备份,非一致性备份,增量备份,而exp且做不到很多第三方的工具也是调用rman的脚本来实现备份功能,如赛门铁克,NBU
Wesley13 Wesley13
3年前
mysql 备份脚本
!/bin/bashauto backup mysql every database;date 2014.07.07author firxiaomysql_configHOST"localhost"        mysql主机IPUSER"xxxx"     
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Wesley13 Wesley13
3年前
Mysql数据库的主从与主主
前言:首先,我们得知道我们为什么要做数据库的主从与主主,而后,再讨论他们的优劣与特点:为什么要做主从呢?因为Mysql数据库没有增量备份的机制,当数据量太大的时候备份是个难以解决的问题。但是mysql数据库有主从备份的机制,说白了就是把主数据库的所有的数据同时写到备份的数据库中。实现mysql数据库的热备份。 要想实现主从或主主,首先要满足主从
Stella981 Stella981
3年前
Linux环境mysql快速备份及迁移
    在项目实施的过程中,经常会面临数据库迁移,导出和导出数据,如果用普通的mysql客户端备份,时间较长且容易出错。那么mysql快速备份及迁移,就成为数据库迁移的重中之重。下面介绍我在项目实现过程中用到的方法。   1.为了方便,这边直接将需要执行的SQL语句写成脚本dbbak.sh。脚本内容如下:    !/b
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
mysql自动备份
1、复制date文件夹备份\假想环境:MySQL  安装位置:C:\\MySQL论坛数据库名称为:bbs数据库备份目的地:C:\\db\_bak\\\新建db\_bak.bat,写入以下代码
Stella981 Stella981
3年前
Shell备份数据库到文件,自动删除过期备份文件
刚工作那会写的备份数据库脚本!/bin/shauthor:Kamimysqldump文件的路径MYSQLDUMP/usr/bin/mysqldump保存备份文件的目录BACKUP/var/backup/数据库账号USER""
Wesley13 Wesley13
3年前
Mysql使用xtrabackup备份失败处理
  在生产环境中使用的是xtrabackup,对mysql进行备份,每天0点开始备份,周日是全量备份,其他时间是基于周日做的增量备份,通过脚本实现,每天备份完成后会发送短信,突然有一天,备份全部失败,手动执行也无法备份,报错的日志如下:/usr/bin/xtrabackupversion2.4.8basedonMySQLserver
贾琮
贾琮
Lv1
天街小雨润如酥,草色遥看近却无。
文章
1
粉丝
0
获赞
0
热门文章

暂无数据