如果需要备份网络上的数据库到本地,可以通过下面的方法:

use Master
go
--映射网络驱动器

exec XP_cmdShell 'net use z: \\garfield\temp "password" /user:garfield\administrator'

go

--备份数据库
backup database pubs to disk='e:\temp\pubs.bak'
go

--拷贝备份
exec XP_cmdShell 'copy e:\temp\pubs.bak z:\pubs.bak'
go

--删除备份
exec XP_cmdShell 'del  e:\temp\pubs.bak'
go

--删除网络驱动器映射
exec XP_cmdShell 'net use z: /delete'

注意,该方法主要是通过执行master库中的命令外壳存储过程XP_cmdShell ,如果该储存过程被删除或被限制那么就无法完成了,这也提醒我们,为了数据库安全,最好屏蔽掉该存储过程.

 

网络上也有说完成网络驱动器映射后可以直接备份的,比如backup database pubs to disk='z:\pubs.bak',但我实验未成功.

posted on 2010-09-04 07:57  garfieldtom  阅读(310)  评论(0编辑  收藏  举报