@shakedko
IF AN EXPERT SAYS IT CAN'T BE DONE GET ANOTHER EXPERT.
- DAVID BEN-GURION

PHP & MySQL Error: "...MySQL 4.1+ using the old insecure authentication...

Hey,

I didn't write here for long time, though this post is very short, I will try to add some nice things in the near future. So like I always say - lets get to work: 

Error:

mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD('your_existing_password'). This will store a new, and more secure, hash value in mysql.user. If this user is used in other scripts executed by PHP 5.2 or earlier you might need to remove the old-passwords flag from your my.cnf file

Suggested Solution:

Connect to your MySQL server:

mysql -h HOST -u USER -p (for password)

Update MySQL user password to new MySQL password:  *mysql>

UPDATE mysql.user SET Password = PASSWORD("password") WHERE User = "username" limit 1;
Query OK, 1 row affected (0.00 sec)*
*Rows matched: 1 Changed: 1 Warnings: 0*

Check password length:

 mysql> SELECT LENGTH(Password) FROM mysql.user WHERE User =
  "someuser";
 *+------------------+
 | LENGTH(Password) |*
 *+------------------+
 |               41 |*
 *+------------------+
 1 row in set (0.00 sec)*

  Flush MySQL privileges: 

 mysql>FLUSH PRIVILEGES;
 Query OK, 0 rows affected (0.00 sec)

That's worked for me, if you have the same error and my solution didn't help you may try Stackoverflow's suggestions.

-- Shak