ruby '2.3.0'
gem 'rails', '4.2.6'
rake
命令db:create
,db:migrate
以及其他所有命令似乎都坚持使用MySQL root
用户。我为应用
my_user
配置/ database.yml的
development:
adapter: mysql2
database: my_database
username: my_user
password: abcd1234
当我运行rake db:create
时,它要求root
凭据。
$ rake db:创建
用户访问被拒绝' root' localhost' (使用密码:否)请提供MySQL安装的root密码
>
我可以通过命令行成功登录mysql并创建一个表:
mysql -u my_user -p my_database -e "create table foo (id int)"
这成功执行。
最奇怪的部分是,如果我点击输入(有或没有密码),命令将继续运行,最后一行会说
无法为{"适配器" =>" mysql2","数据库" =>" my_database&#34创建数据库;," pool" => 5,"超时" => 5000}
我的root
用户 有密码,因此无需密码即可登录。但是当我签入mysql时,数据库已经创建。我在其他命令上遇到类似错误,但在db:schema:load
期间始终失败 - 即使schema.rb
为空。唯一的错误总是,
Mysql2 ::错误:访问被拒绝用户' root' @' localhost' (使用密码:否)
如何让rake
使用database.yml
中的真实凭据?