【问题标题】:Error database connection in SymfonySymfony 中的错误数据库连接
【发布时间】:2016-01-16 01:46:30
【问题描述】:

我正在尝试将我的数据库与 MySQL 连接,但出现以下错误:

[Doctrine\DBAL\Exception\ConnectionException] 驱动发生异常:SQLSTATE [HY000] [2002] Connection denied

我的项目位于以下路径中(我使用的是 OS X Capitan):/Applications/ XAMPP/htdocs/Projects/Cupon。我正在尝试使用以下命令自动完成 get 和 set 方法:php app/console doctrine:generate:entities TiendaBundle

类代码(Project/Cupon/src/Cupon/TiendaBundle/Entity/Tienda.php):

<?php

namespace Cupon\TiendaBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/** @ORM\Entity */

class Tienda
{

  /**
  * @ORM\Id
  * @ORM\Column(type="integer")
  * @ORM\GeneratedValue
  */
  protected $id;

  /** @ORM\Column(type="string", length=100) */
  protected $nombre;

  /** @ORM\Column(type="string", length=100) */
  protected $slug;

  /** @ORM\Column(type="string", length=10) */
  protected $login;

  /** @ORM\Column(type="string", length=255) */
  protected $password;

  /** @ORM\Column(type="string", length=255) */
  protected $salt;

  /** @ORM\Column(type="text") */
  protected $descripcion;

  /** @ORM\Column(type="text") */
  protected $direccion;

  /**
   * @ORM\ManyToOne(targetEntity="Cupon\CiudadBundle\Entity\Ciudad")
   * @ORM\JoinColumn(name="ciudad_id", referencedColumnName="id")
   */
  protected $ciudad;

}

我在 MySQL (XAMPP 5.6.3) 中有一个名为“symfony”的数据库,我在 Symfony 中的配置文件如下:

parameters:
    database_driver: pdo_mysql
    database_host: 127.0.0.1
    database_port: null
    database_name: symfony
    database_user: root
    database_password: '123'
    mailer_transport: smtp
    mailer_host: 127.0.0.1
    mailer_user: null
    mailer_password: null
    locale: en
    secret: c11eccf2a788b331cb9548ff4106c7461

我不知道如何将我的项目 Symfony 与我在 phpmyadmin 中的数据库连接起来。

【问题讨论】:

  • 你确定你的配置文件没问题吗?为什么你使用 null 作为端口属性?
  • Alireza,我想是的,我也使用了3306端口,但我也遇到了同样的问题,我尝试了上千种不同的方法但无法连接,你可以帮我列出一个步骤建立连接 phpmyadmin-symfony,谢谢
  • mysql服务在运行吗?您是否尝试将 127.0.0.1 替换为 localhost?
  • Iago,服务正在运行,如果我将端口更改为 localhost 我有不同的错误:[Doctrine\DBAL\Exception\ConnectionException] 驱动程序中发生异常:SQLSTATE[HY000] [2002]没有这样的文件或目录
  • 尝试按照本教程设置 unix_socket:stackoverflow.com/questions/19629932/…

标签: mysql symfony doctrine server


【解决方案1】:

我希望你的问题已经解决了,如果没有,我的解决方案可能会对你有所帮助。

我有一个非常相似的问题,但我使用的是 MAMP,我解决了更改 pdo_mysql.default_socket 配置的问题 在/etc/php.ini

为什么? 我使用终端来创建数据库

php 应用程序/控制台原则:数据库:创建

我使用 MAMP 来测试网站。

所以,问题是,终端使用的 pdo_mysql.default_socket 与 MAMP 不同。

MAMP 使用来自

的配置

/Applications/MAMP/bin/php/php5.3.6/conf/php.ini

和终端使用

/etc/php.ini

我的解决方案:

更改我的/etc/php.ini

pdo_mysql.default_socket=/var/mysql/mysql.sock

与:

pdo_mysql.default_socket=/Applications/MAMP/tmp/mysql/mysql.sock

我还更改了我的默认区域:

date.timezone = "欧洲/布加勒斯特"

我希望,这可以帮助您做一些类似但现在使用您的 XAMMP 套接字的事情。

对不起我的英语。

【讨论】:

  • 感谢这对我有帮助,在我的情况下,我必须执行 sudo find / -name mysql.sock 才能找到我的 xampp 安装位置,然后我按照您的指示进行操作,它成功了!需要注意的是,出于某种原因,我的 php.ini 文件说它位于 /etc/ 但不是,所以我不得不在那里复制一个以使其工作。希望这对某人有所帮助。
猜你喜欢
  • 1970-01-01
  • 2012-01-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多