mysql拒否権限のGRANT USAGEを削除する方法

mysql拒否権限のGRANT USAGEを削除する方法

Ubuntuインスタンスにメールサーバーがあります。 FROXLORを管理するWebサーバーがあり、メールアカウントにログインしようとするとアクセス拒否エラーが発生します。これについて記録してください。

Aug 16 03:14:33 email dovecot: auth-worker(15140): Error: mysql(127.0.0.1): Connect failed to database (froxlor): Access denied for user 'froxlor'@'localhost' (using password: YES) - waiting for 25 seconds before retry
Aug 16 03:14:58 email dovecot: auth-worker(15140): Error: mysql(127.0.0.1): Connect failed to database (froxlor): Access denied for user 'froxlor'@'localhost' (using password: YES) - waiting for 125 seconds before retry

mysqlを確認してみると次のようになる。

mysql> show grants for 'froxlor'@'localhost';
+----------------------------------------------------------------------------------------------------------------+
| Grants for froxlor@localhost                                                                                   |
+----------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'froxlor'@'localhost' IDENTIFIED BY PASSWORD '*AAAAABBBBBCCCCCDDDDDEEEEE111112222333344444' |
| GRANT ALL PRIVILEGES ON `froxlor`.* TO 'froxlor'@'localhost' WITH GRANT OPTION                                 |
+----------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)

Google検索では、行は許可がGRANT USAGE on*.*「なし」権限に関連していると言います。

FLUSH PRIVILEGES;権限の取り消し、ユーザーの削除、GRANT OPTION を使用してすべての許可、常に使用し、時には使用するすべての許可を試しましたがservice mysql restart.... この問題を解決する方法はありません。誰でも私を助けることができますか?事前にありがとう

ベストアンサー1

この場合、あなたのmysqlサーバーがリストにないようです。127.0.0.1

次の出力を確認してください。

sudo netstat -tunlep

mysqlサーバーはポート3306でリッスンします。サーバーが聞いているかどうかを出力でnetstat -tunlep確認してください。サーバーも受信を許可しない場合。mysql127.0.0.1::mysql127.0.0.1

また、以下のようにシステムのホスト名を正しく更新してください。

sudo vim /etc/hosts
127.0.0.1 localhost localhost.localdomain (other_entries,if any)
:: localhost localhost.localdomain (other_entries,if any)

それでも問題が解決しない場合は、ソフトウェアの設定ファイルを使用してパスワードを検索してください。 (設定がどこにあるかFROXLORわかりません。ソフトウェアのマニュアルを確認してください。)FROXLOR

mysql次のように、コマンドライン設定で検出されたパスワードを使用してユーザーとしてサーバーにログインします。froxlorFROXLOR

mysql -u froxlor -p retrived_password

これがうまくいけば、FROXLOR接続も必要です。

mysql各ステップが終わったら、サーバーを再起動することを忘れないでください。

おすすめ記事