Mysql
MySQL巴德__和d__噓____乙一種dH一種ndsH一種到和Bad handshake更新後出錯
我在 2 台伺服器上有主從配置。MySQL 複製是通過 SSL 設置的(我使用自簽名證書)。
一切都運作良好。但是今天一些包(mysql也是)通過apt update,upgrade進行了更新。目前版本是:mysql Ver 14.14 Distrib 5.7.28,適用於 Linux (x86_64)
服務端和客戶端現在mysql版本相同,但是slave連接不上master。在主人的日誌中,我看到以下錯誤重複多次:
2019-11-19T16:49:55.109509Z 1130 [Note] Bad handshake 2019-11-19T16:50:55.296184Z 1432 [Note] Bad handshake
為了解決這個問題,我應該檢查什麼?我已經嘗試重新頒發證書,但沒有幫助。
謝謝。
MySQL 5.7.28 放棄了對 yaSSL 的支持。在某些平台上,例如 RHEL 和可能的 Ubuntu,這導致了從 yaSSL 到 OpenSSL 的變化。有很多東西可以在 yaSSL 下工作,但在 OpenSSL 下不再工作。例如,yaSSL 無法處理證書鏈,但 OpenSSL 會發送和驗證完整的鏈。
在其他故障排除技術中,嘗試使用 tcpdump 擷取 TLS 握手的數據包並在 Wireshark 中對其進行解碼。
好的,原因是新版本的 mysql拒絕接受具有相同通用名稱等的證書。
這次我使用不同的元數據為伺服器和客戶端重新頒發了證書,更新了主伺服器和從伺服器上的my.cnf ,現在它又可以工作了。
不要忘記登錄 MySQL
mysql -u root -p
並在必要時更新主主機詳細資訊(MASTER_SSL_CA、MASTER_SSL_CERT MASTER_SSL_KEY)!
CHANGE MASTER TO MASTER_HOST='HOSTIP', MASTER_USER='SLAVEUSER', MASTER_PASSWORD='PWD', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=112233, MASTER_SSL=1, MASTER_SSL_CA = '/etc/mysql/new-ca-cert.pem', MASTER_SSL_CERT = '/etc/mysql/new-client-cert.pem', MASTER_SSL_KEY = '/etc/mysql/new-client-key.pem';