ホームページ >データベース >mysql チュートリアル >MySQL/MariaDB ルート ユーザーに権限がなく、「アクセスが拒否されました」と表示されるのはなぜですか?

MySQL/MariaDB ルート ユーザーに権限がなく、「アクセスが拒否されました」と表示されるのはなぜですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-10 01:36:10351ブラウズ

Why Does My MySQL/MariaDB Root User Lack Privileges, Showing

「ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワードを使用: YES) - 特権がありません?」

このエラーが発生するMySQL の root ユーザーに、実行に必要な権限がない場合。

root ユーザーの Null スキーマ権限

通常、root ユーザーは完全な権限を持っています。ただし、この場合、ルートのスキーマ権限が null であり、権限がまったくないことが報告されています。

さまざまなプラットフォームへの影響

この問題は、ユーザーの異なるプラットフォーム間で MySQL サーバーを操作できる機能。 「[email protected]」としてログインしている場合でも、ユーザーは障害に遭遇しています。

トラブルシューティングの試行

ユーザーは、「フラッシュ ホスト」などのさまざまな解決策を試みました。と「FLUSH PRIVILEGES」ですが、これらは証明されています

MySQL 5.7 の解決策

MySQL 5.7 以降でこの問題が発生している場合、解決策はパスワードベースの認証を有効にすることです:

  1. 以下のSQLを実行query:

    SELECT user, authentication_string, plugin, host FROM mysql.user;
  2. root ユーザーの「authentication_string」は空であってはいけないことに注意してください。有効な場合は、現在の root パスワードで更新します:

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<Current-Root-Password>';
  3. 権限をフラッシュします:

    FLUSH PRIVILEGES;

MariaDB の場合

MariaDB の場合、次のクエリを使用して設定しますroot ユーザーのパスワード:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('manager');

詳細については、https://mariadb.com/kb/en/set-password/ を参照してください。

注:

認証プラグインを無効にするか、root ユーザーのパスワードを変更した後、セキュリティを強化するための「mysql_secure_installation」コマンド。

以上がMySQL/MariaDB ルート ユーザーに権限がなく、「アクセスが拒否されました」と表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。