Как использовать mysql2 0.3.16 с Ruby 1.9.3?(неинициализированная константа Mysql2 :: Client :: SECURE_CONNECTION) - PullRequest
0 голосов
/ 14 февраля 2019

Я пытаюсь настроить свою локальную среду разработки так, чтобы она соответствовала среде моей команды.Я не могу обновить Ruby / Rails / mysql2 (на данный момент).

Я знаю, что моя локальная конфигурация MySQL хороша (достаточно?), Потому что я могу создать новый проект Rails и запустить его просто отлично.Я получаю ту же ошибку, если я запускаю rake db:create или rails s или даже запускаю IRB и запускаю require 'mysql2'.

Я чертовски гуглил это.Первоначально я использовал MariaDB как локальную реализацию MySQL, поэтому подумал, что это может быть связано с гемом mysql2.Поэтому я разорвал MariaDB и, наконец, заработал MySQL 5.6 (еще одна версия команды, в которую мы сейчас заблокированы).После успешного обновления до MySQL 5.6, я уверен, что это на 100% не проблема.

Я бы ожидал, если бы у меня был неправильный пароль, чтобы он как-то жаловался на конфигурацию, но он всегда один и тот же.

uninitialized constant Mysql2::Client::SECURE_CONNECTION  

Ruby (RVM): ruby ​​1.9.3p551 (редакция 2014-11-13 48407) [x86_64-linux]
Mysql2: 0.3.16

Существовала и другая версиясвязанные, но ничего такого сильного.Единственная вещь, с которой я столкнулся, которую я на самом деле не пробовал, - это создание камня mysql2 локально.

Я бы ожидал, что require 'mysql2' хотя бы загрузит камень.Ни Rails, ни Rake вообще не будут работать с драгоценным камнем.Это почти как отсутствие какого-то внутреннего файла.

1 Ответ

0 голосов
/ 14 февраля 2019

После обсуждения этой ошибки в официальном геме вы должны обновить версию как

С

gem 'mysql2', '0.3.16'

до

gem 'mysql2', '0.3.17'

, если вы все еще встречали ошибкупосле того, как вы обновите версию до 0.3.17, я думаю, что вы должны обновить до 0.2.24

https://github.com/brianmario/mysql2/issues/603

...