專業聊城網站建設、豐富的網站建設制作經驗,大量客戶案例!服務熱線: 15192175820 13346228859 設為首頁|加入收藏|關于我們|聯系我們
    您現在的位置:首頁 > 新聞中心 > 建站知識
    sql server遠程備份和恢復
    來源: | 作者:管理員 | 發布時間: 2017-5-17 | 瀏覽:100次 【關閉此頁】 【打印此文

    SQLSERVER服務實例名稱:192.168.0.2
    需要備份的數據庫名稱:
    a
    備份機器名稱(Client端):192.168.0.3
    備份機用戶:zf
    密碼:123
    備份機域名:domain
    備份機提供備份需求的文件夾:D:\sqlbak

    備份數據庫

    第一步: 在備份機建立共享文件夾
                   在程序代碼中調用(或者CMD窗口)   net share
    sqlbakup=D:\sqlbak     或者用NetShareAdd這個API
                  
    簡要說明:
                           net
    share:是WINDOWS內部的網絡命令。
                                   
    作用:建立本地的共享資源,顯示當前計算機的共享資源信息。

    第二步: 建立共享信用關系
                  exec master..xp_cmdshell 'net use  file://192.168.0.3/sqlbak 123
    /user:domain\zf'
                  簡要說明:
                         1:xp_cmdshell
    :是SQLSERVER的擴展存儲過程。
                                 作用:以操作系統命令行解釋器的方式執行給定的命令字符串,
    并以文本行方式返回任何輸出。
                                
    語法:參見SQLSERVER聯機幫助
                         2:net use :
    是WINDOWS內部的網絡命令。
                                
    作用:將計算機與共享資源連接或斷開,或者顯示關于計算機連接的信息。

    該命令還控制持久網絡連接。

    第三步:備份數據庫
                  backup database a   to
    disk='\\192.168.0.3\sqlbak\a.bak'
                  backup database a   to
    disk='\\192.168.0.3\sqlbak\a1.bak' WITH DIFFERENTIAL (差異備份)

    第四步: 刪除共享文件夾
                   在程序代碼中調用(或者CMD窗口)   net share
    sqlbakup/delete
                   或者用NetShareDel這個API

    恢復數據庫

    restore database a   from
    disk='\\192.168.0.3\sqlbak\a.bak'
          
          以下是差異還原
          restore
    database scs   from disk='\\192.168.0.3\sqlbak\a.bak'   WITH NORECOVERY
         
    restore database scs   from disk='\\192.168.0.3\sqlbak\a1.bak'   WITH
    NORECOVERY
          restore database scs   from
    disk='\\192.168.0.3\sqlbak\a2.bak'

     

     

    【方法之二】

    在一些涉及到數據庫的項目中,經常會有定時備份數據庫的需要。定時備份到本機的話,還是挺容易的,計劃任務就可以完成,但如果是整機掛了,那備份到本機是沒意義的,那么就需要來考慮備份到局域網中,其它電腦里。

    一開始我想得挺簡單的,把遠程的一個共享文件夾,映射到本地作為一個磁盤,使用 SQL Server 自帶的備份功能去備份就好了。但實際操作下來,會發現根本就沒有這個磁盤可以給你選,使用 SQL 語句來備份的話,也會提示錯誤。咋辦呢?

    網上找了很多的遠程備份的方法,許多都用不了,有的還用 FTP 去上傳… 這個超出了我們的需求,沒必要了。下面就分享一份在網上找了之后,自己再簡單整理過的代碼,配合 SQL Server 代理中的作業功能,已經穩定運行一個星期了,每小時就備份一次。


     -- 創建網絡映射(Y是盤符;IP地址后面要帶共享文件夾的名稱;password是密碼,雙引號引起;account是遠程電腦的登錄名)

    exec master..xp_cmdshell 'net use Y: \\192.168.0.69\sqlbackup "password" /user:192.168.0.69\account'

     -- 按日期時間做文件名(注意路徑中的文件夾,需要先建立好)

    )

    ),'-',''),' ','-'),':','') + '.bak'

     -- 執行備份(DB是要備份的數據庫名稱)

    backup database [DB] to disk = @filename

     

    -- 刪除網絡映射(Y是盤符,同上)

    exec master..xp_cmdshell 'net use Y: /delete'

     

    -- ABEL.CNBLOGS.COM

    -- 2013-07-14


     

    需要注意的是,SQL Server 要開啟允許執行 cmd 命令。

    我試過把網絡映射保留著,不要刪除,可是到了 backup database 的時候還是失敗了,只能每次要備份都創建,然后再刪除。如果有朋友知道是為什么,歡迎交流~~

     

     

      標簽:
      分享到:
      上一條: 頁面布局中block,inline和inline-block概念和區別
      下一條: 【百度課堂】URL構成越簡單越平常越好
      網站首頁| 網站建設 手機網站| 微信營銷| 經典案例| 解決方案| 網站推廣| 新聞資訊| 關于我們| 售后服務| 聯系我們
      主站蜘蛛池模板: 亚洲精品成人片在线观看精品字幕 | 成人免费无毒在线观看网站| 久久亚洲精品成人综合| 97超碰精品成人国产| 成人免费一区二区三区| 国产午夜成人AV在线播放| 猫咪av成人永久网站在线观看| 成人黄色电影在线观看| 亚洲国产成人久久综合区| 成人毛片免费视频| 亚洲国产成人久久一区www| 国产激情一区二区三区成人91 | 成人无码嫩草影院| 免费国产成人手机在线观看 | 成人影院久久久久久影院| 亚洲国产成人久久综合一区| 在线看欧美成人中文字幕视频| 亚洲国产精品成人AV在线| 国产成人综合日韩精品无码 | 国产成人久久精品| 成人免费ā片在线观看| 欧美成人性色区| 亚洲国产精品无码成人片久久| 成人777777| 成人小视频免费在线观看| 日本成人在线播放| 69国产成人精品午夜福中文 | 亚洲精品亚洲人成人网| 国产成人久久精品亚洲小说| 国产精品成人免费综合| 成人人观看的免费毛片| 成人综合久久综合| 成人欧美一区二区三区视频| 成人无码免费一区二区三区| 日本在线高清视频日本在线观看成人小视频 | 国产一级成人毛片| 国产成人在线网站| 国产成人AV综合色| 四虎永久成人免费影院域名| 国产成人AAAAA级毛片| 国产成人久久精品二区三区|