Windows下为MySQL做定时备份
第一种:新建批处理文件 backup.dat,里面输入以下代码:
代码如下 | 复制代码 |
net stop mysql xcopy "C:/Program Files/MySQL/MySQL Server 5.0/data/piaoyi/*.*" D:/db_backup/%date:~0,10%/ /y net start mysql |
注意:批处理命令中路径里有空格的话,必须在路径上加上双引号!
然后使用Windows的"计划任务"定时执行该批处理脚本即可。(例如:每天凌晨3点执行backup.bat)
解释:备份和恢复的操作都比较简单,完整性比较高,控制备份周期比较灵活。此方法适合有独立主机但对mysql没有管理经验的用户。缺点是占用空间比较多,备份期间mysql会短时间断开(例如:针对30M左右的数据库耗时5s左右)。
关于时间参数的参考:
%date:~0,10% //提取年月日信息
%date:~-3% //提取星期几信息
%time:~0,5% //提取时间中的时和分
%time:~0,-3% //提取时和分和秒信息
第二种:mysqldump备份成sql文件
==============
假想环境:
MySQL 安装位置:C:/MySQL
论坛数据库名称为:bbs
MySQL root 密码:123456
数据库备份目的地:D:/db_backup/
脚本:
代码如下 | 复制代码 |
@echo off set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%" C:/MySQL/bin/mysqldump --opt -u root --password=123456 bbs > D:/db_backup/bbs_%Ymd%.sql @echo on |
将以上代码保存为backup_db.bat
然后使用Windows的"计划任务"定时执行该脚本即可。(例如:每天凌晨5点执行back_db.bat)
说明:此方法可以不用关闭数据库,并且可以按每一天的时间来名称备份文件。
通过%date:~5,2%来组合得出当前日期,组合的效果为yyyymmdd,date命令得到的日期格式默认为yyyy-mm-dd(如果不是此格式可以通过pause命令来暂停命令行窗口看通过%date:~,20%得到的当前计算机日期格式),所以通过%date:~5,2%即可得到日期中的第五个字符开始的两个字符,例如今天为2009-02-05,通过%date:~5,2%则可以得到02。(日期的字符串的下标是从0开始的)
第三种:利用WinRAR对MySQL数据库进行定时备份。
对于MySQL的备份,好的方法是直接备份MySQL数据库的Data目录。下面提供了一个利用WinRAR来对Data目录进行定时备份的方法。
首先当然要把WinRAR安装到计算机上。
将下面的命令写入到一个文本文件里,如 backup.bat
代码如下 | 复制代码 |
net stop mysql "C:/Program Files/WinRAR/WinRAR.exe" a -ag -k -r -s D:/db_backup/mysql_.rar "C:/Program Files/MySQL/MySQL Server 5.0/data/" net start mysql |
winrar参数解释:
a: 添加文件到压缩文件
-ag: 使用当前日期生成压缩文件名
-k: 锁定压缩文件
-r: 递归子目录
-s: 创建固实压缩文件
执行以上文件后,会生成一个压缩文件如:mysql_20130803004138.rar。
进入控制面版,打开计划任务,双击"添加计划任务"。在计划任务向导中找到刚才的backup.bat文件,接着为这个任务指定一个运行时间和运行时使用的账号密码就可以了。
这种方法缺点是占用时间比较多,备份期间压缩需要时间,mysql断开比第一种方法更多的时间,但是对于文件命名很好。
1.在D盘创建db_backup文件夹,并新建backdb.bat。
2.在backdb.bat里面加入一下代码:
代码如下 | 复制代码 |
echo 取日期、时间变量值set yy=%date:~0,4% set mm=%date:~5,2% set dd=%date:~8,2% if /i %time:~0,2% lss 10 set hh=0%time:~1,1% if /i %time:~0,2% geq 10 set hh=%time:~0,2% set mn=%time:~3,2% set ss=%time:~6,2% set date=%yy%%mm%%dd% set time=%hh%%mn%%ss% set filename=%date%_%time% "C:/Program Files (x86)/MySQL/MySQL Server 5.0/bin/mysqldump.exe" -uroot -pxxx --opt --default-character-set=utf8 -e --triggers -R --hex-blob --flush-logs -x DBNAME > C:/db_backup/DBNAME%filename%.sql echo 导出已经完成 #pause |
在这里要注意你的MySQL安装路径以及相应的数据库用户名和密码,我使用的是D:/sense/mysql/bin。
3.双击运行此脚本,看是否会生成Dbname20111207_200445.sql文件,如有则脚本无错误。
4.进入控制面板,在任务计划里添加计划任务,把要执行的批处理以浏览方式加入任务计划,并设定好执行时间,最好选择每天执行,这样就实现每天自动备份数据库了。
Windows下为MySQL做定时备份的更多相关文章
- Linux下实现MySQL数据库定时备份
咳~ 咳~ 为了避免数据操作失误.数据丢失.甚至删库跑路,简单做个数据备份吧 1.创建备份目录 # 习惯放在 local 下 cd /usr/local/ # 创建备份目录 mkdir backup ...
- Windows下设置oracle数据库定时备份
1编写备份脚本 echo backup oracle database...... echo %~dp0 set file_dir=%~dp0 echo backup time...... set & ...
- Windows下搭建MySQL Master Slave[转]
Windows下搭建MySQL Master Slave 一.背景 服务器上放了很多MySQL数据库,为了安全,现在需要做Master/Slave方案,因为操作系统是Window的,所以没有办法使用k ...
- windows下的mysql迁移到linux下
最近做毕业设计,需要把windows下的mysql移植到linux下 曾经有过在window下移植mysql数据库的经验,只需要把msql的数据文件复制到另一台安装mysql的机器的数据存放位置,然后 ...
- RPM方式安装MySQL5.6和windows下安装mysql解压版
下载地址: http://cdn.MySQL.com/archives/mysql-5.6/MySQL-server-5.6.13-1.el6.x86_64.rpmhttp://cdn.mysql.c ...
- windows下的mysql客户端mysqlworkbench链接虚拟机上CentOS的mysql服务器
本人在虚拟机上CentOS的Linux环境下安装了mysql服务器,在本地Windows下安装了mysql的客户端mysqlworkbench ,所以就想让windows下的mysql客户端mysql ...
- windows下安装mysql笔记
接着上几篇文章再来看下windows下安装mysql. 我这里是windows7 64位, 安装过程中还是遇到一些坑,这里记录下. 一.下载安装包 打开mysql官网下载页面:http://dev.m ...
- 解决windows下的mysql匿名登陆无法使用mysql数据库的问题
原文:解决windows下的mysql匿名登陆无法使用mysql数据库的问题 我在windows下安装了mysql,但是不用密码就能登进去,而root明明是有密码的,我用select user()命令 ...
- windows下忘记mysql的root密码解决方法(图文)
在windows下忘记mysql的root密码对于很对新手来说,也是会经常遇到的,我也刚好遇到啦,参考网上的解决办法,自己又整理啦一下. 1.首先需要查看mysql的服务是否启动. 打开cmd窗口,输 ...
随机推荐
- 2013 acm 长沙网络赛 G题 素数+枚举 Goldbach
题目 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3856 先预处理求出两个素数的和与积,然后枚举n-prime和n/pr ...
- iOS9系统分享失败问题解决
因为iOS9系统需要设置打开QQ和微信的白名单,如果出现无法分享或者直接提示分享失败,试一下在infoPlist中添加以下白名单 http://wiki.mob.com/ios9-对sharesdk的 ...
- GO_order
Gpos Q8RP81 有GO:0000015 P47437 有GO:0000049 P06535 有GO:0000155 Q99027 有GO:0000160 P35594 有GO:0000166 ...
- Volley设计思想和流程分析
本文是对Volley思路的整体整理,并不是Volley教程,建议有Volley使用经验,但是对Volley整体不是很清楚的同学阅读. 我认为,弄清整体的流程很重要,以避免一叶障目不见泰山的囧境,而对于 ...
- 基于webmagic的爬虫小应用--爬取知乎用户信息
听到“爬虫”,是不是第一时间想到Python/php ? 多少想玩爬虫的Java学习者就因为语言不通而止步.Java是真的不能做爬虫吗? 当然不是. 只不过python的3行代码能解决的问题,而Jav ...
- python python 入门学习之网页数据爬虫cnbeta文章保存
需求驱动学习的动力. 因为我们单位上不了外网所以读新闻是那么的痛苦,试着自己抓取网页保存下来,然后离线阅读.今天抓取的是cnbeta科技新闻,抓取地址是http://m.cnbeta.com/wap/ ...
- MCMC and Bayesian Data Analysis(PPT在文件模块)
How to generate a sample from $p(x)$? Let's first see how Matlab samples from a $p(x)$. In Matlab, t ...
- c# dotfuscator 混淆后无法使用
在实体类中忘记给字段加上 get ;set ;导致编译后程序无法使用. 下面这个(A代码)是可以正常混淆的. public class PhoneUsedStatus { ...
- 完美解决全面屏蔽Google教程(终结者)
最近谷歌的IP被大范围的禁用了.身处一个连谷歌都用不了的过度的程序员,深感命运多舛.幸好,魔高一尺,道高一丈.下面是几种可以使用谷歌的方法. 方法一 1)在chrome浏览器中输入:chrome:// ...
- SQLiteHelper
/** * 实现对表的创建.更新.变更列名操作 * * */ public class SQLiteHelper extends SQLiteOpenHelper { public static fi ...