检查 2 个表(在不同服务器上)是否具有完全相同的数据

Jua*_*lez 11 sql-server-2008 query

因此,托管我们的 SQL Server 的公司似乎在从生产服务器到备份服务器的复制方面遇到了一些麻烦……不过我相信有些表已经正确复制了。每天(下班后)进行复制。

有没有办法可以比较 2 个相同的表,1 个来自备份,1 个来自生产服务器,看看昨晚的复制是否有效?

我能找到的唯一方法是在两台服务器上运行以下查询并查看结果是否匹配,这“可能”意味着 2 个表包含相同的信息。

SELECT CHECKSUM_AGG(BINARY_CHECKSUM(*))
        FROM   (

                    SELECT  * 
                    FROM    table_to_compare
               ) t1
Run Code Online (Sandbox Code Playgroud)

使用上面的代码,似乎该表确实复制成功,因为校验和值相同,但我不确定这种方法有多可靠。

有谁知道更好的方法来检查这个或者这是否是一个好方法?

我在 Windows Server 2008 计算机上运行 SQL Server 2008。

谢谢。

RK *_*ala 11

我相信您正在寻找可以让您做到这一点的工具tablediff - 比较两个复制表的差异。您可能会发现这篇文章很有用,可以开始使用。

这是tablediff的 GUI