1. ホーム
  2. mysql

MySQLサーバへの接続が「初期通信パケットの読み込み」で切断され、システムエラー:0が発生する場合の対処法

2022-02-09 06:35:03

今日、Navicat for MySQLを使ってリモートサーバーに接続したところ、この問題を発見しました。接続のプロパティを再確認しましたが、何も問題はありませんでした。まず、私の接続プロパティを送ります。


上の画像は、sshの接続プロパティを示しています。ipアドレスはリモートサーバーのipアドレス、ユーザー名とパスワードはsshがリモートサーバーにログインするためのユーザー名とパスワードです。


ipはリモートサーバのip、mysqlのデフォルトのポート3306、ユーザ名とパスワードはmysqlのログインパスワードです。

そこで質問ですが、すべてうまくいっているのになぜ接続できないのでしょうか。bind-addressをコメントしたり、my.cnfの設定を変更したりと、Webでいろいろな方法を使いましたが、どれもうまくいきません。

接続先のリモートサーバーのポートがデフォルトの22ではなく、43334であることがわかりました。ここで問題が発生しました。サーバのポートがhaproxyで転送されており、サーバの初期ポートでないことがわかったのです。そこで、サーバーのホストを見つけてsshでアクセスし、以下のように/etc/haproxy/haproxy.cfgというファイルを開きました。


元々あったmysqlのポート3306が43306に変更されていることがわかったので、初期の一般プロパティのmysqlポート3306を差し替えました。