zoukankan      html  css  js  c++  java
  • Sql Server远程还原

    1、假设备份文件xxxx.bak大小约300G,还原后所占用的空间为900G

    2、磁盘空间只有1T,若将备份文件拷贝过来,空间剩余700G,无法成功还原,因此通过远程方式还原。


    例子如下:

    SQLSERVER服务实例名称: 192.168.12.163
    需要备份的数据库名称: a
    备份机器名称(Client端): 192.168.12.30
    备份机用户: administrator 密码: 123
    备份机域名: B28-1230
    备份机提供备份需求的文件夹:D:ackup

    备份数据库
    第一步: 在备份机建立共享文件夹
    在程序代码中调用(或者CMD窗口)
    net share sqlbakup=D:ackup 或者用NetShareAdd这个API
    简要说明:
    net share:是WINDOWS内部的网络命令。
    作用:建立本地的共享资源,显示当前计算机的共享资源信息。
    第二步: 建立共享信用关系
    exec master..xp_cmdshell 'net use \192.168.12.30ackup 123 /user:B28-1230Administrator'

    若报错提示这个:“SQL Server 阻止了对组件'xp_cmdshell' 的过程'sys.xp_cmdshell' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。
    系统管理员可以通过使用sp_configure 启用'xp_cmdshell'。有关启用'xp_cmdshell' 的详细信息,请参阅SQL Server 联机丛书中的"外围应用配置器"。”

    启用’xp_cmdshell’:
    USE master
    EXEC sp_configure 'show advanced options', 1
    RECONFIGURE WITH OVERRIDE
    EXEC sp_configure 'xp_cmdshell', 1
    RECONFIGURE WITH OVERRIDE
    EXEC sp_configure 'show advanced options', 0
    RECONFIGURE WITH OVERRIDE

    关闭’xp_cmdshell’:
    USE master
    EXEC sp_configure 'show advanced options', 1
    RECONFIGURE WITH OVERRIDE
    EXEC sp_configure 'xp_cmdshell', 0
    RECONFIGURE WITH OVERRIDE
    EXEC sp_configure 'show advanced options', 0
    RECONFIGURE WITH OVERRIDE

    开启’xp_cmdshell’后再执行建立信用关系:
    exec master..xp_cmdshell 'net use \192.168.12.30ackup 123 /user:B28-1230Administrator'

    还原备份库a:
    restore database peking from disk = '\192.168.12.30ackupa.bak'
    with move 'a_Data' to 'C:Program FilesMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLDATAa.mdf',
    move 'a_Log' to 'C:Program FilesMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLDATAa_log.ldf'

    使用 SQL Server restore filelistonly 命令来查看逻辑文件名
    restore filelistonly from disk='\192.168.12.30ackupa.bak'

    restore with move 用法:
    restore database Northwind from disk = 'c:Northwind.bak'
    with move 'Northwind' to 'd:microsoft sql servermssql.1mssqldataNorthwind.mdf'
    ,move 'Northwind_log' to 'd:microsoft sql servermssql.1mssqldataNorthwind.ldf'


    简要说明:
    1:xp_cmdshell :是SQLSERVER的扩展存储过程。
    作用:以操作系统命令行解释器的方式执行给定的命令字符串, 并以文本行方式返回任何输出。
    语法:参见SQLSERVER联机帮助

    2:net use : 是WINDOWS内部的网络命令。
    作用:将计算机与共享资源连接或断开,或者显示关于计算机连接的信息。
    该命令还控制持久网络连接。

    3:备份数据库
    backup database a to disk='\192.168.12.30sqlbaka.bak'
    backup database a to disk='\192.168.12.30sqlbaka1.bak' WITH DIFFERENTIAL (差异备份)

    4: 删除共享文件夹
    在程序代码中调用(或者CMD窗口) net share sqlbakup/delete
    或者用NetShareDel这个API
    恢复数据库
    restore database a from disk='\192.168.12.30ackupa.bak'

    以下是差异还原
    restore database scs from disk='\192.168.12.30ackupa.bak' WITH NORECOVERY
    restore database scs from disk='\192.168.12.30ackupa1.bak' WITH NORECOVERY
    restore database scs from disk='\192.168.12.30ackupa2.bak'

  • 相关阅读:
    2018-2019-1 20165227 20165228 20165237 实验五 通讯协议设计
    2018-2019-1 20165227 20165228 20165237 实验四 外设驱动程序设计
    2018-2019-1 20165237 20165227 20165228 实验三 实时系统
    2018-2019-1 20165237 《信息安全系统设计基础》第七周学习总结
    2018-2019-1 20165227 20165228 20165237 实验二 固件程序设计
    2018-2019-1 20165237 《信息安全系统设计基础》第六周学习总结
    2018-2019-1 20165237 《信息安全系统设计基础》第五周学习总结
    2018-2019-1 20165237 《信息安全系统设计基础》第四周学习总结
    2018-2019-1 20165228 20165237 20165227 实验一 开发环境的熟悉
    20165237 2018-2019-1《信息安全系统设计基础》第三周学习总结
  • 原文地址:https://www.cnblogs.com/hankyoon/p/5169454.html
Copyright © 2011-2022 走看看