Forums / Install & configuration / Kernel 50 on Solaris mysql 4.1.7 ez 3.4.3

Kernel 50 on Solaris mysql 4.1.7 ez 3.4.3

Author Message

Michele Brugo

Thursday 04 November 2004 3:43:49 am

Hi people, currently i've installed ez 3.4.3 on windows with mysql 4.0.21 and all run.
No i wanna have db on unix machine.
I've installed mysql 4.1.7, create db, run succesfully kernel_schema, cleandata.
All configuration is made by hand.
so when i try to connect i receive:

kernel (50)
No database connection could be made, the system might not behave properly

Error: eZMySQLDB Nov 04 2004 11:35:37
Connection error: Couldn't connect to database. Please try again later or inform the system administrator.
Client does not support authentication protocol requested by server; consider upgrading MySQL client

TIA

Mike

Hans Melis

Thursday 04 November 2004 4:03:15 am

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.

Hans
http://blog.hansmelis.be

Erland Flaten

Wednesday 10 November 2004 2:26:31 pm

yeah.. feeling a little skeptical doing this kind of changes. I hope ez will fixe this so I can connect properly to MySQL

Writer and webproducer in Lillehammer, Norway

Hans Melis

Thursday 11 November 2004 12:29:26 am

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.

Hans
http://blog.hansmelis.be

Erland Flaten

Tuesday 16 November 2004 1:17:47 pm

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 :)

installation of ez is not easy...

Writer and webproducer in Lillehammer, Norway

Hans Melis

Tuesday 16 November 2004 1:30:01 pm

Those are SQL commands. You have to execute them in a MySQL console. If the MySQL installation is in your path, you can open it using

mysql -u root -p

Hans
http://blog.hansmelis.be

Erland Flaten

Wednesday 17 November 2004 8:46:54 am

mysql> USE mysql;
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'
mysql> 

First command does not work...

Writer and webproducer in Lillehammer, Norway

Andrei Barhatov

Monday 13 December 2004 2:20:24 am

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.

vidar bakke

Monday 10 January 2005 2:11:00 pm

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.

Graham Butler

Wednesday 12 January 2005 8:41:22 am

"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 :)

Siniša Šehović

Friday 25 February 2005 5:39:20 am

Hi all,

Problem with new password function in MySQL 4.1 can be solved by
generate old type password.

In MySQL enter: set password for <user> = OLD_PASSWORD(<password>);

This will generate old type password.

Best regards,
Sinisa

---
If at first you don't succeed, look in the trash for the instructions.