Zend Framework: mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication

Setting a new project that uses Zend Framework in Zend Studio I ran into an issue trying to launch the app. I got an this error;


Fatal error: Uncaught exception 'Zend_Db_Adapter_Exception' with message 'SQLSTATE[HY000] [2000] 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' in C:\wamp\frameworks\ZendFramework-1.7.8\library\Zend\Db\Adapter\Pdo\Abstract.php on line<em>143</em>

It turns out, the version of Zend I am running is 1.7, which is coded against an earlier version of PHP and when i installed WAMP i installed the latest version which came with PHP 5.3 which uses a new “mysqlnd” driver, thus the error. I guess at this point the choice is either to install an older version of WAMP or to reset the password for the database user as suggested in the bug description.

Advertisements

2 thoughts on “Zend Framework: mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s