我创建了一个新的Rails项目,我使用了scaffold,然后尝试:
rake db:create 我没有更改config/database.yml,因此密码为空(我总是输入用于登录到localhost/phpmyadmin的密码,但这次我忘记了)。
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: test_associations_development
pool: 5
username: root
password:
socket: /tmp/mysql.sock所以,回到终端,我收到了以下消息:
$ rake db:create
Access denied for user 'root'@'localhost' (using password: NO).
Please provide the root password for your mysql installation>******* (我在这里输入了密码)
$ rake db:create rake aborted!
(<unknown>): couldn't parse YAML at line 31 column 2
Tasks: TOP => db:create => db:load_config
(See full trace by running task with --trace)在此之后,我无法登录到phpmyadmin,当我在本地运行我的应用程序时,我收到以下错误:
Mysql2::Error
Access denied for user 'root'@'localhost' (using password: YES)我使用的是OS 10.7.2,Rails 3.2,Ruby 1.9.3。
有什么想法吗?
发布于 2012-02-16 01:05:07
您可以尝试使用Terminal.app访问MySQL。在命令行中运行:
mysql -u root如果您希望root密码为空,但却看到以下内容:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)你知道密码已经被修改了。
听起来超级用户密码已经被更改了。如果您不知道密码是什么,请按照以下说明重置密码:Resetting MySQL password。
发布于 2012-10-29 06:28:37
此答案与发生此行为的Ruby on Rails框架有关
-d mysql“
up -要求输入根密码,然后当您提供根密码时
答案在here第68行的GRANT命令中
基本上,它使用凭据执行GRANT命令,与您当前的database.yml匹配
我已经讨论过这个话题,行为将得到改善,它被认为是一个bug。
https://stackoverflow.com/questions/9297677
复制相似问题