2012-03-09 2 views
1

는 : https://github.com/rails-sqlserver/I 레일 조리법 '내가 책에서 조리법 # 3을 다음있어 내가이 보석을 사용하여 SQL 서버라고 수요에 연결하기 위해 노력하고있어 2008

를 해요' '

http://pragprog.com/book/rr2/rails-recipes 여기 내 database.yml을 파일입니다 :

레일 콘솔에서
demand: 
    adapter: sqlserver 
    host: 172.21.148.01 
    port: 1433 
    database: Demand 
    username: DEapp 
    password: @pp1user 
    timeout: 5000 

, 내가 Demand.connection와의 연결을 테스트 할 때 나는 다음과 같은 얻을 : (나는 일을 알고 내가 두꺼비를 통해 연결하고있어 같은 전자 메일 어드레스와 PW는 레일 객체)

> TinyTds::Error: Login failed for user ‘DEapp’. from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/tiny_tds-0.5.1/lib/tiny_tds/client.rb:68:in 
> `connect’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/tiny_tds-0.5.1/lib/tiny_tds/client.rb:68:in 
> `initialize’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-sqlserver-adapter-3.1.6/lib/active_record/connection_adapters/sqlserver_adapter.rb:400:in 
> `new’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-sqlserver-adapter-3.1.6/lib/active_record/connection_adapters/sqlserver_adapter.rb:400:in 
> `connect’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-sqlserver-adapter-3.1.6/lib/active_record/connection_adapters/sqlserver_adapter.rb:198:in 
> `initialize’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-sqlserver-adapter-3.1.6/lib/active_record/connection_adapters/sqlserver_adapter.rb:35:in `new’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-sqlserver-adapter-3.1.6/lib/active_record/connection_adapters/sqlserver_adapter.rb:35:in `sqlserver_connection’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:304:in 
> `new_connection’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:323:in 
> `checkout_new_connection’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:265:in 
> `block (2 levels) in checkout’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:261:in 
> `loop’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:261:in 
> `block in checkout’ from 
> /Users/drewgilliam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in 
> `mon_synchronize’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:260:in 
> `checkout’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:162:in 
> `connection’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:409:in 
> `retrieve_connection’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:115:in 
> `retrieve_connection’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:89:in `connection’ from (irb):11 from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.1.3/lib/rails/commands/console.rb:45:in 
> `start’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.1.3/lib/rails/commands/console.rb:8:in 
> `start’ from 
> /Users/drewgilliam/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.1.3/lib/rails/commands.rb:40:in 
> `‘ from script/rails:6:in `require’ 

어떤 도움이 것 때문에 현재도 모델 '수요'를 만들어 좋은? http://forums.pragprog.com/forums/189/topics/10476

+0

혼합 모드 (서버 ip 주소 사용) 인증을 사용해야합니까? 또는 Windows 인증을 사용할 수 있습니까? – Shaunak

+0

Windows 인증을 사용할 수 없습니다. 원격 시스템입니다. 실제로는 리눅스 박스, 가상 윈도우라고 생각합니다. 로그인에 문제가 있다고 생각합니까? – wantrapreneur

답변

1

외부 DB 사용자 비밀번호가 @ 심볼로 시작 되었기 때문에 레일스는 그것이 인스턴스 변수라고 생각했기 때문에 레일스가 그것에 대해 만족하지 않았다는 것을 알았습니다. .

나는 PW를 wth @으로 시작하지 않는 것으로 변경했으며 잘 연결했다.

Drews-MacBook-Air:DE_App drewgilliam$ rails console 
Loading development environment (Rails 3.1.3) 
1.9.2p290 :001 > Externaldb.connection 
    EXECUTE (36.7ms) USE [DemandEstimator] 
=> #<ActiveRecord::ConnectionAdapters::SQLServerAdapter version: 3.1.6, year: 2008, product_level: "SP1", product_version: "10.50.2500.0", edition: "Enterprise Edition (64-bit)", connection_options: {:adapter=>"sqlserver", :host=>"172.21.148.01", :port=>1433, :database=>"DemandEstimator", :username=>"DEapp", :password=>"demand_app_user", :timeout=>5000, :mode=>:dblib}> 
1.9.2p290 :002 > 
관련 문제