Резервное копирование базы данных с Entity Framework на ASP.Net

У меня интересный случай. Я потерял доступ к подписке Azure. Однако у меня все еще есть доступ к публикации приложения ASP.Net, потому что я настроил профиль публикации, который по-прежнему работает. Обратите внимание, что в этом нет ничего незаконного - внутренняя политика компании в отношении подписок VS; Достаточно сказать, что это приложение мое, написано мной, поддерживается мной и т. д.

Мне нужно создать резервную копию базы данных, но единственное, что я могу сделать, это опубликовать приложение. Очевидно, что в настройках приложения встроена строка подключения, но я не могу подключиться к базе данных из-за настроек брандмауэра (только для служб Azure). Поэтому мне нужно найти способ сбросить данные с помощью контроллера и действия.

Пока мне удалось сбросить большинство таблиц вручную (например, var data = context.Table.ToList();), а затем вывести результаты в поле зрения. Однако это не будет экспортировать внутренние таблицы ASP.Net, к которым я не могу получить доступ напрямую (например, утверждения пользователей / ролей и т. Д.)

Имейте в виду, что мы говорим об Azure SQL, который отличается от обычного SQL Server.

Как сделать резервную копию базы данных, чтобы перенести приложение в другую подписку?

1 ответ

Если вы также можете опубликовать свой webapp. Вы можете создать APIфункцию и вызвать ее. Что-то вроде: https://yourwebsite.azurewebsites.net/backup/start.

Вы можете создать PROCEDUREи запустите его, чтобы сгенерировать .bak файл в BLOB-объект (предполагается, что вам необходимо знать информацию, относящуюся к BLOB-объекту).

Пример кода вроде:

С # SQL Server резервное копирование удаленной базы данных в удаленное место резервного копирования по умолчанию без прямого доступа к удаленному расположению?

Другие вопросы по тегам