iT邦幫忙

0

SQL 2008 內建備份功能可指定到網路磁碟機嗎

各位前輩好
晚輩最近遇到,主機空間不夠了,想要將原本設定的路徑(E槽),改成網路磁碟機,可是發現好像不能指定網路磁碟機(有指定Z槽),只能指定本機的磁區

是否是少安裝什麼元件了

SERVER OS: windows server 2003標準版
SQL:SQL 2008 標準版

在此感謝各位前輩的幫助

2 個回答

6
CalvinKuo
iT邦大師 7 級 ‧ 2012-01-10 17:54:21
最佳解答

請參考Google到的文章,應該用UNC就可以了
http://msdn.microsoft.com/zh-tw/library/ms179313.aspx
不然可以用下面做法新增備份裝置
http://mrynlin.blogspot.com/2011/03/sql.html

super288 iT邦研究生 5 級 ‧ 2012-01-11 09:07:48 檢舉

請問calvinkuo前輩

關於第二個連結的指令,若成功加入網路磁碟機後,要卸除
要在打什麼指令才可以成功卸除?請教一下

晚輩在此感謝

super288 iT邦研究生 5 級 ‧ 2012-01-11 09:12:44 檢舉

回calvinkuo前輩
晚輩查看了你的文章,發現了此方法
1.連接到適當的 MicrosoftSQL Server Database Engine 執行個體之後,請在 [物件總管] 中按一下伺服器名稱以展開伺服器樹狀目錄。

2.展開 [伺服器物件],然後展開 [備份裝置]。

3.按一下要刪除的裝置,然後以滑鼠右鍵按一下 [刪除],這時會開啟 [刪除物件] 對話方塊。

4在右窗格中,確認 [物件名稱] 資料行中所顯示的裝置名稱是正確的。

5.按一下 [確定]。

參考文章:http://msdn.microsoft.com/zh-tw/library/ms188711.aspx

0
s8710063
iT邦新手 4 級 ‧ 2012-01-11 09:34:26

super288同學,
您這問題小弟剛好有經驗,您應該是在Server上做連線磁碟機Z:吧
MSSQL很機車的是,常常網路會自己搞獨立,也就是說你必須先在MSSQL裡自己下指令把網路空間連起來
所以要先啟用xp_cmdshell,參考指令如下:

<pre class="c" name="code">-- To allow advanced options to be changed.
EXEC sp_configure 'show advanced options', 1
GO
-- To update the currently configured value for advanced options.
RECONFIGURE
GO
-- To enable the feature.
EXEC sp_configure 'xp_cmdshell', 1
GO
-- To update the currently configured value for this feature.
RECONFIGURE
GO

啟用xp_cmdshell後,再使用sql新增查詢下指令連線,或是直接放進排程裡,在備份前先連網路磁碟,備份完中斷連線,參考指令如下:

<pre class="c" name="code">DECLARE @DBPath nvarchar(120)
exec master..xp_cmdshell 'net use Z: \\[IP]\[資料夾] 密碼 /user:帳號'
SET @DBPath = 'Z:\\' + 'Bak' + '_' + DATENAME(Weekday,GETDATE()) + '_Full.BAK'
BACKUP DATABASE [資料庫名] TO DISK = @DBPath 
WITH NOFORMAT, INIT,  NAME = N'Bak-完整 資料庫 備份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
exec master..xp_cmdshell 'net use Z: /delete'
GO

我要發表回答

立即登入回答