中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 17:44
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 批处理自动备份数据库 查看 1,432 回复 14
楼 主 批处理自动备份数据库 发表于 2007-06-17 14:05 ·  中国 四川 南充 电信
新手上路
积分 14
发帖 7
注册 2007-06-17 13:33
19年会员
UID 91597
性别 男
状态 离线
d:\data为数据库的地址 e:\baksql\为备份的地址 要用的同学自己改一下
每次备份完后自动以备份的时间命名,并写入到记录文件中!
@echo 开始备份: 
@echo 备份开始时间: %date% %time%
@net stop mssqlserver
@net stop w3svc
@net stop iisadmin /y
@xcopy d:\data e:\baksql\ /E /h
@ren e:\baksql\Computer.mdf "%date%".mdf
@ren e:\baksql\Computer_log.LDF "%date%".LDF
@net start mssqlserver
@net start w3svc
@echo 备份完毕!!
@echo 结束备份时间:%date% %time%
@echo 备份时间:%date% %time% >>e:\baksql\备份时间记录.txt
@cls
@exit


要是重要数据还可以传到另台FTP机子上
@echo 开始备份: 
@echo 备份开始时间: %date% %time%
@net stop mssqlserver
@net stop w3svc
@net stop iisadmin /y
@xcopy d:\data e:\baksql\ /E /h
@ren e:\baksql\Computer.mdf "%date%".mdf
@ren e:\baksql\Computer_log.LDF "%date%".LDF
@net start mssqlserver
@net start w3svc
@echo 备份完毕!!
@echo 结束备份时间:%date% %time%
@echo 备份时间:%date% %time% >>e:\baksql\备份时间记录.txt
@echo 正在将数据上传到X空间...
@echo ftp.exe -s:C:\jh520.mmp
@cls
@exit


在C根下建jh520.mmp 并且写入以下代码 有些东西自己改下!


open FTPSEVER
USER
PASSWORD
#bin
cd 备份文档地址
lcd e:\baksql\
put "%date%".mdf
put "%date%".LDF
bye



各位师兄看看 那里还可以优化一下 提点建议也好!
2 发表于 2007-06-17 15:26 ·  中国 广东 广州 黄埔区 电信
初级用户
★★
积分 132
发帖 62
注册 2007-06-05 23:27
19年会员
UID 90371
性别 男
状态 离线
在此有几个问题想问问,
1》 mdf文件有无大小空间限止呢?假设D:\data下的数据有几 G 的话,是否也能写进MDF文件里。
2》能否用相同一个文件作为一个备份文件呢?每次只把有变动,增加的写进去,不要产生太多的文件。
3》在放到FTP上时,是否每次要手工输入用户名和密码呢?如是的话,能否搞成自动的方式因想用“任务管理嚣“自动完成。
3 发表于 2007-06-17 16:22 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
//在放到FTP上时,是否每次要手工输入用户名和密码呢?

不需要,用户名和密码是放在jh520.mmp文件里的。
4 发表于 2007-06-17 21:09 ·  中国 四川 南充 电信
新手上路
积分 14
发帖 7
注册 2007-06-17 13:33
19年会员
UID 91597
性别 男
状态 离线
谢谢 !师兄的建议 由于我要备份这个mdf只有30M 而且有是服务器上 我用任务计划每月才运行一次 比较稳当! 我又修改了以下 实现了一个批处理 解决 所有问题了!


@echo 开始备份: 
@echo 备份开始时间: %date% %time%
@net stop mssqlserver
@net stop w3svc
@net stop iisadmin /y
@xcopy d:\data e:\baksql\ /E /h
@ren e:\baksql\Computer.mdf "%date%".mdf
@ren e:\baksql\Computer_log.LDF "%date%".LDF
@net start mssqlserver
@net start w3svc
@echo 备份完毕!!
@echo 结束备份时间:%date% %time%
@echo 备份时间:%date% %time% >>e:\baksql\备份时间记录.txt
@echo 正在将数据上传到X空间...
(@echo open FTPSEVER
@echo USER
@echo PASSWORD
@echo #bin
@echo cd 网络备份文档地址
@echo lcd e:\baksql\
@echo put "%date%".mdf
@echo put "%date%".LDF
@echo bye)>%systemroot%\jh.exe
@echo ftp.exe -s:%systemroot%\jh.exe
@echo del %systemroot%/jh.exe
@echo@cls
@exit
5 发表于 2007-06-17 21:22 ·  中国 四川 南充 电信
新手上路
积分 14
发帖 7
注册 2007-06-17 13:33
19年会员
UID 91597
性别 男
状态 离线
@echo@cls这里有点错!
6 发表于 2007-06-17 22:07 ·  中国 江苏 苏州 电信
新手上路
积分 2
发帖 1
注册 2007-05-25 20:46
19年会员
UID 89304
性别 男
状态 离线
学习学习。。。。
7 发表于 2007-06-18 14:26 ·  中国 广东 广州 黄埔区 电信
初级用户
★★
积分 132
发帖 62
注册 2007-06-05 23:27
19年会员
UID 90371
性别 男
状态 离线
用什么程序可打开.mdf, .ldf文件,jh.exe 里包括什么代码
8 发表于 2007-06-19 21:58 ·  中国 四川 南充 电信
新手上路
积分 14
发帖 7
注册 2007-06-17 13:33
19年会员
UID 91597
性别 男
状态 离线
.mdf, .ldf是MSSQL数据库的
jh.exe是把其实可以用记事本带开 他根本不是个WIN32程序
我让它这样是不想别人打开!
9 发表于 2007-06-19 23:47 ·  中国 广东 广州 黄埔区 电信
初级用户
★★
积分 132
发帖 62
注册 2007-06-05 23:27
19年会员
UID 90371
性别 男
状态 离线
Originally posted by sugarjh at 2007-6-19 09:58 PM:
.mdf, .ldf是MSSQL数据库的
jh.exe是把其实可以用记事本带开 他根本不是个WIN32程序
我让它这样是不想别人打开!



能否转成常用的格式,如ZIP,RAR,还不明白这句话的意思
jh.exe是把其实可以用记事本带开 他根本不是个WIN32程序
我让它这样是不想别人打开!
10 发表于 2007-06-20 18:33 ·  中国 四川 南充 电信
新手上路
积分 14
发帖 7
注册 2007-06-17 13:33
19年会员
UID 91597
性别 男
状态 离线
回楼上的当然可以,就是个后缀名的问题!你把*.txt 改成*.rar 再用记事本打开当然还是可以看到txt里面的内容啥
11 发表于 2007-06-20 19:02 ·  中国 上海 电信
中级用户
★★
积分 231
发帖 112
注册 2007-06-19 20:44
19年会员
UID 91827
性别 男
状态 离线
哈哈,我过去做网管的时候也做过这个记录备份时间的东西,不过当时时间只给我几分钟,而数据库太大,每个月大1G,所以没有连续按时间为名的保存功能。

用停止运行的方法,停止数据库文件的读写?

其实可以用mssql自己的备份工具~
12 发表于 2007-06-20 19:06 ·  中国 辽宁 鞍山 中移铁通
新手上路
积分 8
发帖 3
注册 2007-06-20 18:38
19年会员
UID 91905
性别 男
状态 离线
学习了 谢谢 高手阿!!!!
13 发表于 2009-04-23 14:33 ·  中国 四川 南充 电信
新手上路
积分 14
发帖 7
注册 2007-06-17 13:33
19年会员
UID 91597
性别 男
状态 离线
自己写了2年得批处理,电脑FORMAT了N次 还好在网上找到以前发得贴了!
14 发表于 2009-04-23 14:40 ·  中国 四川 南充 电信
新手上路
积分 14
发帖 7
注册 2007-06-17 13:33
19年会员
UID 91597
性别 男
状态 离线
用mssql自己的备份工具怎么写?
15 发表于 2009-04-23 14:45 ·  中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
搜一下OSQL和SQLCMD 的用法就是了

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
论坛跳转: