SQLSTATE [28000] [1045] Доступ запрещен для пользователя 'root' @'localhost' (с использованием пароля: YES) Symfony2

Я попытался создать свою БД с помощью Symfony2. Я набрал команду:

php app/console doctrine:create:database

Результат:

Could not create database for connection named `jobeet`
SQLSTATE[28000] [1045] Access denied for user 'root'@'localhost' (using password: YES)

Содержимое моего файла app/config/parameters.yml:

parameters:
   database_driver:   pdo_mysql
   database_host:     127.0.0.1
   database_port:     ~
   database_name:     jobeet
   database_user:     root
   database_password: 0000

   mailer_transport:  smtp
   mailer_host:       127.0.0.1
   mailer_user:       ~
   mailer_password:   ~

   locale:            fr
   secret:            ThisTokenIsNotSoSecretChangeIt

Моя ОС - Ubuntu.

Я не знаю, что делать, чтобы исправить эту проблему.

Спасибо за вашу помощь.

Ответ 1

Попробуйте войти в систему через терминал, используя следующую команду:

mysql -u root -p

Затем появится запрос на ввод пароля. Если это не удается, то, безусловно, имя пользователя или пароль неверны. Если это работает, тогда ваш пароль базы данных должен быть заключен в кавычки:

database_password: "0000"

Ответ 2

Я не знаю, какая именно причина, но я решил проблему:

   app/console cache:clear --env=prod

Ответ 3

В вашем приложении /config/parameters.yml

# This file is auto-generated during the composer install
parameters:
    database_driver: pdo_mysql
    database_host: 127.0.0.1
    database_port: 3306
    database_name: symfony
    database_user: root
    database_password: "your_password"
    mailer_transport: smtp
    mailer_host: 127.0.0.1
    mailer_user: null
    mailer_password: null
    locale: en
    secret: ThisTokenIsNotSoSecretChangeIt

database_password должен быть внутри двойного кавычки (") или одинарной кавычки (').

Я видел, что большинство пользователей случается так, потому что они используют пароль с начальным нулевым или числовым (в моей ситуации это так)

Ответ 4

Хорошо, так что это может не исправить вашу проблему, но это определенно сработало для меня.

Итак, вы создали своего пользователя Mysql, я его принимаю? Перейдите в пользовательские привилегии на PhpMyAdmin и нажмите править рядом с пользователем, использующим для Symfony. Прокрутите вниз до ближайшего дна и укажите, какой хост вы хотите использовать. Убедитесь, что вы выбрали LocalHost не% Any.

Затем в вашем файле конфигурации swap 127.0.0.1 для localhost. Надеюсь, это сработает для вас. Просто работал у меня, поскольку у меня была такая же проблема.

Ответ 5

Вам нужно установить пароль для [email protected] пустым. Существует два способа:

  • Команда MySQL SET PASSWORD:

    SET PASSWORD FOR [email protected]=PASSWORD('');
    
  • Используя инструмент командной строки mysqladmin:

    mysqladmin -u root -pCURRENTPASSWORD password ''
    

Ответ 6

У меня были аналогичные проблемы, связанные с базой данных OpenSUSE 13.1 MySQL с LibreOffice. Обновите LibreOffice до последнего стабильного пакета "Still", затем убедитесь, что база данных доступна с помощью такого инструмента, как phpMyAdmin. Убедитесь, что ваш пользователь связан с localhost, а не с "%" (любой). Это сработало для меня, я могу добавить данные через LibreOffice.

Боковое примечание - LibreOffice Base не будет поставлять "собственное подключение" через MySQL при первой попытке, вам нужно будет использовать кнопку "Назад", а затем повторите попытку, чтобы увидеть параметры.

Надеюсь, это поможет.