Před časem, kvůli potřebě, musela být data v databázi A migrována do databáze B, aby byla data v obou databázích stejná. Použil jsem SSIS k dokončení tabulky, protože to byla nová tabulka vytvořená mnou v té době, takže při vytváření tabulky jsem přidal pole rowversion, abych rozlišil, která data se liší mezi databázemi A a B, a migroval jsem pouze data s různými čísly verzí, aniž bych kopíroval celou tabulku kvůli zvýšení efektivity. Nicméně není vždy nutné pracovat s novou tabulkou, například když potřebujeme pracovat s existující tabulkou, v této tabulce není pole rowversion, které by rozlišovalo mezi starými a novými daty, co bychom měli dělat?
Ve skutečnosti jsem před kontaktováním databáze SQL Server použil databázi Mysql, která měla binlog pro zaznamenání, jaká data byla manipulována, ale sqlserver neměl binlog, měl soubor s transakčním logem bai. Transaction Log File je soubor používaný k zaznamenávání aktualizací databáze s příponou ldf. Můžete logy komprimovat a použít nástroj třetí strany k jejich zobrazení. Například log explore pro zobrazení SQL log souborů.
Pro podrobný pohled na Thing Log se podívejte na tento blog https://www.cnblogs.com/CareySon/archive/2012/02/14/2351149.html
|