Meine App funktioniert ziemlich perfekt in der Produktion - die Website zumindest Teil. Das Problem taucht nur auf, wenn ich in mein VPS SSH und tun „Schienen c RAILS_ENV = Produktion“. Die Konsole funktioniert im Entwicklungsmodus einwandfrei.Kann Rails nicht öffnen Konsole: Produktionsdatenbank nicht konfiguriert, richten Sie Verbindungserweiterungen ActiveRecord :: AdapterNotSpecified
Ich hatte dieses Problem vor (oder mindestens eine, die so aussieht) und reparierte es durch Hinzufügen von "reconnect: true" zu database.yml - aber es hat dieses Mal nicht behoben. Hier ist der Beginn der Fehlerausgabe:
/home/tour/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:62:in `establish_connection': RAILS_ENV=production database is not configured (ActiveRecord::AdapterNotSpecified)
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:55:in `establish_connection'
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.0/lib/active_record/railtie.rb:59:in `block (2 levels) in <class:Railtie>'
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/lazy_load_hooks.rb:36:in `instance_eval'
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook'
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/lazy_load_hooks.rb:26:in `on_load'
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/activerecord-3.0.0/lib/active_record/railtie.rb:57:in `block in <class:Railtie>'
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.0/lib/rails/initializable.rb:25:in `instance_exec'
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.0/lib/rails/initializable.rb:25:in `run'
from /home/tour/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.0/lib/rails/initializable.rb:50:in `block in run_initializers'
Und für meine Produktionsdatenbankeinstellungen:
production:
adapter: mysql
encoding: utf8
database: tour_production
pool: 5
username: [user]
password: [password]
socket: /var/run/mysqld/mysqld.sock
reconnect: true
Ich kann meine Meinung nicht herumkommen, warum es funktioniert durch Passagier, aber kein Glück mit der Konsole. Wie auch immer, ich bin mit Rails 3 Ruby 1.9.2, Passagier- und Nginx.
Ich habe ein paar kleine Sachen über Runner gemacht, was nervig ist. Ich möchte das behoben haben. Also vielen Dank ein Bündel für jede Hilfe.
Ah, das würde es tun. Es scheint wie jeder Befehl deklariert die Schienen-Umgebung eine andere Art und Weise hat. Vielen Dank für die schnelle Antwort. – Nathan