各位大大:
在使用MS SQL SERVER 2K進行資料備份, 想要使用"資料庫維護計劃"的方式定期備份mdf檔, 方法是由A主機(MS SQL)備份到B主機(網路磁碟機)的某資料夾, 小弟有在A主機內設定網路磁碟機(S槽)為路徑, 但都備份失敗, 出現以下錯誤:
[Microsoft SQL-DMO (ODBC SQL狀態: 42000)] 錯誤 3201: [Microsoft][ODBC SQL Server Driver][SQL Server]無法開啟備份裝置 'S:\backup'。裝置錯誤或裝置離線。請查看 SQL Server 錯誤記錄以取得更多細節。
[Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 異常中止中。
不知道各位大大有無遇到這樣的問題以及解釋的方式~~甘恩!!
我有遇到類似的狀況,後來我是備份到自己本機的HDD&透過另外的BAT檔將檔案COPY到另外一台2電腦(排程)
似乎SQL2k無法連接到非本機的HDD ,但好像iSCSI等技術的可以
基本上微軟的sql不能備份到非本機的裝置。
為了達到異地備份,我這裡經驗是採用ms sql的維護計畫
這樣ms sql每天在晚上兩點就會備份,備份檔名依照「資料庫名稱_db_年月日時.bak」
鎂因為有勾選指定移除檔案的時限,所以只會保留一星期的份。(如圖)
之後在搭配cwRsync(windows版本),寫批次檔內容
<pre class="c" name="code">REM ***************由以下開始執行****************
REM *****同步異地備份資料庫*****
rsync -arvlHpogDtS --delete /cygdrive/d/DB_BackUP/db_data/ /cygdrive/z/db_data/
REM
REM **********************執行結尾*****************
其中的「粗體的z」/cygdrive**/z/**db_data/,就是網路磁碟機。
在搭配windows的排程功能,就可以達到定時異地備份了
執行身份一定要設定
cwRsync這個軟體功能非常強大,
可以window to liunx 或windwos to windows 或linux to linux,
在這網址有介紹http://pulipuli.blogspot.com/2008/08/windowssshcwrsync-server.html。
似乎是官網http://www.itefix.no/i2/node/10650
安裝後,也有說明文件有很多寫批次檔方法來作到異地備份
Yes, you CAN back up to a UNC path on the network in SQL (I'm a SQL DBA)
You just have to put in the UNC path in the Location field. This worked for SQL 2000/2005/2008 for me
In Maint Plan you put in "\\FileServer\BackupFolder\DBName\"
or in T-SQL script
BACKUP DATABASE [db] TO DISK = '\\FileServer\BackupFolder\DBName\DB.bak'
WITH INIT, STATS
Don't use the Mapped Drive letter (like S in your case)
Another way is to use the "Backup Device" (add the UNC as backup device, then BACKUP DATABASE [db] TO DEVICE = 'DeviceName')
補充一下jerryhung所回答的。
在微軟說法:SQL Server 2000 Books 線指出 「 資料庫維護計劃精靈 」 只支援備份到本機磁碟上。 備份到網路資源在某些情況下可以完成。
請參考下列網址:
http://support.microsoft.com/kb/555128/zh-tw
SQL 2005似乎就沒有這限制了
請參考下列網址:
http://msdn.microsoft.com/zh-tw/library/ms179313(SQL.90).aspx