12

我尝试使用 Symfony2 创建我的数据库,输入以下命令:

php app/console doctrine:create:database

结果是:

无法为名为jobeet SQLSTATE [28000] [1045] 的连接创建数据库 'root'@'localhost' 的访问被拒绝(使用密码: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。

我不知道该怎么做才能纠正这个问题。

4

7 回答 7

11

尝试使用以下命令通过终端登录:

mysql -u root -p

然后它将提示您输入密码。如果失败,那么肯定是用户名或密码不正确。如果这可行,那么您的数据库密码需要用引号引起来:

database_password: "0000"
于 2013-05-01T19:52:49.587 回答
6

我不知道确切的原因是什么,但我解决了运行问题:

   app/console cache:clear --env=prod
于 2014-12-18T23:08:02.723 回答
4

在你的app/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应该在双引号或单引号内,如:"your_password"'your_password'

我已经看到大多数用户遇到此错误,因为他们使用的密码带有前导零或数字值。

于 2014-12-18T16:14:13.107 回答
2

好的,所以这可能无法解决您的问题,但它肯定对我有用。

所以你已经创建了你的 Mysql 用户我接受它吗?转到 PhpMyAdmin 上的用户权限,然后单击您用于 Symfony 的用户旁边的编辑。向下滚动到底部附近,并在其中显示您要使用的主机,确保您选择了 LocalHost 而不是 % Any。

然后在您的配置文件中将 127.0.0.1 换成 localhost。希望这对你有用。刚为我工作,因为我遇到了同样的问题。

于 2014-02-01T09:28:41.150 回答
2

您需要将密码设置为root@localhost空白。有两种方法:

  • MySQLSET PASSWORD命令:

    SET PASSWORD FOR root@localhost=PASSWORD('');
    
  • 使用命令行mysqladmin工具:

    mysqladmin -u root -pCURRENTPASSWORD password ''
    
于 2015-03-05T02:55:08.833 回答
0

我在使用 LibreOffice 连接到 OpenSUSE 13.1 MySQL 数据库时遇到了类似的问题。将 LibreOffice 更新到最新的稳定“Still”包,然后确保可以使用 phpMyAdmin 等工具访问数据库。确保您的用户链接到 localhost 而不是“%”(任何)。这对我有用,我可以通过 LibreOffice 添加数据。

旁注 - LibreOffice Base 在第一次尝试时不会通过 MySQL 提供“本机连接”,您需要使用后退按钮,然后再次尝试查看选项。

希望这可以帮助。

于 2014-10-21T05:17:01.170 回答
0

可能是用户名和密码不是您认为的那样。如果您的域名提供商在您购买它时向您发送了一封凭据电子邮件,则用户名和密码就是其中的内容。不是您可能通过 cPanel 或 PHPmyAdmin/SQL 等设置的。它将是您为该域名设置的 cPanel 密码。

于 2021-09-22T14:18:48.643 回答