怎样定时进行mysql数据库流水日志数据备份

怎样定时进行mysql数据库流水日志数据备份,第1张

假想环境:

1. MySQL安装位置:D:\Program Files\MySQL\MySQL\MySQL Server 5.0

2. 数据库名称:mlsite

3. 数据库备份目的地:E:\db_backup\mlsite

*** 作原理:

1. 在MySQL的安装文件夹下,有data文件夹,data文件夹中存放数据库中的数据,这里以mlsite数据库为例,因此data文件夹下有mlsite这个文件夹,mlsite文件夹下是mlsite数据库的所有数据表的结构信息。在data文件夹下有一个idbata1这个文件是真正的数据文件。因此在备份时一定要对此文件进行备份。

2. 编写批处理文件,实现上面的文件备份工作。利用Windows 的任务计划功能定时启动批处理文件进行备份。

*** 作步骤:

1. 编写批处理文件dabak.bat,实现备份文件的拷贝功能。源程序见附件。

2. 选择开始->控制面板->任务计划……..请自己按说明 *** 作。

代码部分:

1. 源程序:[1、2、3、4、5是为了注释而用]

1)net stop mysql

2)mkdir E:\db_backup\mlsite\"%date:~4,10%"

3)xcopy D:\"Program Files"\MySQL\"MySQL Server 5.0"\data\ibdata1 E:\db_backup\mlsite\"%date:~4,10%"\/y

4)xcopy D:\"Program Files"\MySQL\"MySQL Server 5.0"\data\mlsite\*.* E:\db_backup\mlsite\"%date:~4,10%"\/y

5)net start mysql

特别说明,需要使用引号

2. 解释:

1) 关闭Mysql服务

2) 创建备份目录

3) 拷贝ibadata1到备份目录下,注意Program Files上打了引号,是因为若不打引号会出现参数错误,原因是因为xcopy的参数是前面是源地址+空格+目标地址,如果不打引号,Program Files上有空格,会对这个命令产生影响

4) 拷贝mlsite其它文件到备份目录下

5) 开启mysql服务

xcopy e:\progra~1\mysql\mysqls~1\data\test\*.* f:\

如果以progra 或是mysql s起头的目录超过1个,那么win下用dir/x可以看到他们的短文件名分别是什么。

另外dos只能用短名,不支持引号。win的命令台是支持引号的

你test目录下不会是空的吧,一个文件都没有就会报找不到文件 - *.*

复制了 0 个文件

可以用

xcopy e:\progra~1\mysql\mysqls~1\data\test f:\

注意test后面没有"\"

但没有文件的话仍然会报复制了 0 个文件

假想环境:

MySQL 安装位置:C:\MySQL

数据库名称为:bbs

数据库备份目的地:d:\db_bak\

============================

新建db_bak.bat,写入以下代码

net stop mysql

xcopy c:\mysql\data\bbs\*.* d:\db_bak\bbs\%date:~0,3%\ /y

net start mysql

然后使用Windows的“计划任务”定时执行该批处理脚本即可。(例如:每天凌晨3点执行back_db.bat)

保存一周的数据,用%date:~0,3%,保存每天的数据,用%date:~4,10%


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7168046.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-02
下一篇 2023-04-02

发表评论

登录后才能评论

评论列表(0条)

保存