The "old" MySQL client in PHP4 doesn't support the new authentication protocol used by MySQL 4.1 and newer.A possible solution is the following:
In your MySQL configuration file, locate the [mysqld] section and add "old_passwords" on a new line. Restart your MySQL server. Now open a MySQL console and execute the following to reset the password to the "old" method:
USE mysql;
UPDATE user SET Password = PASSWORD('<your password>') WHERE User = '<your username>';
You have to do the update query for every user that you want to use with an old client (unless that has changed in a recent version). Don't forget to change the appropriate things in the above query ;)
There could be other and more elegant ways to do this, but this is you had to do when 4.1 was still alpha.
This is not an eZ publish problem, but a PHP4-MySQL problem. The MySQL client that ships with PHP4 is an older client and can't use the new authentication protocol introduced in MySQL 4.1.x. The steps I outlined above make MySQL use the old authentication protocol again.
USE mysql;
UPDATE user SET Password = PASSWORD('<your password>') WHERE User = '<your username>';
How do I change this on OS X? I guess this is about changing a text file inside the mysql folder which is inside the USR folder. Then what is the name of the file? and finaly how to edit this file on OS X. On in OS X the mysql folder is invisible by the file browsing system. Thanks for helping :)
I had similar problems with other systems too and now I simply use blank password & localhost access for MySQL's users. I suppose in PHP5 MySQL client is updated.
I got the same error message on my os x box, but
ez 3.5.0 is now running with a password. See
http://www.ez.no/community/forum/install_configuration/newest_ezpublish_on_mac_os_x_10_3_6 Thanks to Hans M for pointing me the right direction.
The problem is not os specific. It's all about the mysql library used during the php build process.
"This is not an eZ publish problem, but a PHP4-MySQL problem. The MySQL client that ships with PHP4 is an older client and can't use the new authentication protocol introduced in MySQL 4.1.x. The steps I outlined above make MySQL use the old authentication protocol again."
Have to disagree Hans. Ok, the root of the problem is not eZ's, but given that it's relatively well known, to bundle MySQL 4.1.x with PHP4 as part of eZPublish's package without including the relevant amendments that you described is, especially considering it's supposed to be a simple all-in-one package, rather daft :)