Импорт / экспорт базы данных с помощью SQL Server Server Management Studio


197

Я думал, что это будет тривиально, но это не так ... Я уверен, что есть простой способ сделать это, но я не могу найти его. Мне стыдно.

Я хочу импортировать / экспортировать саму базу данных, таблицы, ограничения (внешние ключи и так далее). Я бы предпочел не получать данные с этим, но я могу избавиться от этого после, если нет другого пути.

Итак ... как вы экспортируете базу данных с помощью MS SQL Server Management Studio? Как вы импортируете это?

Единственное решение, которое я нашел, - щелкнуть правой кнопкой мыши таблицы и «скрипт для создания», но у меня есть что-то вроде 100 таблиц, поэтому я бы предпочел этого избежать.

Спасибо!

Ответы:


316

Щелкните правой кнопкой мыши по самой базе данных, Задачи -> Создать сценарии ...

Тогда следуйте за волшебником.

Для SSMS2008 +, если вы также хотите экспортировать данные, на шаге «Установка параметров сценариев» выберите кнопку «Дополнительно» и измените «Типы данных для сценария» с «Только схема» на «Только данные» или «Схема и Данные".


11
как насчет получения данных? Можно ли создавать запросы вставки с помощью метода, например, создать сценарий?
Куби

50
@ Kubi, на шаге «Установить параметры сценария» выберите кнопку «Дополнительно» и измените «Только схема» на «Только данные» или «Схема и данные».
Брэндон

25
@ Брэндон, спасибо тебе за это. Почему «только схема», «только данные» или «схема и данные» считаются «расширенными», я не понимаю.
Брайан Хупер

2
2Brandon: «Расширенные» опции сценариев доступны только в SSMS 2008+.
ivan_pozdeev

2
«Только данные» или «Схема и данные» создают команды INSERT, которые дублируют имена заголовков для каждой строки. Файл примерно в два раза больше текстовой версии данных. Вместо этого можно попробовать экспортировать только схему, а затем использовать BULK INSERT для загрузки файла CSV, созданного с помощью мастера экспорта .... Будьте осторожны, MSQL не умеет читать цитируемые поля.
Джон Марк

23

Другое решение - Резервное копирование и восстановление базы данных.

Резервное копирование базы данных системы

Чтобы выполнить резервное копирование базы данных системы с помощью Microsoft SQL Server Management Studio Express, выполните следующие действия:

  1. Загрузите и установите Microsoft SQL Server 2008 Management Studio Express с веб-сайта Microsoft: http://www.microsoft.com/en-us/download/details.aspx?id=7593.

  2. После установки Microsoft SQL Server Management Studio Express запустите приложение для подключения к системной базе данных. Откроется диалоговое окно «Подключение к серверу». В поле «Имя сервера:» введите имя сервера Webtrends, на котором установлена ​​системная база данных. В поле «Аутентификация:» выберите «Аутентификация Windows», если вы вошли на компьютер с Windows, используя учетную запись службы Webtrends или учетную запись с правами на внесение изменений в системную базу данных. В противном случае выберите «Аутентификация SQL Server» в раскрывающемся меню и введите учетные данные для учетной записи SQL Server, которая обладает необходимыми правами. Нажмите «Подключиться», чтобы подключиться к базе данных.

  3. Разверните «Базы данных», щелкните правой кнопкой мыши «wt_sched» и выберите «Задачи»> «Создать резервную копию ...» в контекстном меню. Откроется диалоговое окно «Резервное копирование базы данных». В разделе «Источник» убедитесь, что для «База данных:» выбрано «wt_sched», а «Тип резервной копии:» - «Полный». В разделе «Набор резервных копий» укажите имя, описание и срок действия, если необходимо, а затем выберите «Добавить ...» в разделе «Место назначения» и укажите имя файла и путь, в котором будет сохранена резервная копия. Может потребоваться выбрать параметр «Перезаписать все существующие наборы резервных копий» в разделе «Параметры», если резервная копия уже существует и должна быть перезаписана.
  4. Нажмите «ОК», чтобы завершить процесс резервного копирования.

  5. Повторите вышеуказанные шаги для части базы данных «wtMaster».

Восстановить системную базу данных

Чтобы восстановить системную базу данных с помощью Microsoft SQL Server Management Studio, выполните следующие действия:

  1. Если вы еще этого не сделали, загрузите и установите Microsoft SQL Server 2008 Management Studio Express с веб-сайта Microsoft: http://www.microsoft.com/en-us/download/details.aspx?id=7593.

  2. После установки Microsoft SQL Server Management Studio запустите приложение для подключения к системной базе данных. Откроется диалоговое окно «Подключение к серверу». В поле «Тип сервера:» выберите «Database Engine» (по умолчанию). В поле «Имя сервера:» выберите «\ WTSYSTEMDB», где указано имя сервера Webtrends, на котором расположена база данных. WTSYSTEMDB - это имя экземпляра базы данных в установке по умолчанию. В поле «Аутентификация:» выберите «Аутентификация Windows», если вы вошли на компьютер с Windows, используя учетную запись службы Webtrends или учетную запись с правами на внесение изменений в системную базу данных. В противном случае выберите «Аутентификация SQL Server» из раскрывающегося меню и введите учетные данные для учетной записи SQL Server, которая имеет необходимые права. Нажмите «Подключиться», чтобы подключиться к базе данных.

  3. Разверните «Базы данных», щелкните правой кнопкой мыши «wt_sched» и выберите «Удалить» из контекстного меню. Убедитесь, что установлен флажок «Удалить информацию резервного копирования и истории восстановления для баз данных».

  4. Нажмите «ОК», чтобы завершить процесс удаления.

  5. Повторите вышеуказанные шаги для части базы данных «wtMaster».

  6. Щелкните правой кнопкой мыши «Базы данных» и выберите «Восстановить базу данных ...» из контекстного меню. В поле «To database:» введите «wt_sched». Выберите переключатель «С устройства:». Нажмите на эллипс (...) справа от текстового поля «С устройства:». Нажмите кнопку «Добавить». Найдите и выберите файл резервной копии для «wt_sched». Выберите «ОК» в форме «Найти файл резервной копии». Выберите «ОК» в форме «Указать резервную копию». Установите флажок в столбце восстановления рядом с «wt_sched-Full Database Backup». Выберите «OK» в форме «Восстановить базу данных».

  7. Повторите шаг 6 для части базы данных «wtMaster».

Вежливость - http://kb.webtrends.com/articles/How_To/Backing-Up-and-Restoring-the-System-Database-using-MS-SQL-Management-Studio


1
Проблема, с которой я столкнулся при таком подходе, заключается в том, что bak-файл плохо работает при восстановлении на другом компьютере. Иногда это работает, иногда нет. По крайней мере, для меня сценарий - более безопасный подход. +1 за подробное объяснение
Nunser

1
Кроме того, для этого требуются системные привилегии, что часто, если вы разрабатываете инфраструктуру общих служб, которой у вас нет. молодец Microsoft.
Матао

3

Я хотел поделиться с вами своим решением экспортировать базу данных с Microsoft SQL Server Management Studio.

Экспортировать вашу базу данных

  1. Откройте новый запрос
  2. Скопируйте и вставьте этот скрипт

    SET @BackupFile = 'D: \ database-backup.bak'

    --PRINT @BackupFile

    РЕЗЕРВНАЯ БАЗА ДАННЫХ [% databaseName%]

    TO DISK = @BackupFile

Не забудьте заменить% databaseName% на имя базы данных, которую вы хотите экспортировать.

Обратите внимание, что этот метод дает более легкий файл, чем из меню.

Чтобы импортировать этот файл из SQL Server Management Studio. Не забудьте удалить вашу базу данных заранее.

  1. Нажмите восстановить базу данных

Нажмите восстановить базу данных

  1. Добавить файл резервной копии Добавить файл резервной копии

  2. Validate

Наслаждайтесь! :) :)


2
наконец-то скриншот решение! :)
Reven

2

для Microsoft SQL Server Management Studio 2012,2008 .. Сначала скопируйте файл базы данных .mdf и файл журнала .ldf & Вставьте в установочный файл сервера sql в папке «Файлы программ» -> Microsoft SQL Server -> MSSQL10.SQLEXPRESS-> MSSQL-> DATA , Затем откройте Microsoft Sql Server. Щелкните правой кнопкой мыши на Базы данных -> выберите Прикрепить ....


Я попробовал этот метод, и он работал. Скопировал database.mdf и database_log.ldf из вышеупомянутой папки (SQL 2012), затем перенес эти 2 файла на новый сервер с другой версией (SQL Express 2014) SQL Management Studio.
Виньеш Чиннайян

0

Я попробовал ответы выше, но сгенерированный файл сценария был очень большим, и у меня были проблемы при импорте данных. Я закончил тем, что отделил базу данных, затем скопировал .mdf на мой новый компьютер, а затем подключил его к моей новой версии SQL Server Management Studio.

Я нашел инструкции, как это сделать, на веб-сайте Microsoft:
https://msdn.microsoft.com/en-us/library/ms187858.aspx

ПРИМЕЧАНИЕ. После отсоединения базы данных я нашел файл .mdf в этом каталоге:
C: \ Program Files \ Microsoft SQL Server \

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.