У меня есть два сервера MS SQL 2005, один для производства и один для тестирования, и оба имеют модель восстановления Full. Я восстанавливаю резервную копию производственной базы данных на тестовом сервере и затем пользователи вносят изменения.
Я хочу иметь возможность:
- Откатить все изменения, внесенные в тестовый сервер SQL
- Применить все транзакции, которые произошли на производственном сервере SQL с момента первоначального восстановления тестового сервера, чтобы эти два сервера имели одинаковые данные
Я не хочу делать полное восстановление базы данных из файла резервной копии, поскольку это занимает слишком много времени с нашей базой данных + 200 ГБ, особенно когда все измененные данные меньше 1 ГБ.
EDIT
На основании приведенных ниже предложений я попытался восстановить базу данных с помощью NoRecovery, но вы не можете создать снимок базы данных, которая находится в этом состоянии.
Я также попытался восстановить его в режиме ожидания только для чтения, который работает, и я могу сделать снимок базы данных и при этом применить журналы транзакций к исходной базе данных, но я не могу снова сделать базу данных доступной для записи, пока есть снимки для Это.
Продолжительность:
restore database TestDB with recovery
Приводит к следующей ошибке:
Msg 5094, Level 16, State 2, Line 1 The operation cannot be performed on a database with database snapshots or active DBCC replicas