SQL Server: импорт базы данных из .mdf?

У меня есть файл .mdf в моем локальном ящике.

На моем локальном компьютере установлены SQL Server 2008 Express и SQL Management Studio 2008 Express.

Как вообще мне импортировать этот файл .mdf в качестве новой базы данных в свой SQL Server?

Это кажется смехотворно распространенной задачей, которую необходимо выполнять тысячи раз в день по всему миру, и я не могу понять, как это сделать в Management Studio Express.

Что мне не хватает?


person AgileMeansDoAsLittleAsPossible    schedule 27.10.2010    source источник


Ответы (5)


См .: Как прикрепить файл базы данных к 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
person Joe Stefanelli    schedule 27.10.2010
comment
И хотя он связан (косвенно) с этой статьей, вот как это сделать: в SSMS. - person Dan J; 28.10.2010

Откройте SQL Management Studio Express и войдите на сервер, к которому вы хотите присоединить базу данных. В окне «Обозреватель объектов» щелкните правой кнопкой мыши папку «Базы данных» и выберите «Прикрепить ...». Откроется окно «Прикрепить базы данных»; внутри этого окна нажмите «Добавить ...», а затем перейдите к вашему файлу .MDF и нажмите «ОК». Нажмите «ОК» еще раз, чтобы завершить присоединение базы данных, и все готово. База данных должна быть доступна для использования. наилучшие пожелания :)

person saba    schedule 19.01.2013
comment
Как сказал daniele3004: очень важно, файл .mdf должен находиться в C: ...... \ MSSQL12.SQLEXPRESS \ MSSQL \ DATA - person call-me; 11.06.2016
comment
@ call-me либо это, либо папка, в которой находится MDF, должна иметь разрешение на запись для учетной записи пользователя SQL Server. - person Matt; 22.08.2019

Для выполнения этой операции см. Следующие изображения:

введите описание изображения здесь

и следующий шаг - добавить файл * .mdf,

очень важно, файл .mdf должен находиться в C: ...... \ MSSQL12.SQLEXPRESS \ MSSQL \ DATA

введите описание изображения здесь

Теперь удалите файл журнала

введите описание изображения здесь

person daniele3004    schedule 17.02.2016

Помимо шагов, упомянутых в опубликованных ответах @ daniele3004 выше, мне пришлось открыть SSMS в качестве администратора, иначе он показывал, что основной файл является ошибкой только для чтения.

Перейдите в меню «Пуск», перейдите по ссылке SSMS, щелкните правой кнопкой мыши ссылку SSMS и выберите Запуск от имени администратора. Затем выполните указанные выше действия.

person Mudassir Hasan    schedule 07.01.2017

Если у вас нет файла LDF, тогда:

1) положить МДФ в 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

person Nicholas DiPiazza    schedule 01.04.2017