萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL數據庫快速遷移方法

MySQL數據庫快速遷移方法

近期機房要搬遷, 如何將數據庫快速安全地切換到新的機房是是一個不小的問題,首先要保證遷移過去的數據是完整有效的, 還要保證遷移的速度快速地遷移過去, 不能停服太長時間

 如果要保證數據的完整性, 最好的做法就是停服, 不在向數據庫中寫入數據了, 全備然後在新的DB上恢復。 但是這樣的話大量的數據可能會消耗幾個小時的時間來備份和恢復數據, 停止幾個小時的時間會讓人覺得崩潰!  所以比較好的方案是提前做一個全備, 並且新開始一個二進制日志, 然後在遷移的時候把二進制日志轉移過去, 在全備的基礎上做增量。

    遷移第一步: 先將DB做全備, 並轉移大部分數據

            很幸運的是 mysqldump 提供了這樣的功能!

            mysqldump -F --lock-tables -u root -p db > /tmp/mysql_full_bak.sql

            -F  參數的目的是啟用一個新的二進制日志文件, 這樣的話在第二步的時候就可以對全備之後的二進制日志進行增量恢復了

            --lock-tables  這個很重要, 在備份的過程中鎖表, 保證數據的完整性
            -u  用戶名   - p 要輸入密碼    db  要備份的數據庫

            備份完了之後就會開啟一個新的二進制日志

    ​遷移第二部: 將增量的數據轉移到新機房

    ​        mysqlbinlog ./mysql-bin.000016  > mysql -u root -p db

copyright © 萬盛學電腦網 all rights reserved