ホームページ  >  記事  >  データベース  >  コンテンツに基づいて、質問形式の記事タイトルのオプションをいくつか示します。 **一般およびエラー メッセージに焦点を当てる:** * **「mysqlnd が次の方法を使用して MySQL 4.1 に接続できない」を修正する方法

コンテンツに基づいて、質問形式の記事タイトルのオプションをいくつか示します。 **一般およびエラー メッセージに焦点を当てる:** * **「mysqlnd が次の方法を使用して MySQL 4.1 に接続できない」を修正する方法

Barbara Streisand
Barbara Streisandオリジナル
2024-10-25 05:28:29468ブラウズ

Here are a few options for an article title, based on your content, formatted as a question:

**General & Focus on Error Message:**

* **How to Fix

安全でない認証による MySQL 接続エラーの修正

データベース接続を確立しようとすると、次のエラーが発生する場合があります:

Database connection failed: mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD('your_existing_password').

この問題は、PHP と MySQL のバージョンが一致しないために発生します。 MySQL はセキュリティ対策を強化し、より安全な認証方法の使用を必要としています。

解決策:

  1. サーバー構成の更新:

    • Web ホスティング サーバー (メディア テンプル) で、ホストと相談して MySQL バージョンを 5.5.16 以降に更新します (ローカル マシンのバージョンと一致します)。
  2. 安全でない認証を無効にする:

    • 「my.cnf」構成ファイルを見つけます (例: 「/etc/my.cnf」)または "/opt/lampp/etc/my.cnf")。
    • 「old_passwords = 1」の行を削除またはコメント アウトします。
  3. MySQL の再起動:

    • 変更を適用するには、MySQL サービスを再起動します。
  4. パスワードのリセット:

    • 管理ツール (MySQL Workbench や phpMyAdmin など) を使用して MySQL データベースに接続します。
    • クエリ「SELECT user, Length(Password) FROM mysql.user;」を実行します。安全でないパスワード (16 文字のハッシュ) を持つユーザーを識別します。
    • クエリ「UPDATE mysql.user SET Password = PASSWORD('password') WHERE user = 'username」を使用して、安全でない認証を持つ各ユーザーのパスワードを更新します。 ';".
  5. フラッシュ権限:

    • クエリ「FLUSH PRIVILEGES;」を実行します。

追加の考慮事項:

  • PHP 5.2 以前を使用している場合サーバー側では、古い認証方法を許可するために「my.cnf」ファイルから「old-passwords」フラグを削除する必要がある場合があります。
  • エラーで説明されているように、MySQL root ユーザーのパスワードが安全であることを確認してください。メッセージ。

以上がコンテンツに基づいて、質問形式の記事タイトルのオプションをいくつか示します。 **一般およびエラー メッセージに焦点を当てる:** * **「mysqlnd が次の方法を使用して MySQL 4.1 に接続できない」を修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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