Php Symfony PDO异常找不到驱动程序
我知道已经有人问过这个问题,但我找不到适合我的答案 我在Linux上,我用composer创建了一个Symfony4项目,我想安装EasyBundle管理员 一切正常,但当我创建Php Symfony PDO异常找不到驱动程序,php,database,symfony,database-connection,Php,Database,Symfony,Database Connection,我知道已经有人问过这个问题,但我找不到适合我的答案 我在Linux上,我用composer创建了一个Symfony4项目,我想安装EasyBundle管理员 一切正常,但当我创建php-bin/console-server:run并转到地址链接,然后将/admin放在最后转到页面时,我出现了一个错误: “在呈现模板期间引发异常(“驱动程序中发生异常:找不到驱动程序”)。” 我搜索了一整天,我尝试了所有的方法,但都没能成功。安装mysql。那就做吧 bin/console doctrine:dat
php-bin/console-server:run
并转到地址链接,然后将/admin
放在最后转到页面时,我出现了一个错误:
“在呈现模板期间引发异常(“驱动程序中发生异常:找不到驱动程序”)。”
我搜索了一整天,我尝试了所有的方法,但都没能成功。安装mysql。那就做吧
bin/console doctrine:database:create
然后
启动web应用程序之前的第一件事是设置适当的环境 在您的情况下,您需要设置一个LAMP或LEMP堆栈
根据linux发行版的不同,可以进行不同的操作。这些操作的细节不在这个问题的范围之内。为了运行新建立的Symfony项目,您应该做的事情很少 首先,您必须在您的计算机上设置一个数据库管理系统。尽管其他人都建议使用MySQL,但我还是建议从sqlite3开始。设置更加简单,对于开发目的来说非常好 在您的计算机上安装
sqlite3
。如果您有基于debian的发行版,您可以使用:
sudo apt install sqlite3 php-sqlite3
或者使用包管理器
成功安装后,您必须修改两个文件:
.env
查找以下行:
# DATABASE_URL=mysql://db_user:db_password@127.0.0.1:3306/db_name
如果未对其进行注释,请对其进行注释,并在下面添加以下行:
DATABASE_URL="sqlite:///%kernel.project_dir%/var/app.db"
config/packages/doctrine.yaml
此文件应如下所示:
parameters:
# Adds a fallback DATABASE_URL if the env var is not set.
# This allows you to run cache:warmup even if your
# environment variables are not available yet.
# You should not need to change this value.
env(DATABASE_URL): ''
doctrine:
dbal:
# configure these for your database server
driver: 'pdo_sqlite'
server_version: '3'
charset: utf8mb4
default_table_options:
charset: utf8mb4
collate: utf8mb4_unicode_ci
url: '%env(resolve:DATABASE_URL)%'
types:
json: Sonata\Doctrine\Types\JsonType
orm:
auto_generate_proxy_classes: '%kernel.debug%'
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
mappings:
App:
is_bundle: false
type: annotation
dir: '%kernel.project_dir%/src/Entity'
prefix: 'App\Entity'
alias: App
最重要的部分是原则.dbal
。在您的项目中,doctrine.orm
部分最终可能会有所不同。重要的是设置驱动程序:“pdo\u sqlite”
和服务器版本:“3”
现在,您可以按照@goto的答案进行操作,并且应该创建您的数据库
在命令行上,您可以使用以下命令检查:
sqlite3 var/app.db
发出命令
.tables
,应该列出这些表。似乎您的数据库没有配置我不知道,我在配置服务器web等方面一点也不专业。我想我没有数据库,或者如果我有数据库,我不知道在哪里以及如何配置itI我更清楚地看到了这一点,我尝试了,当我让sudo-yum安装php-mysql时,它说:最后一次元数据过期检查:1:39:24之前,即2019年2月7日星期四下午04:02:55 CET。参数不匹配:php mysql错误:找不到匹配项,当我想创建一个带有symfony的数据库时,同样的问题,找不到pdo driverI我知道这一点,但我不知道我必须做什么才能拥有一个合适的环境
sqlite3 var/app.db