Скопировать базу данных в SQL Server Express?

Я хотел бы сделать копию базы данных, которую я имею, но сохранить ее на том же сервере, что и тестовая база данных. Однако все, что я нашел, это использовать мастер копирования базы данных (я использую MS SQL Server Express).

Инструкции всегда говорят: В SQL Server Management Studio в Обозревателе объектов разверните Базы данных, щелкните правой кнопкой мыши базу данных, выберите "Задачи" и нажмите "Копировать базу данных".

У меня нет опции "Копировать базу данных". Я работаю как администратор, поэтому не знаю, почему он отсутствует для меня - это что-то, что мне нужно установить отдельно? Я не могу выполнить Detach/Attach, поскольку он копирует на тот же сервер. Я пробовал отсоединять, копировать MDF/LDF, переименовывать, прикреплять, но, как вы можете себе представить, это испортило тонну:) Я не очень хорошо разбираюсь в SQL, чтобы делать все это программно. Есть ли инструмент, который я мог бы использовать?

Ответ 1

В SSMS 2008 вы можете сделать это:

  • Создайте резервную копию базы данных, которую вы хотите скопировать

  • В SSMS щелкните правой кнопкой мыши "Базы данных" и выберите "Восстановить базу данных"

  • Выберите базу данных, которую вы хотите скопировать, из раскрывающегося списка "Из базы данных" в разделе "Источник для восстановления"

  • Введите имя новой базы данных в поле "К базе данных" в разделе "Целевое назначение для восстановления" - это не может быть имя существующей базы данных.

  • Нажмите OK

Вы закончили!:)

Ответ 2

В SQL Server Express 2012 вы можете выполнить следующие шаги:

  • Создайте резервную копию базы данных, которую вы хотите скопировать.
  • щелкните правой кнопкой мыши "Базы данных" и выберите "Восстановить файлы и файловые группы".
  • Введите имя новой базы данных в поле "К базе данных".
  • Выберите "Из устройства", а затем выберите файл, который вы создали на первом шаге.
  • нажмите "ОК"

это "клонирует" базу данных с правильными настройками таблицы, такими как "значение по умолчанию" и "автоматическое увеличение" и т.д.

Ответ 3

В базе данных SQL Express есть кнопка экспорта, я просто экспортировал базу данных в новую базу данных на том же сервере, она копирует базу данных. Просто щелкните правой кнопкой мыши имя базы данных.

Ответ 4

Сделайте эти шаги, чтобы сделать копию базы данных в SQL Express

  • Остановить SQL
  • Скопируйте mdf, ldf и любой другой файл для db в новое местоположение (убедитесь, что вы получили файл журнала)
  • Измените имя каждого скопированного файла
  • Запустить SQL
  • Щелкните правой кнопкой мыши базу данных в SSMQ и выберите команду
  • Убедитесь, что вы изменили имя в столбце "Прикрепить как"
  • Обновите расположение файла в нижней части "Сведения о базе данных" до места скопированных файлов (особенно этот файл журнала).

Я смог скопировать базу данных в моей системе SQL Express с помощью этого метода

alt text

Ответ 5

Просто помните, если вы используете SQL Server Express 2012 для перехода к опции "Файлы" и убедитесь, что файлы назначения (столбец "Восстановить как" ) отличаются от исходных файлов *.mdf и *.log

(я попытался поместить изображение, но ему нужно 10 репутации: p)

Ответ 6

Я не верю, что в экспресс-версии менеджера будет функция базы данных копирования. Рассматривали ли вы копирование с помощью метода резервного копирования и восстановления?

http://msdn.microsoft.com/en-us/library/ms190436.aspx

Ответ 7

Решение, безусловно, создать резервную копию и восстановить его, но убедитесь, что вы восстановили копию, указывая на разные файлы .mdf и .ldf.

Здесь, как проверить, что с использованием SSMS 2014 и установки SQL Server 12: http://screencast.com/t/7L29BEJcr9e, предполагая, что вы создаете и восстанавливаете резервные копии на ваш локальный диск.

  • Создайте резервную копию существующей базы данных
    • Щелкните правой кнопкой мыши базу данных и выберите "резервное копирование..." в разделе "Задачи".
    • (Если вы оставите местоположение по умолчанию, вам не нужно искать резервную копию на следующем шаге при восстановлении.)
  • Восстановите резервную копию в новой базе данных:
    • Щелкните правой кнопкой мыши по базам данных, выберите "восстановить базу данных"
    • Выберите "устройство"
    • Нажмите кнопку многоточия ( "..." ), чтобы открыть диалоговое окно "Selct Backup devices".
    • Выберите "Файл" в качестве типа носителя резервного копирования и нажмите кнопку "Добавить"
    • Выберите резервную копию, которую вы только что создали, нажмите ok (дважды)
    • Теперь, в диалоговом окне "База данных восстановления", введите новое имя для вашей целевой базы данных
    • Нажмите "файлы" в разделе "Выбрать страницу" и убедитесь, что "restore as" указывает на имена файлов .mdf и .ldf, которые еще не существуют.
    • Нажмите ok!

Ответ 8

Я нашел проблему! Нажмите "Базы данных", "Восстановить", а затем выполните следующие действия: После выбора места для восстановления и записи имени db адресата, перейдите в файлы [аннотация 1 на картинке] и измените имена файлов с очень правильным столбцом на разные оригиналы [аннотация 2 на картинке], тогда он работает:)

> СМОТРЕТЬ ИЗОБРАЖЕНИЕ ЗДЕСЬ <

Ответ 9

Попробуйте сделать резервную копию своей базы данных и восстановить ее в новой базе данных.

  • Создать новую БД.
  • Сделайте полную резервную копию оригинала.
  • Щелкните правой кнопкой мыши на новой базе данных, нажмите "Восстановить".
  • Перейдите к вашему .BAK и убедитесь, что .mdf и .ldf соответствуют новому.

Ответ 10

Я думаю, вы можете попробовать импортировать данные в новую базу данных.

  • Создайте пустую базу данных на локальном сервере sql
  • Щелкните правой кнопкой мыши по новой базе данных → задачи → импортировать данные
  • В Мастере импорта и экспорта SQL Server выберите имя продукта env servername в качестве источника данных. И выберите свою новую базу данных в качестве целевых данных.