使用sqlyog工具同步兩個相同結構的數據庫之間的數據


compare two database data

因為工作上遇到 同一個項目被部署到不同服務器上,原項目(后統稱"源")在運行中,后部署的項目(后統稱"目標")也在運行中。需要源的mysql數據同步到目標的mysql上。

我的情況是數據庫的表結構是一樣的,是數據需要同步。

在 sqlyog 也可以通過ssh通道來連接mysql(和navicat for mysql用法一樣).


下面是我在網上找的sqlyog軟件並使用的,如果你懶得去再找,可以嘗試下面的分享連接來下載使用

鏈接: https://pan.baidu.com/s/1nZh1-EFqnZSMYL_k1v3Twg 提取碼: jcbu


前提: 兩個有相同表結構的數據庫的備份sql都導入到本地的mysql中

目標: 同步並生成對應的sql腳本,可以將這些sql腳本在 目標服務器的mysql中執行對比之后的sql腳本,達到同步數據的效果

我的操作步驟是: sqlyog的菜單欄 高級工具 -> 數據庫S 同步向導

  1. 彈出 向導的窗口,默認是開始新工作,點擊下一步按鈕
  2. 選擇源和目標的數據庫,點擊下一步按鈕
  3. 進入數據同步高級選項,我選的是單向同步並勾選不要在目標刪除額外的行,點擊下一步按鈕
  4. 進入選擇想要同步的表,我選的是在數據庫中同步所有表,點擊下一步按鈕
  5. 進入你要如何執行同步?頁,因為我是在本地導入了2個數據庫,需要將同步的sql導入到遠程上,所以選擇的是同步和生成腳本,然后在給文件名 選擇存放sql的路徑,點擊下一步按鈕
  6. 進入錯誤處理頁,我是全不勾選,點擊下一步按鈕
  7. 進入在定期間隔發送查詢結果,我選擇的是立即運行,點擊下一步按鈕
  8. 進入到進行處理 同步操作了,等待執行完成,執行完成之后,下一步按鈕是啟用的了,點擊下一步按鈕之后,會進入向導成功完成頁,點擊完成按鈕或者當前窗口的關閉按鈕就會關閉窗口了。

然后打開第5步保存的sql文件,看里面是否是有 INSERT或者UPDATE 語句,如果有,將所有語句復制到遠程的 phpmyadmin中的目標數據庫中,執行對應的sql語句,就完成了數據同步操作了。

References

  1. Compare two MySQL databases [closed]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM