相关疑难解决方法(0)

Laravel:PDOException:找不到驱动程序

我正在服务器上开发一个网站我只能访问MySQL和FTP,所以我运行的所有命令都是通过b374k php shell.我遇到了SQL驱动程序的Laravel问题.我尝试切换到文件托管的SQLite(在database/database.sqlite中),但抛出的异常与使用MySQL时相同.控制台的输入和输出如下:

   php artisan migrate:refresh --seed
    [Illuminate\Database\QueryException]
could not find driver (SQL: select * from sqlite_master where type = 'table ' and name = migrations)
 [Doctrine\DBAL\Driver\PDOException]
could not find driver
 [PDOException]
could not find driver
Run Code Online (Sandbox Code Playgroud)

服务器上安装的Apache扩展包括:

    /etc/php/5.6/apache2/conf.d/10-mysqlnd.ini, 
/etc/php/5.6/apache2/conf.d/10-opcache.ini,
 /etc/php/5.6/apache2/conf.d/10-pdo.ini,
 /etc/php/5.6/apache2/conf.d/15-xml.ini, 
/etc/php/5.6/apache2/conf.d/20-calendar.ini,
 /etc/php/5.6/apache2/conf.d/20-ctype.ini, 
/etc/php/5.6/apache2/conf.d/20-curl.ini,
 /etc/php/5.6/apache2/conf.d/20-dom.ini, 
/etc/php/5.6/apache2/conf.d/20-exif.ini, 
/etc/php/5.6/apache2/conf.d/20-fileinfo.ini, 
/etc/php/5.6/apache2/conf.d/20-ftp.ini, /etc/php/5.6/apache2/conf.d/20-gd.ini, 
/etc/php/5.6/apache2/conf.d/20-gettext.ini, 
/etc/php/5.6/apache2/conf.d/20-iconv.ini, 
/etc/php/5.6/apache2/conf.d/20-json.ini, 
/etc/php/5.6/apache2/conf.d/20-mbstring.ini, 
/etc/php/5.6/apache2/conf.d/20-mcrypt.ini, 
/etc/php/5.6/apache2/conf.d/20-mysql.ini, 
/etc/php/5.6/apache2/conf.d/20-mysqli.ini, 
/etc/php/5.6/apache2/conf.d/20-pdo_mysql.ini,
 /etc/php/5.6/apache2/conf.d/20-phar.ini, 
/etc/php/5.6/apache2/conf.d/20-posix.ini, 
/etc/php/5.6/apache2/conf.d/20-readline.ini, 
/etc/php/5.6/apache2/conf.d/20-shmop.ini, 
/etc/php/5.6/apache2/conf.d/20-simplexml.ini, 
/etc/php/5.6/apache2/conf.d/20-sockets.ini,
 /etc/php/5.6/apache2/conf.d/20-sysvmsg.ini,
 /etc/php/5.6/apache2/conf.d/20-sysvsem.ini,
 /etc/php/5.6/apache2/conf.d/20-sysvshm.ini,
 /etc/php/5.6/apache2/conf.d/20-tokenizer.ini, 
/etc/php/5.6/apache2/conf.d/20-wddx.ini,
 /etc/php/5.6/apache2/conf.d/20-xmlreader.ini, 
/etc/php/5.6/apache2/conf.d/20-xmlwriter.ini, 
/etc/php/5.6/apache2/conf.d/20-xsl.ini, 
/etc/php/5.6/apache2/conf.d/20-zip.ini
Run Code Online (Sandbox Code Playgroud)

可能是什么问题,我该如何解决?(我无权访问root bash)

php mysql apache sqlite laravel

32
推荐指数
14
解决办法
12万
查看次数

如何在 docker 容器中启用 php 的 mysql 扩展?

我有以下 docker-compose.yml

web:
  image: nginx:1.17.1-alpine
  ports:
    - "80:80"
  volumes:
    - ./code:/code
    - ./site.conf:/etc/nginx/conf.d/site.conf
  links:
    - php

php:
  build: .
  volumes:
    - ./code:/code
  links:
    - mysql

mysql:
  image: yobasystems/alpine-mariadb:latest
  ports:
    - "3306:3306"
  volumes:
    - ./mysql:/var/lib/mysql
environment: 
    - MYSQL_ROOT_PASSWORD=password
Run Code Online (Sandbox Code Playgroud)

并遵循 dockerfile

FROM php:7.1.0-fpm-alpine

RUN docker-php-ext-install mysqli && docker-php-ext-enable mysqli
Run Code Online (Sandbox Code Playgroud)

在此设置中,永远不会安装 php 的 mysql 扩展或 docker mysql 扩展。我无法从 php 容器访问 mysql。adminer.php 抱怨说“没有任何受支持的 PHP 扩展(MySQLi、MySQL、PDO_MySQL)可用。”

我们如何解决这个问题?

php mysql docker dockerfile docker-compose

8
推荐指数
1
解决办法
1万
查看次数

使用php artisan migrate时找不到驱动程序错误

我开始了一个新的博客项目来尝试 Laravel。我按照https://laracasts.com/series/laravel-from-scratch-2017/episodes/1?autoplay=true 中的教程进行操作。我更改了 .env 文件

DB_DATABASE=homestead 
DB_USERNAME=homestead 
DB_PASSWORD=secret
Run Code Online (Sandbox Code Playgroud)

DB_DATABASE=blog
DB_USERNAME=root
DB_PASSWORD=
Run Code Online (Sandbox Code Playgroud)

然后输入

php artisan migrate

并得到一个错误

   Illuminate\Database\QueryException  : could not find driver (SQL: select * from information_schema.tables where table_schema = blog and table_name = migrations)

  at /home/morilon/php_proj/blog/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead …
Run Code Online (Sandbox Code Playgroud)

php laravel-5

5
推荐指数
2
解决办法
2万
查看次数

标签 统计

php ×3

mysql ×2

apache ×1

docker ×1

docker-compose ×1

dockerfile ×1

laravel ×1

laravel-5 ×1

sqlite ×1