Ten problem jest słyszalny, ale zamiast odkopywać Internet i pamięć, właśnie spróbowałem:Zainstaluj najnowszą wersję mysql2 z serii 0.3 (0.3.20 w momencie pisania tego tekstu) i spakuj go do aplikacji.
Problem wydaje się, że najnowszy mysql2 gem w wersji 0.4 nie jest kompatybilny z Rails 3.
Wersje klejnotów nie mogą zostać zmienione i chcesz mieć te same wersje co produkcyjne. Aby to zrobić, możesz po prostu skopiować plik Gemfile.lock plik z serwera produkcyjnego, umieść go w lokalnym folderze obok Gemfile i uruchom bundle install polecenie.
Zwróć uwagę, że jeśli Twój Gemfile określa:
gem 'mysql2', '> 0.3'
Następnie Bundler zainstaluje najnowszą wersję, która pasuje do 0.n gdzie n >= 3 . W chwili pisania tego tekstu Bundler otrzymuje 0.4 wersji, która nie jest kompatybilna z twoją wersją Railsów (Bundler nie może wywnioskować tego z twojego Gemfile ). Rozwiązaniem dla Ciebie jest zmodyfikowanie kopii pliku Gemfile (i zaangażowanie go w swój projekt może być dobrym pomysłem):
gem 'mysql2', '> 0.3.13' # put here the actual version used in production
W ten sposób Bundler zainstaluje wersję zgodną z 0.3.n , z n >= 13 .