ホームページ  >  記事  >  データベース  >  特権を持つ新しいユーザーを作成したにもかかわらず、MySQL に接続すると「アクセスが拒否されました」というメッセージが表示されるのはなぜですか?

特権を持つ新しいユーザーを作成したにもかかわらず、MySQL に接続すると「アクセスが拒否されました」というメッセージが表示されるのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-31 08:04:02847ブラウズ

Why Am I Getting

MySQL - ユーザーのアクセスが拒否されました

必要な権限を持つ新しいユーザーを作成したにもかかわらず、次の場合に「アクセスが拒否されました」エラーが発生する場合があります。データベースに接続しようとしています。この問題は、不正な Grant ステートメントが原因で発生します。

エラー メッセージは、ユーザー 'servname_shb'@'localhost' がデータベースにアクセスできないことを示しています。これを修正するには、次の許可ステートメントを使用します。

<code class="sql">GRANT ALL ON *.* TO 'servname_shb'@'localhost';</code>

これにより、指定されたユーザーにローカル ホスト上のすべてのデータベースとテーブルへのフル アクセスが許可されます。あるいは、grant ステートメントで特定のデータベースまたはテーブルを指定して、必要なコンポーネントのみへのアクセスを制限することもできます。

たとえば、「servname_shbusers」データベースのみへのアクセスを許可するには、次のようにします。

<code class="sql">GRANT ALL ON servname_shbusers TO 'servname_shb'@'localhost';</code>

データベースの安全性をさらに高めるために、ユーザーのアクセスを必要な権限のみに制限することをお勧めします。特定の権限で GRANT ステートメントを使用すると、データの作成、変更、削除などの特定のアクションを実行するユーザーの能力を制限できます。

以上が特権を持つ新しいユーザーを作成したにもかかわらず、MySQL に接続すると「アクセスが拒否されました」というメッセージが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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