source

Larabel 5 PDOException에서 드라이버를 찾을 수 없음

goodcode 2022. 9. 11. 17:13
반응형

Larabel 5 PDOException에서 드라이버를 찾을 수 없음

Larabel 5를 사용하는 데 문제가 있습니다."php aritsan migrate"를 실행하면 이 오류가 발생함

**************************************
*     Application In Production!     *
**************************************

Do you really wish to run this command? [y/N] y

[PDOException]
could not find driver

응용 프로그램을 실행할 수 있지만 데이터베이스 연결이 필요할 때 이 오류가 발생했습니다.

PDOException in Connector.php line 55:
could not find driver
in Connector.php line 55
at PDO->__construct('mysql:host=localhost;dbname=mydb', 'root', '', array('0', '2', '0', false, false)) in Connector.php line 55
at Connector->createConnection('mysql:host=localhost;dbname=mydb', array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'mydb', 'username' => 'root', 'password' => '', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, 'name' => 'mysql'), array('0', '2', '0', false, false)) in MySqlConnector.php line 22

어떻게 고치죠?

디스트로를 업그레이드한 후 나에게도 같은 일이 일어났다.

입니다.sudo apt-get install php7.0-mysql고쳐주셨어요.

서버에 PDO를 설치해야 합니다.php.ini를 편집한다.phpinfo(), "Loaded Configuration File" 행에서 php.ini 파일 경로를 찾습니다.다음 행을 찾아서 주석 해제합니다(;문자):

;extension=pdo_mysql.so

그런 다음 Apache 서버를 재시작하십시오.상세한 것에 대하여는, 메뉴얼을 참조해 주세요.

Ubuntu 16.04와 PHP 5.6.20을 사용하고 있습니다.

너무 많은 문제가 발생한 후 다음 단계로 이 문제를 해결했습니다.

  1. 발견하다php.ini경유 경로phpinfo()

  2. 언코멘트

    extension=php_pdo_mysql.dll
    
  3. 이 행을 추가하다

    extension=pdo_mysql.so
    
  4. 그 후 실행

    sudo apt-get install php-mysql
    

php 버전에 따라 달라집니다.동작 확인:

php -version

현재 버전에 따라 다음을 실행합니다.

sudo apt-get install php7.2-mysql

sudo apt-get update

Mysql 데이터베이스의 경우

sudo apt-get install php-mysql

포스트그레용SQL 데이터베이스

sudo apt-get install php-pgsql

그리고나서

php artisan migrate

Ubuntu에서 다음 명령을 시도했는데, 이 명령어가 나에게 작동합니다.sudo apt-get install php7.0-mysql

감사합니다.

데이터베이스가 Postgre인 경우SQL이 있고 php7.2가 있는 경우 다음 명령을 실행해야 합니다.

sudo apt-get install php7.2-pgsql

그리고.

php artisan migrate

데이터베이스 유형에 따라 php.ini 파일의 데이터베이스 행을 주석 해제합니다.

MYSQL의 경우

;extension=pdo_mysql

포스트그레스용

;extension=pgsql

문제는 php가 실행되고 있는 컨테이너 내부가 아닌 migrate 명령어를 실행하고 있다는 것입니다.호스트 시스템에서 확장이 올바르게 설정되었지만 설정되지 않았습니다.

ubuntu 20.04에 php8이 설치되어 있는 경우 이 명령을 실행할 수 있습니다.

sudo apt-get install php8.0-mysql

이건 날 속였어

sudo apt install php-mysql

사용 중인 php 버전에 따라 php-module이 설치됩니다.

언급URL : https://stackoverflow.com/questions/35240414/laravel-5-pdoexception-could-not-find-driver

반응형