Adott a következő probléma:
Teszt környezetet szeretnék felállítani és az éles környezetből szednék hozzá adatokat. Viszont mivel nincs szükség a teljes adatbázisra (2,5 TB), a táblák pedig évenkénti filegroup-okban csücsülnek, ezért azt találtam ki, hogy ezeket a filegroup-okat állítanám vissza.
Backup így néz ki:
BACKUP DATABASE MyDB
FILEGROUP = 'MyDB_2022'
TO URL = 'https://<Azure Blob Container .bck fájl>'
WITH CREDENTIAL = '<CREDENTIAL>'
,COMPRESSION;
A restore pedig így:
RESTORE DATABASE MyDB
FILEGROUP = 'MyDB_2022'
FROM URL = 'https://<Azure Blob Container .bck fájl>'
WITH CREDENTIAL = '<CREDENTIAL>', NORECOVERY, PARTIAL, REPLACE,
MOVE 'MyDB_2022' TO 'X:\MyDB_2022.ndf'
Sorban backup-ot készítek az Azure Blob Container-be a PRIMARY-ről, a 2022-es, majd a 2023-as filegroupokról.
Aztán restore-nál NORECOVERY-vel visszaállítom a PRIMARY mdf-et, illetve a logot, majd a 2022-es és a 2023-as filegroup-ot.
Az utolsó két parancs már hibára fut, a RESTORE MyDB WITH RECOVERY sikeresen lefut és online az adatbázis. Viszont néhány tábla lekérdezésekor az alábbi hibát kapom:
Could not continue scan with NOLOCK due to data movement.
Tehát corrupt lesz az adatbázis. Csinált már ilyet valaki esetleg és meg tudja mondani, hogy mit csinálok rosszul?