0

プライベート プロジェクトへの貢献を開始するために、リポジトリを git clone しました。

mysql サーバーと rails サーバーを起動すると、次のエラーが表示されます。

Access denied for user 'root'@'localhost' (using password: YES) (Mysql2::Error)

config/database.yml ファイルで見つけたパスワードでログインしようとしましたが、成功しませんでした。ローカル環境でアプリを適切に実行するにはどうすればよいですか?

助けてくれてありがとう。

database.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
4

3 に答える 3

0

これは私のためにトリックをやっていた:

まず、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;

database.ymlファイルで、ログインとパスワードを上記のユーザーjoeのもので更新しました。これにより、ログインできるようになります。

経由でmysqlを離れる\q

それで

bundle exec rake db:create

スタートレールrails s

于 2013-01-16T07:30:49.463 に答える
0

ローカル マシンで mysql サーバーを起動し、データベースを作成sc_developmentして、データベース設定ファイルのパスワードをクリアする必要があります。

于 2013-01-15T16:38:52.323 に答える
0

以外のユーザー名で新しい MySQL ユーザーを作成しますroot。アプリごとに異なるデータベース ユーザーを設定することをお勧めします。

もちろん、sc_developmentデータベースに対する権限をアプリのユーザーに付与する必要もあります。

CREATE DATABASE sc_development;
CREATE USER sc IDENTIFIED BY 'somepassword';
GRANT ALL PRIVILEGES ON sc_development.* TO sc;

そのような何かがうまくいくかもしれません。

于 2013-01-15T16:39:27.633 に答える