我在本地盒子上有一個.mdf文件。SQL Server:從.mdf導入數據庫?
我在本地機器上安裝了SQL Server 2008 Express和SQL Management Studio 2008 Express。
如何在世界中將這個.mdf文件作爲新的數據庫導入到我的SQL Server中?
這似乎是一個非常普通的任務,必須每天在全球執行數千次,而且我無法弄清楚如何在Management Studio Express中執行此操作。
我錯過了什麼?
我在本地盒子上有一個.mdf文件。SQL Server:從.mdf導入數據庫?
我在本地機器上安裝了SQL Server 2008 Express和SQL Management Studio 2008 Express。
如何在世界中將這個.mdf文件作爲新的數據庫導入到我的SQL Server中?
這似乎是一個非常普通的任務,必須每天在全球執行數千次,而且我無法弄清楚如何在Management Studio Express中執行此操作。
我錯過了什麼?
參見:How to: Attach a Database File to SQL Server Express
通過SQLCMD登錄到數據庫:
sqlcmd -S Server\Instance
,然後發出命令:
USE [master]
GO
CREATE DATABASE [database_name] ON
(FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\<database name>.mdf'),
(FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\<database name>.ldf')
FOR ATTACH ;
GO
打開SQL管理Studio快速並登錄到服務器您要附加數據庫。在'對象資源管理器'窗口中,右鍵單擊'數據庫'文件夾並選擇'附加...'將打開'附加數據庫'窗口;在該窗口內單擊「添加...」,然後導航到您的.MDF文件並單擊「確定」。再次點擊'OK'完成附加數據庫並完成。數據庫應該可以使用。 最好的問候:)
不要在SQL Management Studio 2008中爲我工作 – 2015-04-08 14:24:29
像daniele3004說: 非常重要,.mdf文件必須位於C:...... \ MSSQL12.SQLEXPRESS \ MSSQL \ DATA – 2016-06-10 21:32:56
除此之外,我不得不打開SSMS以管理員身份,否則它的內部的主要文件是隻讀的錯誤。
轉到開始菜單,導航到SSMS鏈接,右鍵單擊SSMS鏈接,選擇以管理員身份運行。然後執行上述步驟。
如果你沒有那麼LDF文件:
1)把MDF中C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\
2)在SSMS,去Databases -> Attach
並添加MDF文件。它不會讓你以這種方式添加它,但它會告訴你包含在其中的數據庫名稱。
3)確保您正在運行ssms.exe的用戶已訪問此MDF文件。
4)現在,你知道DBNAME,運行
EXEC sp_attach_single_file_db @dbname = 'DbName',
@physname = N'C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\yourfile.mdf';
參考:https://dba.stackexchange.com/questions/12089/attaching-mdf-without-ldf
而且,雖然它是從那篇文章鏈接(間接),這裏是如何做到這一點[在SSMS]( http://msdn.microsoft.com/en-us/library/ms190209.aspx)。 – 2010-10-27 21:50:33