首页 > 解决方案 > 拒绝连接到数据库(Symfony 5)

问题描述

我正在尝试使用 Symfony 将我的数据库连接到我的应用程序,但我不断收到错误消息。我指定它不是本地数据库。另外,我正在使用 Symfony 5 和 PHP 7.4。

首先,我把它放在我的 .env 文件中

DATABASE_URL="mysql://user_xxx:pass_xxx@host_xxx:3306/db_xxx?serverVersion=5.5.68-MariaDB"

所有这些信息似乎都很好。

接下来,这是我的学说.yaml 文件

doctrine:
dbal:
    url: '%env(resolve:DATABASE_URL)%'
    driver: 'pdo_mysql'
    server_version: '5.5.68-MariaDB'

    # IMPORTANT: You MUST configure your server version,
    # either here or in the DATABASE_URL env var (see .env file)
    #server_version: '13'
orm:
    auto_generate_proxy_classes: true
    naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
    auto_mapping: true
    mappings:
        App:
            is_bundle: false
            type: annotation
            dir: '%kernel.project_dir%/src/Entity'
            prefix: 'App\Entity'
            alias: App

然后为了测试与数据库的连接,我编写了这段代码

<?php

namespace App\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;

class TestController extends AbstractController
{
    /**
     * @Route("/test", name="test")
     */
    public function index(): Response
    {
        $em = $this->getDoctrine()->getManager();
        $em->getConnection()->connect();
        $connected = $em->getConnection()->isConnected();
        var_dump($connected);
    }
}

我收到了这些错误

有人可以帮助我并告诉我我做错了什么吗?

标签: phpsymfonydoctrine

解决方案


我的问题解决了,我必须在我的 PHP.ini 文件中启用扩展名“pdo_mysql”。谢谢大家的帮助。


推荐阅读