我已经克隆了一个仓库,以便开始为一个私人项目做出贡献。
现在当我启动mysql服务器以及rails服务器时,我得到以下错误:
Access denied for user 'root'@'localhost' (using password: YES) (Mysql2::Error)
现在我试图登录我在配置/数据库中找到的密码。Yml文件,但没有成功。我应该做些什么让应用程序在我的本地环境中正常运行?
谢谢你的帮助。
数据库。yml文件:
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: sc_development
pool: 5
username: root
password: Mysql2047
socket: /tmp/mysql.sock
# 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:
adapter: mysql2
encoding: utf8
reconnect: false
database: sc_test
pool: 5
username: root
password: Mysql2047
socket: /tmp/mysql.sock
您需要在本地机器上启动mysql服务器,创建数据库sc_development
并清除数据库设置文件中的密码。
我将创建一个新的MySQL用户,用户名不是root
。为每个不同的应用程序设置不同的数据库用户是一种很好的做法。
当然,您还需要将sc_development
数据库的权限授予您的应用程序用户。
CREATE DATABASE sc_development;
CREATE USER sc IDENTIFIED BY 'somepassword';
GRANT ALL PRIVILEGES ON sc_development.* TO sc;
这对我来说很有用:
首先,不要用
登录mysql mysql
像这样登录:
mysql -uroot
root@localhost拥有所有权限,没有密码。
接下来,我创建了数据库和另一个我赋予其所有权限的用户。
mysql> CREATE USER joe identified by 'foobar'
mysql> Grant All PRIVILEGES ON smartcheckups_development.* TO joe;
创建数据库:mysql> CREATE DATABASE sc_development;
在我的数据库中。yml文件,我更新了登录&使用上述用户joe的密码。这将允许我登录。
离开mysql通过q
bundle exec rake db:create
和start rails rails s