Sierraで rails c すると「uninitialized constant Mysql2::Client::SECURE_CONNECTION (NameError)」

新しいPC(Sierra)で既存Railsアプリケーションを構築中に rails c したら以下のようなエラーがでる

uninitialized constant Mysql2::Client::SECURE_CONNECTION (NameError)

mysqlがインストールされていないと思って brew install mysql して直るだろうと思ってインストールしてみて再度 rails c すると以下のようなエラーがでる

Library not loaded: /usr/local/opt/mysql/lib/libmysqlclient.20.dylib (LoadError)

つらい パニック

しかしggって調べてたらピンときて mysql5.6 が必要なのに mysql5.7 がインストールされてるのが原因っぽい

ので一旦、インストール済みの mysql5.7 をアンインストール brew uninstall mysql してから、mysql5.6 をインストールする brew install homebrew/versions/mysql56

そしてすでに bundle install しているファイルを消す必要がある

私の場合は rm -rf ./vendor/bundle で消える

削除が完了したら再度 bundle install --path vendor/bundle

おういえ。