一台电脑的数据库每天晚上自动备份到另一台电脑上,怎么做

一台电脑的数据库每天晚上自动备份到另一台电脑上,怎么做,第1张

两个思路:

1、在备份机共享一个目录出来,在生产机建立到备份机共享目录的网络映射驱动器,之后在生产机执行数据库备份时,直接将备份卷质指定为网络驱动器。

2、备份数据库到生产机的某个磁盘,然后用定时任务传送到备份机。备份机可以安装一个ftp server软件,直接用ftp的方式传送,这样也比较安全、可靠。

首先利用数据库自带的命令行工具将数据库备份下来,例如对MySQL将databasename数据库备份到D:\datasql(具体查阅数据库说明书)

mysqldump databasename > "D:\datasql"

然后将该文件以日期参量重名名。如果指定保留N天的数据可能有一定困难,不过既然要求7天,不妨以星期作为区分。

假设文件名具有格式“data_日期sql”,则更名语句为(建议先创建后改名,对于很大的数据库可能要备份很长时间并超过0点)

ren "datasql" "data_%date%sql"

若系统时间格式为“2009-04-05 星期日”,则产生文件“data_2009-04-05 星期日txt”。

获取星期几的语句:%date:~11,3%

其中11表示从第11个字符开始(从0开始计算),总共截取3个字符。由此可获得字符串“星期日”。重名名前,删除以data_开头,包含“星期日”的文件

del "data_%date:~11,3%sql"

这样就把上星期的那个文件删除了。

注意:如果系统日期格式与上面的不一致,数字需重新计算,特别是若日期中含有“/”、“:”等字符会导致创建文件失败,此时年月日星期均需手动提取,例如对“04/05/2009 Sun”,应使用“%DATE:~6,4%%DATE:~0,2%%DATE:~3,2%%DATE:~11,3%”得到“20090405Sun”。查看日期格式可使用“echo %date%”。

另外,如果某项(时间格式、文件名、路径等)包含空格则必须使用引号。

脚本源代码

mysqldump databasename > "D:\datasql"

del "D:\data_%date:~11,3%sql"

ren "D:\datasql" "data_%date%sql"

编为一个bat文件,添加计划任务,每天定时执行即可。

这个要用到数据库维护计划和SQL Server代理。具体 *** 作方法如下:

打开企业管理器,进入你服务器名下的“管理”,启动SQL Server代理。然后查看服务器属性,选中“自动启动SQL Server代理”。

在“管理”下的“数据库维护计划”上点右键,选“新建维护计划”。

点“下一步”。

在“如下数据库”中选中你要备份的数据库。

点“下一步”,点“下一步”,再点“下一步”。

点击“更改”,“发生频率”设“每天”,“发生周期”选“1小时”,点“确定”,再点“下一步”。

点“使用此目录”,然后指定到你要保存的目录。

“删除早于此时间的文件”可根据情况选用。

点“下一步”,点“下一步”,点“下一步”,再点“下一步”,最后点“完成”。

这样配置就结束了,每小时自动备份一次数据库。

明白了吗?

db2自身就有备份机制,参考方法如下:

1、 在开始->运行,输入命令db2cmd,打开一个新的db2命令窗口;

在DB2的“命令窗口”执行下面语句创建备份运行数据库

db2 create tools catalog cc create new database toolsdb

目的是创建一个命名为toolsdb的数据库,用来存放任务信息;

2、开启“任务中心”窗口,如下图;

3、新建任务;

请注意“类型”和“DB2实例和分区”按照上图选择;

4、在“命令脚本”tab页中输入脚本;

BACKUP DATABASE JM_DAJ ONLINE TO "D:\DB2_BAK" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 COMPRESS INCLUDE LOGS WITHOUT PROMPTING;

意思是把数据库JM_DAJ压缩备份到D:\DB2_BAK目录下(前提是D:\DB2_BAK目录已存在)

5、进入到“安排”tab页面;

添加一个时间起始点,选择“重复安排”,如图所示,注意“运行时权限”也要填写,一般为administrator,密码为登陆windows系统时的密码,然后就可以点击“确定”按钮。

6、至此DB2的自动备份已设置完成,每天备份一次,到“D:\DB2_BAK”目录下找备份文件。

这个方法是用bat批处理来完成的。

假想环境:MySQL 安装位置:D:\Program Files\MySQL\MySQL Server 50\data

数据库名称为:952game数据库备份目的地:d:\db_bak\ (你想把数据库备份到哪个盘的路径)我想备到D盘的db-bak目录下面============================新建db_bakbat,写入以下代码

net stop mysql

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

net start mysql

如图详解:

最好一步就是实现如何定时备份了,跟我学!GO go go

这里我们采用最简单的方法

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

不会的话请看图文:

1、运行,计划任务

2、添加计划任务。

3、最后一步就是指定备份时间了。

到这里就完成自动定时备份了,很简单吧。

最后pc6com小编清晨再给大家多讲一句就是这个批处理命令 \%date:~0,3% 的意思提取星期几信息

当然如果你想创建年月日的话就用%date:~0,10% ,系统就会每天给你建日期目录了。很方便吧。

%date:~0,10% //提取年月日信息

%date:~-3% //提取星期几信息

%time:~0,5% //提取时间中的时和分

%time:~0,-3% //提取时和分和秒信息

以上就是关于一台电脑的数据库每天晚上自动备份到另一台电脑上,怎么做全部的内容,包括:一台电脑的数据库每天晚上自动备份到另一台电脑上,怎么做、数据库定时备份及删除、如何设定数据库自动每小时备份一次等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/9473317.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存