首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >docker无法连接到链接的docker容器中的MYSQL数据库

docker无法连接到链接的docker容器中的MYSQL数据库
EN

Stack Overflow用户
提问于 2016-06-21 17:39:16
回答 1查看 541关注 0票数 0

我使用两个Docker容器,一个运行ubuntu和一个apache two服务器,另一个运行mysql服务器。容器是链接的,我可以从ubuntu容器连接到mysql服务器。对于我在ubuntu容器中使用的连接:

代码语言:javascript
复制
mysql -u root -h mysql

其中第二个'mysql‘是容器的名称。我也可以通过容器id连接到它,这样连接就像从windows环境连接到数据库一样有效。

不起作用的是原理到ubuntu容器中的PHP应用程序中的数据库的连接。

配置如下所示:

代码语言:javascript
复制
'doctrine' => array(
        'connection' => array(
            'orm_default' => array(
                'driverClass' => 'Doctrine\DBAL\Driver\PDOMySql\Driver',
                'params'      => array(
                    'host'     => 'mysql',
                    'port'     => '3306',
                    'user'     => 'root',
                    'password' => '',
                    'dbname'   => 'db_name',
                    'charset'  => 'utf8',
                )
            )
        ),
)

但是我得到了错误信息

代码语言:javascript
复制
Uncaught PDOException: could not find driver in /var/www/vendor/zendframework/zend-servicemanager/src/ServiceManager.php

代码语言:javascript
复制
Zend\ServiceManager\Exception\ServiceNotCreatedException: An abstract factory could not create an instance of doctrine.entitymanager.ormdefault(alias: doctrine.entitymanager.orm_default). in /var/www/vendor/zendframework/zend-servicemanager/src/ServiceManager.php 

有人知道如何解决这个问题吗?错误的确切来源是什么?

我已经尝试将容器ID设置为'host‘,并注释掉了'password’字段,因为它没有被使用。

提前感谢

乔纳森

EN

回答 1

Stack Overflow用户

发布于 2016-06-21 17:55:30

你需要在你的系统上允许pdo_mysql,这似乎不是一个连接问题,而是一个php配置问题。

您可以尝试在php容器中执行此命令吗?

代码语言:javascript
复制
php -i | grep pdo_mysql

只是为了了解php是否有这个模块。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37940788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档