我今天早上来了,以与往常一样的方式启动我的应用程序,并开始收到此错误。从那以后,我一直走在我能想到的每一条路上 - 在我的机器上删除并重新安装每一块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(:first) 这是在运行Instant rails 2.0的Windows机器上。
我仍然得到错误:
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的完全权限),但重新安装似乎证明不是这样。
答案 0 :(得分:2)
你有没有尝试过:
:port => 3306