Невозможно соединить mysql с гемом Sequel

Когда я пытаюсь подключиться к MySQL из Sequel. Я получаю эти ошибки:

require 'rubygems'
        require 'sequel'
        DB = Sequel.connect(:adapter => 'mysql', :user => 'root', :host => 'localhost', :database => 'scanty',:password=>'xx')
        DB.tables
    Sequel::DatabaseConnectionError: NameError uninitialized constant Mysql::CLIENT_MULTI_RESULTS
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/adapters/mysql.rb:98:in `connect'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/database.rb:92:in `initialize'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/connection_pool.rb:166:in `call'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/connection_pool.rb:166:in `make_new'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/connection_pool.rb:153:in `available'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/connection_pool.rb:144:in `acquire'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/connection_pool.rb:143:in `synchronize'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/connection_pool.rb:143:in `acquire'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/connection_pool.rb:105:in `hold'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/database.rb:471:in `synchronize'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/adapters/mysql.rb:128:in `execute'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/dataset.rb:314:in `execute'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/adapters/mysql.rb:342:in `execute'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/adapters/mysql.rb:298:in `fetch_rows'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/dataset.rb:185:in `each'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/dataset/convenience.rb:156:in `map'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/dataset/convenience.rb:156:in `map'
        from /opt/local/lib/ruby/gems/1.8/gems/sequel-3.2.0/lib/sequel/adapters/shared/mysql.rb:60:in `tables'
        from (irb):6irb(main):007:0> Sequel::DatabaseConnectionError: NameErro
 Subba Rao17 июл. 2009 г., 19:34
я добавил хост, но он по-прежнему выдает ту же ошибку
 Artem Russakovskii17 июл. 2009 г., 19:30
Кажется, что ваша ошибка усечена? Кроме того, где находится хост в вашем вызове функции?

Ответы на вопрос(2)

Решение Вопроса

Вам необходимо установить собственный драйвер MySQL, чистый ruby не совместим с Sequel.

В зависимости от вашей установки Ruby, просто делаюgem install mysql Может быть достаточно. Однако, если чистый файл Ruby mysql.rb уже находится в вашем пути загрузки Ruby, вам нужно либо удалить его из пути загрузки, либо использоватьgem('mysql') перед звонкомSequel.connect.

Вы скучаете по:host=>'localhost' или кем бы вы ни были.

Кроме того, и это только из соображений производительности, вы должны попытаться включить:compress, Это может сэкономить тонну пропускной способности.

http://sequel.rubyforge.org/rdoc/files/doc/opening_databases_rdoc.html

EditОК, если это не хост, возможно, это конфликт? Увидетьhttp://groups.google.com/group/sequel-talk/browse_thread/thread/ee39640a92351f1?pli=1, Такжеhttp://www.mail-archive.com/[email protected]/msg02275.html

 Subba Rao17 июл. 2009 г., 20:29
спасибо, у меня на машине установлены две версии mysql gem.
 17 июл. 2009 г., 21:58
Вам удалось решить проблему тогда?

Ваш ответ на вопрос