用SQLSERVER远程备份

本文介绍了如何使用SQLSERVER远程备份数据库到客户端的步骤,包括开启xp_cmdshell存储过程,设置服务器共享,执行备份和恢复操作。在过程中遇到FAT32磁盘文件大小限制问题,通过转换分区格式为NTFS得以解决。
摘要由CSDN通过智能技术生成

  有一SQLserver服务器,有SA密码, 要对远程数据库进行异地备份,备份到客户端。

  客户端为XP系统,FAT32,机器名 IT-Jet 用户名 Jet

  首先,服务器要允许执行xp_cmdshell存储过程

  1.共享客户端文件夹 名称为F

  2.连接到数据库master执行

  use master

  3.登录共享机器

  exec xp_cmdshell "net use //it-jet/f jet/user:it-jet/jet"

  4.即可使用共享路径远程备份数据库

  Backup database DBNAME to Disk='//it-jet/F/dbname.bak'

       --差异备份 
      Backup database DBNAME to Disk='//it-jet/F/dbname.bak'   WITH DIFFERENTIAL

       5: 删除客户机上共享文件夹 在程序代码中调用(或者CMD窗口)
        master..xp_cmdshell 'net share SqlBak /delete'

       6: 恢复数据库 
       Restore database DBNAME from disk=''//it-jet/F/dbname.bak'
       --差异还原
      Restore database DBNAME from disk=''//it-jet/F/dbname.bak'  WITH NORECOVERY

     在远程备份过程中,曾出现一个错误:ackupMedium::ReportIoError: 在备份设备“//it-jet/f/DBNAMEbak”上 write 失败。操作系统错误 112(磁盘空间不足。)。

  可是磁盘空间总量是远远大于数据库大小的。原来是FAT32最大的文件只支持4GB,大于它的就无法存储,因此将客户机的分区转换为NTFS后成功解决这个问题。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值