Клонировать содержимое базы данных в существующую базу данных - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть две базы данных AzureSQL, назовем их «A» и «B».Во время процесса развертывания я хочу скопировать схему + данные из А в Б. Как это сделать, используя как можно меньше кода?Для этого есть встроенная задача или команда PowerShell?

Я нашел https://docs.microsoft.com/en-us/azure/sql-database/sql-database-copy, но эта команда создает новую базу данных в качестве цели.Я не хочу этого, цель уже существует.

Ответы [ 4 ]

0 голосов
/ 20 февраля 2019

Не можете ли вы автоматизировать настройку мониторинга?Вы можете, вероятно, скопировать, дождаться завершения копирования и затем переименовать базы данных.Переименование должно быть достаточно малым временем простоя?

0 голосов
/ 18 февраля 2019
  1. Сценарий CREATE для каждой таблицы
  2. Отключить все внешние ключи
  3. Заполнить все таблицы с помощью мастера SSIS
  4. Повторно включить внешние ключи

ДЕТАЛИ ... https://richardbriansmith.wordpress.com/2018/10/10/copy-tables-to-new-database/

0 голосов
/ 18 февраля 2019

Я бы попытался:

  1. Восстановить базу данных A в C
  2. Удалить базу данных B
  3. Переименовать C в B
0 голосов
/ 18 февраля 2019

Лучший вариант - удалить базу данных B.

DROP DATABASE [yourdatabaseB];

Затем создать копию A как B.

CREATE DATABASE yourdatabaseB  
    AS COPY OF yourdatabaseA ( SERVICE_OBJECTIVE = 'P2' ) 

Хотя вы не хотите, чтобы это был самый быстрыйспособ сделать это.

...