我已经开始了一个新的rails 3.2项目,默认情况下它使用SQLite。
我的数据库中还没有数据,现在我打算使用MySQL,所以我在Gemfile中添加了gem'mysql2'并运行'bundle install'。
现在,
我有点不确定该怎么做。我已经读过我应该更改database.yml
下的配置行。
但我想知道为什么我应该输入MySQL的用户名和密码值。
这些值是否应该在MySQL中手动设置?
如果是这样,这是怎么做到的?为什么SQLite不要求用户和密码?
答案 0 :(得分:2)
以下是mysql的database.yml
文件片段作为DB。请确保在Gemfile中添加mysql2
并运行bundle install
# Ensure the MySQL gem is defined in your Gemfile
# gem 'mysql2'
#
# And be sure to use new-style password hashing:
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: example_development
pool: 5
username: root
password: root
答案 1 :(得分:1)
http://www.tutorialspoint.com/ruby-on-rails/rails-database-setup.htm显示了您需要的语法的快速示例。你真的很接近,你只需要通过授予它对数据库的权限来创建一个新的mysql用户。
顺便说一下,这是我更喜欢用postgresql开发的原因之一。配置pg_hba.conf以向本地用户授予权限后,可以在database.yml中保留用户名和密码字段。当你将它与部署到heroku(它们用你的产品值覆盖你的database.yml)结合起来时,它会使管理(和共享)这个文件变得非常简单。
答案 2 :(得分:1)