2

問題

(Windows XP) LAN 上の他の IP からのユーザーが、ローカルの MySQL サーバーに突然接続できなくなりました。

バックグラウンド

ネットワーク上の他のコンピューターが root アカウントにアクセスできるように、ローカルの Windows コンピューターに MySQL をセットアップしました。各 IP をルートのホストとして追加しました。数週間前までは問題なく動作し、プログラムを使ってさまざまな MySQL 管理ツールを使用してサーバーに接続できました。しかし現在、MySQL サーバーはこれらの IP からの接続を単純に拒否しており、その理由がわかりません。

私が行ったネットワークの変更は次のとおりです。2 台 (3 台中) のコンピューターのネットワーク カードを変更し、MySQL の設定をいじりました。どれもこの問題を引き起こしたはずではありません。関連するすべてのホストで新しいユーザーを追加しようとしましたが、同じタイプのエラーが発生します。

MySQL エラー番号 1045 ユーザー 'root'@'shop' のアクセスが拒否されました (パスワードを使用: はい)

奇妙な点は、IP の代わりにコンピュータ名「shop」が使用されていることです。どうしてか分かりません。

4

4 に答える 4

2

どういうわけか、IPは現在解決されているようで、ホスト名が使用されています。root @ shopへのアクセスを許可しましたか?特権をフラッシュしましたか?

于 2009-03-14T11:19:05.063 に答える
1

最初に頭に浮かぶのはWindowsファイアウォールです。これは、ホストコンピューターでNICを交換した場合に再度有効になっている可能性があります。

次の提案は、ホストコンピュータでWiresharkのようなスニファを使用して、パケットごとに正確に何が起こるかを確認することです。フィルタを使用して出力を減らすことができます-それらは非常にシンプルで使いやすいです。このツールにより、数え切れないほどのデバッグ時間を節約できました。

-編集-

もう1つの考えられる原因は、サーバーが何らかの理由でIPをホスト名に解決することを決定したことです。この場合、IPアドレスが機能しなくなる可能性があります。許可リストにホスト名を追加する必要があります。ただし、MySQLでこのように機能するかどうかはわかりません。

于 2009-03-14T10:33:17.263 に答える
0

MySQLでTCP接続をオフにできましたか?

また、MySQLポートはファイアウォールで開いていますか?

于 2009-03-14T10:30:07.583 に答える
0

IP (DHCP?) を変更した場合、mysqld を LAN IP にバインドしている場合は、必ず my.cnf で修正してください。

[mysqld]
...
bind-address=192.168.x.y
于 2009-03-14T11:29:31.373 に答える