簡體   English   中英

兩個不同的sql服務器之間的數據比較

[英]data compare between two different sql servers

我目前正在將數據從SQL 2008 R2遷移到SQL 2014服務器,並想檢查目標服務器中的所有數據值是否與源服務器遷移后的數據相同。 但是,兩個服務器位於不同的網段上。 我可以通過什么方法比較兩個不同的sql服務器之間的數據?

您可以為每個表分別編寫一個哈希函數。 然后只需比較值即可。

此功能針對MSSQL的簡單實現示例:

SELECT
AVG(CAST(CAST(
            HASHBYTES('MD5', CONCAT(columnn1, column2, column3))
    AS BIGINT) AS FLOAT)) 
FROM simpleTable;

與MySql相同:

SELECT 
AVG(CONV(SUBSTR(MD5(CONCAT(column1, column2, column3)),
             1, 16),
      16, 10))
FROM simpleTable;

這取決於您需要在兩個數據庫之間進行比較,但是創建鏈接服務器以獲取所需內容應該沒有問題...只要確保在使用完鏈接服務器后就刪除它,因為它確實構成了安全問題。 http://learnsqlwithbru.com/2012/01/06/create-linked-server-to-connect-to-another-sql-server-part-i/

您也可以使用Service Broker,它更安全,但也涉及更多。 https://serverfault.com/questions/98084/can-i-setup-a-link-sql-server-connection-between-servers-on-different-networks

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM