Alexej Kubarev
New member
Hi guys!
As you already know, i hope, MySQL 4.1 is now cetificated a s a stable product release and may be used in a production enviroment.
This might be a good thing for most of us as 4.1 has several features that might be helpfull.
However there are several issues with PHP4 and MySQL 4.1
After installing and configuring the server you might get the following error message
This is due to PHP4 using an old version of mysql library... MySQL 4.1 has a completely different authentication method, then 4.0
This might seem impossible to some of you to fix. But there IS a solution
And id like to share it with you, in case you still dont know about it.
The easiest way would be using mysql administrator. There you will have to go to server settings and set Use Old Password to checked.
Then you will have to re-assign all the passwords so that they will be saved the way you want to.
The harder way is through the query:
Alternatively, you can use this:
Finaly the third way:
Start mysqld with the --old-passwords option.
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:
For each account record displayed by the query, use the Host and User values and assign a password using the OLD_PASSWORD() function and either SET PASSWORD or UPDATE, as described earlier.
I hope this will help those of you that are in need
As you already know, i hope, MySQL 4.1 is now cetificated a s a stable product release and may be used in a production enviroment.
This might be a good thing for most of us as 4.1 has several features that might be helpfull.
However there are several issues with PHP4 and MySQL 4.1
After installing and configuring the server you might get the following error message
#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
This is due to PHP4 using an old version of mysql library... MySQL 4.1 has a completely different authentication method, then 4.0
This might seem impossible to some of you to fix. But there IS a solution
And id like to share it with you, in case you still dont know about it.
The easiest way would be using mysql administrator. There you will have to go to server settings and set Use Old Password to checked.
Then you will have to re-assign all the passwords so that they will be saved the way you want to.
The harder way is through the query:
mysql> SET PASSWORD FOR
-> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');
Alternatively, you can use this:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;
Finaly the third way:
Start mysqld with the --old-passwords option.
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 the Host and User values and assign a password using the OLD_PASSWORD() function and either SET PASSWORD or UPDATE, as described earlier.
I hope this will help those of you that are in need