Слушай своего советника. Восстанавливая резервную копию, вы по сути заменяете схему базы данных и данные. Вам нужно будет отключить синхронизацию, удалить базу данных из HA и выполнить восстановление на первичном сервере и реплике, оставив версию реплики в состоянии восстановления с помощью WITH NORECOVERY. Как только ваша резервная копия установлена, поместите БД обратно в HA и снова запустите синхронизацию.
HA очень похож на зеркалирование и использует аналогичную технологию, но не настолько привередливую. Вы также захотите относиться к своим базам данных HA аналогично.
Код будет похож на следующее:
- на начальном
ALTER AVAILABILITY GROUP MyAG REMOVE DATABASE AdventureWorks2012;
- на начальном
RESTORE DATABASE AdventureWorks2012
FROM AdventureWorksBackups
WITH NORECOVERY,
MOVE 'AdventureWorks2012_Data' TO
'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf',
MOVE 'AdventureWorks2012_Log'
TO 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Data\NewAdvWorks.
RESTORE LOG AdventureWorks2012
FROM AdventureWorksBackups
WITH RECOVERY;
- на вторичном
RESTORE DATABASE AdventureWorks2012
FROM AdventureWorksBackups
WITH NORECOVERY,
MOVE 'AdventureWorks2012_Data' TO
'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf',
MOVE 'AdventureWorks2012_Log'
TO 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf';
RESTORE LOG AdventureWorks2012
FROM AdventureWorksBackups
WITH NORECOVERY;
- на начальном
ALTER AVAILABILITY GROUP MyAG ADD DATABASE AdventureWorks2012;
- на вторичном
ALTER DATABASE AdventureWorks2012 SET HADR AVAILABILITY GROUP = MyAG;
The mirror database, "dbname", has insufficient transaction log data to preserve the log backup chain of the principal database. This may happen if a log backup from the principal database has not been taken or has not been restored on the mirror database.