The database has been planted
Однажды пришлось восстанавливать кучу мускуловских баз из бэкапа. Зная, что в базах данные не менялись (бэкап был очень свежим), восстанавливаю всё. Через 15 минут к программисту подходит диспетчер: «Мы в программу войти не можем». Первая мысль — проблема с MySQL. Захожу на сайт (базы которого я тоже восстановил из бэкапа) — всё работает без нареканий. Несколько других проектов тоже в порядке. Стандартная рекомендация: «Перезагрузитесь».
Ещё через 15 минут пришлось всё-таки запускать phpMyAdmin. С первого взгляда угадывается кодировка UTF-8.
Часть баз имеет в параметрах странный для них charset — cp1251_bin. С ними-то и происходила фигня при резервировании. Другие же базы, вышедшие из-под пера нашего программера, были в cp1251_general_cs, и с ними проблем не было. Когда подошёл узнать, с какой целью программер использовал двоичное представление, ответ меня убил:
— Я вообще не в курсе, в чём разница. А то, что в конце с CS, я иногда пишу просто потому, что мне Counter-Strike нравится.
Видимо, есть у него индусские корни, и бог Ганеша иногда помогает найти правильное решение, но маскирует его под странные ассоциации.