пятница, 8 ноября 2013 г.

MySQL проблемы миграции

Надо было перенести сайт с сервера разработки на хостинг.
Всё вроде бы отлажено и работает. а на хостинге вдруг отказывается и сыпет сообщениями подобного содержания
Warning: mysql_connect() [function.mysql-connect]: Premature end of data (mysqlnd_wireprotocol.c:554) in ...
Warning: mysql_connect() [function.mysql-connect]: OK packet 1 bytes shorter than expected in ..
Немного побившись головой об клавиатуру, полез разбираться в чём же дело.
А дело оказалось в авторизации, точней в разнице в версия (и настройках) MySQL. Хэши паролей были разной длины. из-за разных механизмов хеширования (О_о).
В итоге всё решается простым запросом, который приведёт хэш к нужному виду
SET PASSWORD = PASSWORD('пароль')