Ошибка подключения проекта Rails с базой данных MySQL - доступ запрещен для пользователя root - PullRequest
0 голосов
/ 10 ноября 2011

Я получаю эту ошибку при запуске rails с mysql db.В основном это не дает пользователю root права доступа.Я понятия не имею, почему это так, и я застрял с этим некоторое время.

Mysql2::Error (Access denied for user 'root'@'localhost' (using password: YES)):
Rendered /Users/USER/.rvm/gems/ruby-1.9.2-p290/gems/actionpack- 3.1.0/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.3ms)
Rendered /Users/USER/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.1.0/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (5.7ms)
Rendered /Users/USER/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.1.0/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (17.7ms)

Файл My Database.yml размещен ниже для вашей справки.Я не уверен, как я проверяю пароль, которому автоматически назначается MYSQL?Это будет мой логин-пароль?Во всяком случае, как я могу это проверить.Кроме того, я не могу просто ввести mysql в моей командной строке, мне нужно ввести полный путь к нему.Как я могу изменить это.Самое главное, я хочу знать, как можно решить эту проблему с отказом в доступе.Спасибо.Использование MySQL 5.5 на Mac.x86_64 build.

# 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: project1_db
  pool: 5
  user : root
  username: root
  password: password
  host: localhost

# 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: project1_db
  pool: 5
  user : root
  username: root
  password: password
  host: localhost

production:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  database: project1_db
  pool: 5
  user : root
  username: root
  password: password
  host: localhost

1 Ответ

1 голос
/ 10 ноября 2011

Mysql использует тот, который вы установили при установке. Иногда пусто. Попробуй mysql -u root. Если это работает - удалите строку ввода формы базы данных yaml. Если он не пустой - https://stackoverflow.com/search?q=mysql+reset+password

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...