ホームページ >データベース >mysql チュートリアル >PHP の「古い認証を使用して MySQL 4.1 に接続できません」エラーを修正する方法

PHP の「古い認証を使用して MySQL 4.1 に接続できません」エラーを修正する方法

Susan Sarandon
Susan Sarandonオリジナル
2024-12-04 01:32:11325ブラウズ

How to Fix the

MySQL 4.1 への接続 : 「古い認証を使用して MySQL 4.1 に接続できません」エラー

MySQL への接続を確立しようとしたときのトラブルシューティングPHP 5.3 で MySQLi を使用してデータベースを接続すると、「接続エラー」というエラー メッセージが表示される場合があります。 (2000) mysqlnd は古い認証を使用して MySQL 4.1 に接続できません。」このエラーは通常、新しい MySQL バージョンと互換性のなくなった古いパスワード スキーマを使用するように MySQL サーバーが構成されている場合に発生します。

この問題を解決するには、いくつかの手順を実行できます。

  1. MySQL を検証する構成:

    • SQL クエリ SHOW VARIABLES LIKE 'old_passwords' を実行して、サーバーが古いパスワード スキーマを使用しているかどうかを確認します。結果が old_passwords,Off の場合は、サーバーが古いスキーマを使用していないことを示しており、エラーは特定のユーザー アカウントに関連している可能性があります。
  2. チェックユーザー パスワード:

    • クエリ SELECT *User*' を使用します。 Host', Length(Password) FROM mysql.user を使用して、mysql.user` テーブルを調べます。
    • 古いパスワードを使用するアカウントのパスワードの長さは 16 になりますが、新しいパスワードを使用するアカウントのパスワードの長さは 41 になります。
  3. ユーザーをリセットパスワード:

    • 古いパスワードが検出された場合は、次のクエリを使用して影響を受けるアカウントのパスワードをリセットします:

      • SET PASSWORD FOR 'User' @'Host'=PASSWORD('yourpassword');
      • ユーザーと前のクエリから取得した値を持つホスト。
  4. フラッシュ権限:

    • 実行クエリ FLUSH 権限。ユーザー パスワードへの変更が有効であることを確認します。
  5. パスワードの長さを再確認します:

    • 同じクエリを実行します (もう一度 SELECT *User*', Host', Length(Password) FROM mysql.user`) を実行して、パスワードの長さを確認します。影響を受けるアカウントは現在 41 です。
  6. MySQLi に接続します:

    ユーザー パスワードが更新されたら新しいスキーマを使用し、次を使用してデータベースへの接続を試みます。 MySQLi.
  7. これらの手順に従うことで、「古い認証を使用して MySQL 4.1 に接続できません」エラーをトラブルシューティングし、MySQL データベースへの正常な接続を確立できます。新旧のパスワード ハッシュ方法、パスワード管理、サーバー構成の詳細については、MySQL のドキュメントを参照してください。

以上がPHP の「古い認証を使用して MySQL 4.1 に接続できません」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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