ruby / mysql mysql_adapter.rb: 505: в 'real_connect': невозможно преобразовать строку в целое число - PullRequest
2 голосов
/ 11 ноября 2008

Я пришел сегодня утром, запустил свое приложение так же, как обычно, и начал получать эту ошибку. С тех пор я шел по всем дорогам, которые только мог придумать - вплоть до удаления и переустановки всех частей программного обеспечения ruby ​​/ rails на моей машине, включая mysql. Я сократил свою заявку до следующего:

require 'rubygems'
require 'active_record'

class Job < ActiveRecord::Base

end

ActiveRecord::Base.establish_connection(
    :adapter     => "mysql",
    :host        => "192.168.254.22",  (I've also tried 127.0.0.1)
    :port        => "3306",
    :database    => "databasethingie",
    :username    => "root",
    :password    => "rootpassword"
)

job = Job.find (: первая) Это на ящике с окнами, на котором установлены мгновенные рельсы 2.0.

Я все еще получаю ошибки:

c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/mysql_adapter.rb:505:in `real_connect': can't convert String into Integer (TypeError)
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/mysql_adapter.rb:505:in `connect'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/mysql_adapter.rb:183:in `initialize'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/mysql_adapter.rb:88:in `new'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/mysql_adapter.rb:88:in `mysql_connection'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:292:in `send'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:292:in `connection='
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:260:in `retrieve_connection'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:78:in `connection'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/base.rb:2693:in `quoted_table_name'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/base.rb:1469:in `construct_finder_sql'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/base.rb:1341:in `find_every'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/base.rb:1303:in `find_initial'
        from c:/InstantRails/ruby/lib/ruby/gems/1.8/gems/activerecord-2.1.0/lib/active_record/base.rb:534:in `find'
        from tmp.rb:17

Я видел сообщения об этом, которые ссылаются на ошибку, которая была исправлена ​​в 1.5.2 дня назад, но я в курсе. 2.1.2 и т. Д. Что здесь происходит? Я задавался вопросом, было ли это связано с недавними изменениями в конфигурации базы данных (предоставление полных прав пользователю root), но переустановка, похоже, доказывает обратное.

1 Ответ

2 голосов
/ 11 ноября 2008

Вы пробовали:

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