After having MySQL 5.6.17 published, some users complained about a warning thrown by their PHP applications :
PHP Warning: mysql_connect(): Headers and client library minor version mismatch. Headers:50535 Library:50617
In fact, this could happen with any application linked to libmysqlclient18 in a certain version (php5-mysql from Dotdeb is linked to the 5.5.35 version from the stock Debian distribution) when connecting to a MySQL server in another version (5.6.17 in our case). The warning is thrown by libmysqlclient18 itself. And this is just a warning, there is no reason why any bad behavior would happen in that case.
Of course, I could build php5-mysql against the latest libmysqlclient18 (5.6.17), but it would lead to very bad issues, such as duplicate symbols or segfaults when PHP is loaded with other MySQL-linked modules from the stock Debian distribution (those are linked to libmysqlclient18 5.5.35). For example : mod_php5 + Apache + mod_auth_mysql would crash.
If this this warning really annoys you, feel free to install php5-mysqlnd instead of php5-mysql :
- it’s a drop-in replacement
- it’s not linked against any libmysqlclient library
- it won’t throw any irrelevant warning about version mismatch
- it has a lot of benefits. See http://www.php.net/mysqlnd for more info
I hope this helps.