MySQL: Client does not support authentication protocol
MySQL 4.1 and later uses a new authentication protocol which is not compatible with the libraries that php 4 uses.
There are two options:
- The way around this is to reset the password for the needed accounts to use pre-4.1 style.
mysql> SET PASSWORD FOR -> 'Alternatively, usesome_user'@'some_host' = OLD_PASSWORD('newpwd');UPDATEandFLUSH PRIVILEGES:mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('Substitute the password you want to use for "newpwd') -> WHERE Host = 'some_host' AND User = 'some_user'; mysql> FLUSH PRIVILEGES;newpwd" in the preceding examples. MySQL cannot tell you what the original password was, so you'll need to pick a new one.
- Tell the server to use the older password hashing algorithm:
Start mysqld with the--old-passwordsoption. Assign an old-format password to each account that has had its password updated to the longer 4.1 format. You can identify these accounts with the following query:mysql> SELECT Host, User, Password FROM mysql.user -> WHERE LENGTH(Password) > 16;
For each account record displayed by the query, use theHostandUservalues and assign a password using theOLD_PASSWORD()function and eitherSET PASSWORDorUPDATE, as described earlier.
For more info, please see this article on the mysql site:
http://dev.mysql.com/doc/mysql/en/old-client.html
