我的数据库.yml
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: organic_tomatoes_development
pool: 5
username: root
password: password
test:
adapter: mysql2
encoding: utf8
reconnect: false
database: organic_tomatoes_test
pool: 5
username: root
password: password
我在heroku上部署了我的网站。
当我运行heroku run rake db:migrate
时
它给出了一个错误
ActiveRecord::AdapterNotSpecified: 'production' database is not configured. Available: ["development", "test"]
如何解决此错误?
答案 0 :(得分:1)
根据共享的描述,您仅指定了开发和测试环境,还需要添加生产环境设置
但是除此之外,您还需要添加ClearDB作为使用mysql db的附件。
单击“显示配置变量”,然后复制CLEARDB_DATABASE_URL值。
mysql://xxxxx@xxxx.cleardb.net/xxxxx?reconnect = true。
@符号后面直到/的所有内容均为DB_HOST
/直到之后的一切?是DB_DATABASE
//直到:之后的字符串是DB_USERNAME
:和@之间的字符串是DB_PASSWORD
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: organic_tomatoes_development
pool: 5
username: root
password: password
test:
adapter: mysql2
encoding: utf8
reconnect: false
database: organic_tomatoes_test
pool: 5
username: root
password: password
production:
adapter: mysql2
encoding: utf8
username: xxxx
password: xxxx
database: ENV["CLEARDB_DATABASE_URL"]
pool: 5
答案 1 :(得分:0)
在您的数据库中创建生产条目。yml
production::
adapter: mysql2
encoding: utf8
reconnect: false
database: organic_tomatoes_production
pool: 5
username: root
password: password
答案 2 :(得分:0)
production:
adapter: mysql2
encoding: utf8
reconnect: false
database: organic_tomatoes_production
pool: 5
你可以试试吗?
答案 3 :(得分:0)
今天早上我遇到了这个问题,解决方法是在运行命令之前设置RAILS_ENV
变量'
RAILS_ENV=development heroku local