是否可以從 MySQL 5.5 master 複製到 5.1 slave?
簡短版:是否可以從 5.5 主伺服器複製到 5.1 從伺服器?
長版:我們從 5.0 到 5.5 進行了大規模升級。如果轉儲 400gb 數據庫並將它們導入 5.5,這是一個漫長的過程。
5.5 的複制似乎完全被打破了。主伺服器始終掛起,從伺服器不斷斷開/重新連接並留下陳舊的 binlog_dump 連接(從顯示程序列表中可見)。主人在關機時掛起,直到一個小時後關機“放棄”時我不得不殺死。最後它每天都會收到這種類型的錯誤“110423 13:55:48
$$ ERROR $$從屬 SQL:無法在表 prod.site_iplist 上執行 Delete_rows 事件;在 ‘site_iplist’ 中找不到記錄,Error_code: 1032; 處理程序錯誤 HA_ERR_KEY_NOT_FOUND;事件的主日誌 mysql-bin.000385, end_log_pos 65644796, Error_code: 1032" 這是一個將在 5.5.12 中修復的錯誤。 這非常令人失望,因為我們的 5.0 設置執行了 3 年。
無論如何,我希望升級到 5.1.56(它至少有 56 次對穩定產品的更新)。問題是我所有的數據庫現在都是 5.5。
5.5 的主機和 5.1 的從機可以嗎?遷移過程是將數據庫導入 5.1,然後啟用複制,在同步後將所有人故障轉移到 5.1,然後在每個人都在 5.1 數據庫上時降級所有其他 5.5 伺服器。
5.5 master –> 5.1 slave 可以工作嗎?如果是這樣,它是否適用於目前的 MIXED 模式複制?我是否必須將其更改為僅聲明?
謝謝!
通常不支持您嘗試執行的操作。引用MySQL 版本之間的複制兼容性文件:
MySQL 支持從一個主要版本複製到下一個更高的主要版本。例如,您可以從執行 MySQL 4.1 的主伺服器複製到執行 MySQL 5.0 的從伺服器,從執行 MySQL 5.0 的主伺服器複製到執行 MySQL 5.1 的從伺服器,等等。
和
從較新的 master 複製到較舊的 slave 可能是可能的,但通常不支持。
它可能適用於這些版本,但與推薦的設置相去甚遠。我的意見:不要這樣做。
另請閱讀升級複製設置
也就是說,當升級到 MySQL 5.5 時,slave 必須是 MySQL 5.5,然後才能將 master 升級到 5.5。
(也許這個片段雖然我不認為如果你重新導入到 5.1 它是直接相關的)
一旦從基於語句的複制切換到基於行的複制,並且在第一個基於行的語句被寫入 binlog 之後,就無法將複製設置降級到以前的版本。