SQL code--你是否有足够的权限?如果有足够的权限,可以备份到本机
--如果有,可以用下面的方法,查询分析器中操作:
-- 创建共享目录
exec master.dbo.XP_cmdshell 'md c:\bak'
exec master.dbo.XP_cmdshell 'net share bak=c:\bak'
--进行数据备份
backup database 数据库 to disk='c:\bak\备份.bak'
/*--以下操作在我的电脑中进行:
打开我的电脑,地址栏中输入:
http://www.cnblogs.com/jvstudio/admin/file://\\SQL服务器的计算机名\bak\
复制里面的备份.bak到你的电脑就行了
--我的电脑中的操作结束--*/
--删除备份生成的文件
exec master..xp_cmdshell 'del c:\bak\备份.bak'
--删除共享
exec master.dbo.XP_cmdshell 'net share c:\bak /delete /y'
exec master.dbo.XP_cmdshell 'rd c:\bak'
--否则,你还是完全共享你本机的目录,用下面的方法备份:
backup database 数据库 to disk='\\你的计算机名\共享目录名\备份文件名'
---或通过映射网络驱动器(这样可以解决权限问题)
--1.映射
exec master..xp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator'
/*--说明:
z: 是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$ 是要映射的网络路径
xz\administrator xz是远程的计算机名,administrator是登陆的用户名
密码 上面指定的administrator用户的密码
--*/
--2.进行数据库备份
backup database 数据库名 to disk='z:\备份文件名'
--3.备份完成后删除映射
exec master..xp_cmdshell 'net use z: /delete'