Как в больших серверных средах решить проблему резервного копирования баз данных SQL Server, которые могут не синхронизироваться с другими базами данных, на которые они полагаются?
Итак, если я создаю резервную копию DB1 с сервера, и он использует другой db, для которого не создается резервная копия, выполнение восстановления, когда dbs находятся в другом состоянии, может вызвать проблемы? Похоже, что все зависимые БД должны быть зарезервированы, независимо от размера и т. Д., Но в моей текущей работе (где мы - компания-центр обработки данных, а я разработчик .NET) я делаю резервную копию только некоторых из нескольких зависимых БД на SQL Экземпляр сервера.
Спасибо
Первое, что нужно сделать, это сделать резервную копию ВСЕХ баз данных, точка. Особенно, если есть зависимости от других баз данных. Резервные копии зависимой базы данных бесполезны, если они зависят от состояния других баз данных, для которых не созданы резервные копии.
Тем не менее, существует множество способов решения описываемой вами проблемы состояния в зависимости от того, какое приложение поддерживает ваши базы данных. Ваша стратегия резервного копирования должна идти рука об руку с архитектурой вашего приложения. В идеале архитектура вашего приложения разрабатывается с учетом резервных копий.
Если ваше приложение представляет собой систему ввода в реальном времени (например, интернет-магазин), вы сталкиваетесь с чем-то вроде восстановления всех применимых баз данных до определенного момента времени.
Если ваше приложение представляет собой нечто большее, чем система расчетных отчетов, в которой состояние системы стабильно на момент последнего расчета, то вы можете просто выполнить полное резервное копирование базы данных через некоторое время после завершения расчетов. Вам также необходимо будет принять во внимание вводимые пользователем данные после завершения расчетов, возможно, восстановление из полной резервной копии, а затем скользящие журналы транзакций.
Вот несколько идей. Надеюсь, они помогут направить вас к решению.