||  網站導覽  ||  留言版
 
  站長 x 管理人
 
  文章分類
    JAVA
    Database資料庫
    應用程式
    文書處理
    normal一般設定
    Web-design網頁設計
    Virtual Machine虛擬機器
    MIS網管
       Mac
       不分類
       Windows
       Linux
    media多媒體
    未分類
 
 
 
 
「實作」簡易sql server排程備份
 
 
 
 
之前為了排程備份爬了一堆文,
看了一些落落長的備份語法後,就覺得不想用了,
後來發現,其中的原理只在於使用sqlcmd下達sql備份語法而已

所以只要熟悉sqlcmd的參數即可寫出批次檔

進一步來說,只要能夠連線到資料庫主機,並且帳號有權限可以下達sql指令「BACKUP DATABASE」
不論用什麼語言都可以寫出備份程式



建立一個批次檔
cron.bat

內容如下:
@echo off
sqlcmd -U sa -P 123456 -Q "BACKUP DATABASE test TO DISK = 'D:\\BAK\\test.bak' WITH INIT, SKIP" -o d:\BAK\baklog.txt

存檔
最後使用windows排程設定執行時間即可

還原語法
sqlcmd -U sa -P 123456 -Q "RESTORE DATABASE test FROM DISK = 'D:\\BAK\\test.bak' WITH REPLACE;"

sqlcmd 參數說明
-S 伺服器 (因為是備份本機的資料庫,所以不再特別指定DB SERVER)

-U 帳號
-P 密碼
or
-E 信任連接

-o log輸出檔案

-Q 執行的語法
例:BACKUP DATABASE test ...實際上是 sql 語法,跟sqlcmd本身沒關係




註:
需安裝SMSS工具才有sqlcmd這支程式可用
 
 
 
 
Copyright © 2012 NBOX. All Rights Reserved.