我正在尝试部署我的Rails 4应用程序,它使用mysql数据库。数据库托管在另一台服务器上。
对于如何配置我的database.yml文件,以及云铸造厂如何知道要使用哪个部分,我感到困惑。
部署后,加载应用程序时会出现此错误。
ActiveRecord::AdapterNotSpecified
'' database is not configured. Available: ["development"]
Rails.root: /home/vcap/app如果然后刷新页面,您将得到:
NoMethodError
undefined method `default_timezone=' for #<Class:0x007fd7930ab0f0>
Rails.root: /home/vcap/app我的database.yml是这样的
#local development
development:
adapter: mysql2
encoding: utf8
host: hostname
port: 3306
database: appdb
username: myapp
password: 'password'
timeout: 5000
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test: &test
adapter: sqlite3
database: db/test.sqlite3
pool: 5
timeout: 5000
production:
adapter: mysql2
encoding: utf8
host: hostname
port: 3306
database: appdb
username: myapp
password: 'password'
timeout: 5000发布于 2016-03-12 12:32:15
原来我在application.rb中需要这个:
ENV‘’DATABASE_URL‘= 'mysql2://username:password@hostname:3306/dbname’
发布于 2016-03-12 08:08:35
如果您在生产模式下运行rails应用程序。配置应该是这样的。
production:
adapter: postgresql
encoding: utf8
database: rails_myapp
username: rails_myapp_user
password: pwd
host: 128.199.233.36
port: 5432
pool: 10发布于 2016-07-29 09:27:28
考虑将数据库url设置为CF中的环境变量:
cf set-env <app-name> DATABASE_URL 'mysql2://username:password@hostname:3306/dbname'
https://stackoverflow.com/questions/35955176
复制相似问题