Mysql 接続エラー: HOST '' MySQL サーバーに接続できません
mysql コマンドを使用して MySQL に接続しようとしたときサーバーに接続しようとすると、次のエラー メッセージが表示されます。
ERROR 1130 (HY000): Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server
このエラーは、サーバーが特定のホストのみの接続を許可するように構成されており、使用しているホストが許可リストに含まれていないことを示します。 。
root ユーザー権限を確認します
あなたの場合、my.cnf でバインドアドレスを 0.0.0.0 に設定しています。これは、サーバーがすべてのホストからの接続を受け入れる必要があることを意味します。ただし、まだ接続できません。これは、root ユーザーがローカルホストからの接続のみを許可されていることが原因である可能性があります。
これを確認するには、次のクエリを実行します。
SELECT host FROM mysql.user WHERE User = 'root';
結果に接続しようとしているホスト名または IP アドレスが含まれていない場合は、そのホストからの root ユーザー 接続許可。
接続権限を付与する
特定のホストから接続する権限を root ユーザーに付与するには、次のコマンドを使用します。
CREATE USER 'root'@'host_ip' IDENTIFIED BY 'some_pass'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'host_ip';
ここでhost_ip は、接続を許可するホストの IP アドレスです。
すべてのホストに接続権限を付与したい場合は、ワイルドカード % を使用できます:
CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
最後に、権限を更新してすぐに有効にします:
FLUSH PRIVILEGES;
これで、mysql コマンドを使用して、指定したリモート ホストから MySQL サーバーに接続できるようになります。
以上が「bind-address = 0.0.0.0」にもかかわらず、リモート ホストから MySQL サーバーに接続できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。