symfony2 中的 MySQL (PDO) 出错:驱动程序中发生异常:SQLSTATE [HY000] [1049]

Posted

技术标签:

【中文标题】symfony2 中的 MySQL (PDO) 出错:驱动程序中发生异常:SQLSTATE [HY000] [1049]【英文标题】:Error with MySQL (PDO) in symfony2 : An exception occured in driver: SQLSTATE[HY000] [1049] 【发布时间】:2015-03-15 08:12:10 【问题描述】:

我尝试在 symfony2 配置下连接到我的数据库(mysql),但我总是遇到这个异常:

INFO - 匹配的路由“_configurator_step”(参数:“_controller”:“Sensio\Bundle\DistributionBundle\Controller\ConfiguratorController::stepAction”,“index”:“0”,“_route”:“_configurator_step”) 调试 - 通知事件“kernel.request”到监听器“Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\DumpListener::configure”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Bundle\FrameworkBundle\EventListener\SessionListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\TranslatorListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\Security\Http\Firewall::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Bundle\AsseticBundle\EventListener\RequestListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController”通知事件“kernel.controller”。 调试 - 将事件“kernel.controller”通知到侦听器“Acme\DemoBundle\EventListener\ControllerListener::onKernelController”。 调试 - 将事件“kernel.controller”通知到侦听器“Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController”。 调试 - 向侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController”通知事件“kernel.controller”。 调试 - 将事件“kernel.controller”通知到侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController”。 调试 - 向侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController”通知事件“kernel.controller”。 调试 - 向侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\SecurityListener::onKernelController”通知事件“kernel.controller”。 调试 - 将事件“kernel.controller”通知到侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController”。 CRITICAL - 未捕获的 php 异常 Doctrine\DBAL\Exception\ConnectionException:“驱动程序中发生异常:SQLSTATE[HY000] [1049] 未知数据库 'symfony'”,位于 D:\wamp\www\simpony\vendor\doctrine\dbal\lib \Doctrine\DBAL\Driver\AbstractMySQLDriver.php 第 103 行 调试 - 通知事件“kernel.request”到监听器“Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\DumpListener::configure”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Bundle\FrameworkBundle\EventListener\SessionListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\HttpKernel\EventListener\TranslatorListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Component\Security\Http\Firewall::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Bundle\AsseticBundle\EventListener\RequestListener::onKernelRequest”通知事件“kernel.request”。 调试 - 向侦听器“Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController”通知事件“kernel.controller”。 调试 - 将事件“kernel.controller”通知到侦听器“Acme\DemoBundle\EventListener\ControllerListener::onKernelController”。 调试 - 将事件“kernel.controller”通知到侦听器“Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController”。 调试 - 向侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController”通知事件“kernel.controller”。 调试 - 向侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController”通知事件“kernel.controller”。 调试 - 向侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController”通知事件“kernel.controller”。 调试 - 向侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\SecurityListener::onKernelController”通知事件“kernel.controller”。 调试 - 将事件“kernel.controller”通知到侦听器“Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController”。

请问如何解决?

【问题讨论】:

【参考方案1】:

我已经快速解决了我的问题:

    转到 ..\wamp\www\simpony\app\config 使用编辑器(如 notepad++)打开 parameters.yml 修改信息如 database_host: 127.0.0.1(在本地!!) 数据库名称:您的数据库名称 database_user: db_name 数据库密码:db_passw http://localhost/simphony/web/app_dev.php/_configurator/step/0 和 问题将得到解决。

【讨论】:

【参考方案2】:

转到parameters.yml(就像Houssem Guizani 指出的那样),不要忘记也输入您的数据库端口。如果您像我一样使用 MAMP,您可以打开 MAMP > Preferences > Ports,然后将 MySQL 端口复制到那里(我的是 8889)。

【讨论】:

以上是关于symfony2 中的 MySQL (PDO) 出错:驱动程序中发生异常:SQLSTATE [HY000] [1049]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Symfony 2.0 中使用 Linux Xampp mysql_pdo

Symfony2 抛出学说异常“检查与您的 MySQL 服务器版本相对应的手册,以获取在 'group' 附近使用的正确语法”

为啥mysql PDO不会在失败时抛出错误[重复]

Symfony2 无法连接到 sqlite

使用doctrine从Symfony2中的外部数据库导入表

PDO 不返回任何结果,而 MySQL 命令行返回预期结果