Ubuntu 上の MySQL でのリモート接続の問題
MySQL へのリモート接続を確立できないのは、構成ミスの組み合わせが原因である可能性があります。問題を解決するための詳細な説明は次のとおりです。
my.cnf 構成
MySQL バージョン 5.6 以前の場合は、「/etc/mysql/my.cnf」を確認してください。 「bind-address」ディレクティブが含まれており、ループバック アドレス (「127.0.0.1」) をサーバーの IP に置き換えます。アドレス:
# For MySQL version 5.6 and below bind-address = your_server_ip
MySQL バージョン 5.7 以降の場合、「/etc/mysql/mysql.conf.d/mysqld.cnf」を変更してバインド アドレスを指定します:
# For MySQL version 5.7 and above bind-address = your_server_ip
あるいは、「bind-address = 0.0.0.0」を設定して、すべての IP をリッスンします。
ユーザー権限
特定のユーザーにリモート アクセスを許可するには、MySQL の "localhost" と "%" の両方にユーザーを作成します。
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass'; CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
に必要な権限を付与します。ユーザー:
GRANT ALL ON *.* TO 'myuser'@'localhost'; GRANT ALL ON *.* TO 'myuser'@'%';
「FLUSH PRIVILEGES;」を実行します。
ネットワーク アクセスの確認
「lsof -i -P | grep :3306」を使用して、MySQL が正しい IP アドレスでリッスンしているかどうかを確認し、ポート番号 (3306)。これにより、サーバーがサーバーの IP アドレスをリッスンしていることを示す出力が返されます。
トラブルシューティング
それでもリモート接続が失敗する場合は、次の点を確認してください:
以上がUbuntu でリモート MySQL サーバーに接続できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。