Laravel 5.4 no PHP 7.0: DOP Excepção – Não foi possível encontrar driver (MySQL) c

Eu tenho um projeto Laravel 5.4 no meu Ubuntu 14.04 (VPS com Plesk 12.5.30). Depois de criar o database e configurar o arquivo .env com as informações necessárias, executei o php artisan migrate e exceções foram lançadas:

[Iluminar \ Banco de Dados \ QueryException]
Não foi possível encontrar driver (SQL: selecione * de information_schema.tables onde table_schema = pmaramaldb e table_name = migrações)

[PDOException]
não encontrou driver

Meu arquivo .env tem:

DB_CONNECTION = mysql

DB_HOST = 127.0.0.1

DB_PORT = 3306

DB_DATABASE = pmaramaldb

DB_USERNAME = usuário

DB_PASSWORD = senha

Segui a maioria dos guias para resolver esse erro e não houve resultados positivos:

Ativando a Solução de Extensão:

PDO está habilitado

O arquivo php.ini está sendo gerado automaticamente, acho que isso é feito pela Plesk. No início do arquivo, ele diz:

; ATENÇÃO!
;
; NÃO MODIFIQUE ESTE ARQUIVO PORQUE FOI GERADO AUTOMÁTICAMENTE,
; ASSIM TODAS AS SUAS MUDANÇAS SERÃO PERDIDAS NO PRÓXIMO DO ARQUIVO SERÁ GERADO.

Então eu tentei de qualquer maneira. Depois disso, reiniciei o Apache e tentei novamente … Não funcionou.

Instalando php7.0-mysql Solução:

Eu também tentei instalar o MySQL caso não seja:

usuário @ servidor: / var / www / vhosts $ sudo apt-get install php7.0-mysql

Leyendo lista de pacotes … Hecho

Creando árbol de dependencias

Leyendo a informação de estado … Hecho

php7.0-mysql já é a versão mais recente.

0 atualizados, 0 se instalarán, 0 para eliminar e 67 não atualizados.

** Solução de instalação SQL Lite: **

Eu também tentei como um link de pergunta diz: sudo apt-get install php5-sqlite e o resultado foi:

usuário @ servidor: /var/www/vhosts/system/maramal.io/etc$ sudo apt-get install php5-sqlite

Leyendo lista de pacotes … Hecho

Creando árbol de dependencias

Leyendo a informação de estado … Hecho

php5-sqlite já é a versão mais recente.

0 atualizados, 0 se instalarán, 0 para eliminar e 67 não atualizados.

Composer Dump-autoload Solução:

Também não funcionou. Eu tentei o composer dump-autoload e não funcionou.

Depois de executar o comando php -i :

DOP

Suporte PDO => habilitado

Drivers PDO =>

Versão PHP => 5.6.30-1 + deb.sury.org ~ trusty + 1

Bem, não tenho certeza se isso tem algo a ver com o erro, mas a versão exibida executando o php -v é:

usuário @ servidor: ~ / caminho $ php -v

PHP 5.6.30-1 + deb.sury.org ~ trusty + 1 (cli)

Copyright (c) 1997-2016 O Grupo PHP

Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
com Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, por Zend Technologies

Há um conflito entre o PHP que é usado pelo Apache e o PHP que está vinculado à linha de comando. (Isso acontece com mais frequência que deve ser honesto).

O que normalmente é feito é:

 which php 

Isso indica qual php será esperado quando executado na linha de comando. p.ex. /usr/bin/php

 mv /usr/bin/php /usr/bin/php.old 

Em seguida, vincule ou copie a versão correta do PHP para um caminho executável:

 ln -s /path/to/php/bin/php /usr/bin/php 

ou o seguinte também deve funcionar.

 cp /path/to/php/bin/php /usr/bin/php 

Também sugerido se você deseja instalar mods manualmente:

 ln -s /path/to/php/bin/phpize /usr/bin/phpize ln -s /path/to/php/bin/php-config /usr/bin/php-config 

Desta forma, sua CLI irá combinar com seu servidor web.

Como uma solução alternativa, certifique-se de ter instalado o php7-mysql

tente executar o comando abaixo

 sudo apt install php7.0-mysql 

Eu tive o mesmo cenário que você tem. Eu resolvi o seguinte:

1) no seu terminal, digite

php –ini

Isso exibirá seu atual caminho de arquivo de configuração do php.ini.

2) edite php.ini usando vim ou seu editor preferido.

vim /etc/php.ini

observe que /etc/php.ini é o seu arquivo de caminho para o seu php.ini. Pode ser diferente na sua máquina.

3) find ; extension = php_pdo_mysql.dll e descomente dele, removendo o ponto-e-vírgula (;);

4) salve seu php.ini change / s

** 5) reinicie o servidor da Web para aplicar as alterações

sudo systemctl reiniciar apache2

** 6) Agora execute seu comando.

php artisan migrar

Espero que isso ajude para você.

Mesmo problema, ubuntu 17.10, Laravel 5.5.

$ sudo apt install php7.1-pdo php7.1-mysql

insira a descrição da imagem aqui

insira a descrição da imagem aqui

Uma boa solução rápida, espere que isso ajude

Você pode tentar o seguinte comando

do utilizador
php artisan cache: clear
e php artisan config: limpe e reinicie o seu servidor apache. Depois, reconfigure seu arquivo .env

limpar o cache do artesão

 php artisan cache:clear 

e

 php artisan migrate:refresh 

é isso aí

Seu driver de database está faltando. Para resolver a sonda

Primeiro instale o driver

Para ubuntu: Para o database mysql.

 sudo apt-get install php5.6-mysql/php7.2-mysql 

Você também pode procurar outros sistemas de database.

Você também pode procurar o driver:

 sudo apt-cache search drivername 

Na verdade, tenho certeza de que você não está ciente de suas versões PHP e usou os caminhos errados:

Para sua versão PHP do vendedor (5.6 por sury.org), você usaria comandos PHP como “/ usr / bin / php”, mas quando você usa diferentes versões PHP, como, por exemplo, as de Plesk, você tem diferentes caminhos:

 /opt/plesk/php/5.2/bin/php -v /opt/plesk/php/5.3/bin/php -v /opt/plesk/php/5.4/bin/php -v /opt/plesk/php/5.5/bin/php -v /opt/plesk/php/5.6/bin/php -v /opt/plesk/php/7.0/bin/php -v /opt/plesk/php/7.1/bin/php -v 

Seus comandos de PHP para possíveis versões adicionais de PHP (7.0 e 7.1 se você instalou as versões de pypa de PAE de sury.org de https://launchpad.net/~ondrej/+archive/ubuntu/php ) seria:

 /usr/bin/php7.0 -v /usr/bin/php7.1 -v 

Mostre os módulos instalados para cada versão do PHP com a string de opção “-m” e use a seqüência de opção “-i” para obter informações (exemplo):

 /opt/plesk/php/7.0/bin/php -m /opt/plesk/php/7.0/bin/php -i or /usr/bin/php7.0 -m /usr/bin/php7.0 -i 

Para usar o “compositor”, você certamente usará o caminho FULL do seu executável do PHP (exemplo):

 /opt/plesk/php/7.0/bin/php composer-setup.php or /usr/bin/php7.0 composer-setup.php 

O “compositor” adicional – comandos são então:

 /opt/plesk/php/7.0/bin/php composer.phar AND-ADDITIONAL-STRINGS/OPTIONS-TO-BE-INCLUDED or /opt/plesk/php/7.0/bin/php composer.phar AND-ADDITIONAL-STRINGS/OPTIONS-TO-BE-INCLUDED