最初,我在本地機器上使用SQL Server Management Studio創建了我的數據庫。如何將SQL Server數據庫移動到另一個?
我現在想將它複製到我的網站文件夾中的我的App_Data
,這樣我希望能夠自由移動我的網站,同時將我的數據庫(包含在我的App_Data
中)移動到另一臺機器上。
我應該遵循哪些步驟?
我正在使用SQL Server 2008 Express。
最初,我在本地機器上使用SQL Server Management Studio創建了我的數據庫。如何將SQL Server數據庫移動到另一個?
我現在想將它複製到我的網站文件夾中的我的App_Data
,這樣我希望能夠自由移動我的網站,同時將我的數據庫(包含在我的App_Data
中)移動到另一臺機器上。
我應該遵循哪些步驟?
我正在使用SQL Server 2008 Express。
有很多方法可以使用SQL Server Tools將數據庫從一臺服務器移動到另一臺服務器。
i)從舊服務器分離數據庫並將其附加到新服務器中。這純粹是離線操作,它移動數據庫而不是複製它。
參考http://msdn.microsoft.com/en-us/library/ms190209.aspx:如何使用連接/在SQL Server Management Studio中(SSMS)
II分離數據庫)備份在舊服務器上的數據庫,並在目標服務器的恢復。這可以在聯機期間執行,並在目標服務器中創建一個新的數據庫。
請參閱http://msdn.microsoft.com/en-us/library/ms187048.aspx瞭解更多信息。
iii)在SQL Server Management Studio中使用複製數據庫嚮導。
選擇SSMS源服務器中的數據庫 右鍵單擊 - >任務 - >複製數據庫嚮導以啓動複製數據庫嚮導。 輸入源和目的地的憑據,並選擇安裝/拆卸或 SMO類型單擊下一步,您可以計劃或立即運行 單擊Finish執行它
參考http://msdn.microsoft.com/en-us/library/ms188664.aspx以獲取更多信息。
iv)最後一種類型是使用生成腳本嚮導(SSMS)生成創建腳本並在目標服務器中執行它。
在SSMS中選擇源服務器中的數據庫 右鍵單擊 - >任務 - >生成腳本嚮導以啓動向導。 選擇所需的各種腳本選項,並選擇爲它們生成腳本所需的對象。在腳本選項中確保腳本數據= true以生成用於數據的腳本(INSERT語句)
單擊下一步 - >下一步並完成以生成腳本(新查詢窗口或剪貼板或文件) 連接到目標服務器並在其中創建新的數據庫。 單擊新的查詢窗口並粘貼上面使用GSW生成的腳本,並使用目標數據庫上下文執行它們。
參見http://msdn.microsoft.com/en-us/library/ms181421.aspx以獲取更多信息
v)的在SMO
使用傳輸對象樣品的編號: ScriptingOptions所以=新ScriptingOptions(); so.ScriptData = true; 轉移t =新轉移(db); t。CopyAllObjets = true; t.options = so; ................... .................. t.TransferData();
注:轉類是Microsoft.SqlServer.SmoExtendedClass.dll(SQL Server 2008中) 或Microsoft.SqlServer.Smo.dll(SQL Server 2005中)
有各種各樣的成員變量是可配置的使用。此外,還可以創建ScriptingOptions類對象並將其分配給傳輸對象。
set ScriptData = true也用於傳輸數據。它複製目的地而不是移動數據庫
請參閱http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.transfer.aspx以獲取更多信息。
vi)您可以使用數據庫發佈嚮導來完成此操作。您可以根據您的要求將目標版本指定爲SQL 2005或SQL 2000等。
非常感謝您的回覆。 – Telerik
首先 - 我不會那樣做。 SQL Server是一個基於**服務器的**系統,你應該把文件的細節擺到SQL Server的旁邊,只需在你的服務器上用邏輯名稱與你的數據庫進行交談 - 不要只是複製'.mdf'文件,這很混亂。即使你的'App_Data'文件夾中有'.mdf'文件 - 客戶端機器仍然必須安裝** SQL Server ** Express **。只是在那裏複製文件**不起作用!** –