Установка адаптера MySQL2 для Ruby - PullRequest
0 голосов
/ 03 мая 2011

Я получаю некоторые ошибки при подключении к MySQL, и его исправление привело к обновлению гема mysql2.

Я выполнил эту команду для установки mysql2:

ruby install mysql2

и теперь «список драгоценных камней» показывает этот камень: mysql2 (0.3.2)

Но я думаю, что это не является частью моей прикладной среды, поскольку сервер выдает эту ошибку:

Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (no such file to load -- active_record/connection_adapters/mysql2_adapter)

У меня есть RVM, и я использовал упаковщик для создания набора гемов для этого приложения. Как добавить mysql2 в набор гемов этого приложения?

Это мой гемфайл:

source 'http://rubygems.org'

gem 'rails', '3.0.7'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'sqlite3'

gem 'mysql2' , '0.3.2' 

А это моя версия адаптера MySQL:

$bundle show mysql2
/home/agenadinik/workspace/udfr/mysql2/ruby/1.9.1/gems/mysql2-0.3.2

Также

$ rvm gemdir /home/agenadinik/.rvm/rubies/ruby-1.9.2-p180/bin/gem:4: предупреждение: небезопасный доступный для записи мир dir / home / agenadinik в PATH, режим 040777 /home/agenadinik/.rvm/gems/ruby-1.9.2-p180

Ответы [ 3 ]

7 голосов
/ 03 мая 2011

Обратите внимание, что вы не можете использовать mysql2 версии 0.3.x с Rails версии ниже 3.1.x. Я предполагаю, что вы используете Rails 3.0.x или ниже (и поэтому вам нужно использовать mysql2 версии 0.2.x):

Вот пример того, как настроить gemset и Gemfile для использования mysql2:

~/code/myapp $ rvm gemset create myapp
~/code/myapp $ rvm use @myapp
<<<<<Edit the Gemfile and add the line gem "mysql2","0.2.7" then save and exit editor.>>>>>
~/code/myapp $ bundle install
~/code/myapp $ bundle show mysql2
<<<<<Output should be similar to: /home/<your-name>/.rvm/gems/ruby-<some-version>@myapp/gems/mysql2-0.2.7>>>>>
3 голосов
/ 03 мая 2011

Если вы используете Bundler, вы должны добавить

gem "mysql2"

на ваш Gemfile, затем запустите bundle install

0 голосов
/ 16 марта 2012

На Rails> = 3.2.0 вы увидите это, если используете более старую версию bundler. Обновите упаковщик до> = 1.1.1:

gem update bundler

Как только вы это сделаете, обновите ваши драгоценные камни:

bundle install
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...