「アクセスが拒否されました: ユーザー @ 'localhost' のデータベースへの誤ったアクセスを解決します」`
MySQL ユーザーはイライラするエラー メッセージに遭遇することがよくあります。ユーザー ''@'localhost' からデータベース '' へのアクセスが拒否されました。」この問題は、ユーザー権限または構成設定が正しくないことが原因で発生します。これを解決するには、次の手順に従います。
-
ユーザー資格情報の確認:
- MySQL ユーザーが $dbuser 変数で指定されていることを確認します。存在します。
- $dbname で指定されたデータベースに対する適切なアクセス権限をユーザーが持っていることを確認してください。
-
ユーザー権限の付与:
- 次の SQL コマンドを使用して、必要な権限を付与します。
GRANT ALL PRIVILEGES ON database_name.* TO user_name@host_name;
- 「database_name」を実際のデータベース名に置き換え、「
- ローカル マシンからのアクセスを許可するには、"host_name" を "localhost" として指定します。
-
MySQL バインド アドレスの構成:
- MySQL 構成ファイル (通常は my.cnf という名前) で「bind-address」設定を確認し、すべてのホストからの接続を受け入れるように変更します:
binding-address = 0.0.0.0
- 変更を有効にするために MySQL サービスを再起動します。
-
更新コード:
- PHP コードを変更して、mysql_connect() 関数にユーザー名とパスワードの両方を含めます:
mysql_connect($dbhost, $dbuser, $dbpass) または die(mysql_error());
-
リモート アクセスを有効にする (必要な場合):
- リモート ホストからのアクセスを許可するには、MySQL サーバーがポートでリッスンしていることを確認します。 3306 であり、そのポートでの接続を許可するようにファイアウォール ルールが設定されています。
以上がユーザー \'\'@\'localhost\' がデータベースに対して「アクセスが拒否されました」と表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。