
两个思路:
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% //提取时和分和秒信息
以上就是关于一台电脑的数据库每天晚上自动备份到另一台电脑上,怎么做全部的内容,包括:一台电脑的数据库每天晚上自动备份到另一台电脑上,怎么做、数据库定时备份及删除、如何设定数据库自动每小时备份一次等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)