mysql5と組み合わせてPHP4環境を構築する必要があり、mysqlに接続しようとするとこの問題に直面しています。クライアントがサーバから要求された認証プロトコルをサポートしていません
ありがとうございます。
mysql5と組み合わせてPHP4環境を構築する必要があり、mysqlに接続しようとするとこの問題に直面しています。クライアントがサーバから要求された認証プロトコルをサポートしていません
ありがとうございます。
solutionは、MySQLのOLD_PASSWORD機能を使用してデータベースユーザーのパスワードを更新します。たとえば、次のようなソリューションですまた
[[email protected] ~]$ mysql -u root -p mysql
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 267
Server version: 5.1.41-3ubuntu12.1 (Ubuntu)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> use mysql;
Database changed
mysql> update user set Password=OLD_PASSWORD('password') WHERE User='username';
Query OK, 0 rows affected (0.02 sec)
Rows matched: 0 Changed: 0 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>
PHP 5.6.5以降では、mysql 4クライアントに接続できるようにするには、これらの値を 'my.ini'の' [mysqld] 'セクションに設定する必要があります: old_passwords = 1 secure-auth = 0 mysql'dbの 'user'テーブルの' plugin'セクションに 'mysql_old_password'を追加する必要があるかもしれません – Wertisdk
これはMySQLの既知の問題です。 C.5.2.4. Client does not support authentication protocol:
MySQL 5.1では、古い(4.1より前の)クライアントで使用されているものと互換性のないパスワードハッシュアルゴリズムに基づく認証プロトコルが使用されます。サーバーを4.0からアップグレードすると、古いクライアントとの接続試行が失敗し、次のメッセージが表示されます。「クライアントがサーバーによって 要求された認証プロトコルをサポートしていないため、MySQLクライアントのアップグレードを検討する」
この問題を解決するには、次のいずれかの方法を使用する必要があります。
1.すべてのクライアントプログラムを4.1.1以降のクライアントライブラリを使用するようにアップグレードします。
2. 4.1以前のクライアントプログラムを使用してサーバーに接続する場合は、4.1以前のバージョンのパスワードを使用しているアカウントを使用します。
3. 4.1より前のクライアントプログラムを使用する必要があるユーザーごとに、4.1以前のスタイルにパスワードをリセットします。
4.古いパスワードハッシュアルゴリズムを使用するようサーバーに指示します。
、しかし、私は直接見それを解決するための手順(より具体的な詳細については同じ答えです)、私はここでそれをここで与えました、とにかくTHX! – palmic
参照https://dev.mysql.com/doc/refman/5.5/en/old-client.html?acf=1#add-comment – rogerdpack