FuelPHPにMySQL接続で「PDOException: could not find driver」の対処法

FuelPHPにMySQL接続で「PDOException: could not find driver」の対処法

環境構築

Vagrant+VirtualBoxで仮想サーバを立ち上げ、CentOS7環境を構築。ApacheとMySQLをインストールし、ローカルのFuelPHPプロジェクトとMySQLを接続する。

実行環境

実行環境は以下の通り。Apacheは既に起動し、MySQLの設定が完了した前提。

  • Window7(ホスト)
  • VirtualBox5.0.16
  • Vagrant1.9.6
  • CentOS7(ゲスト)
  • FuelPHP 1.7.2
  • PHP 7.0.31
  • MySQL 5.6.40
  • Apache 2.4.6t

 

db.phpの編集

ローカルで開発しているFuelPHPプロジェクトとMySQLを接続するための設定を行う。作成したデータベースやMySQLユーザの情報を以下のように記述する。

・fuel\app\config\development\db.php

Apacheを再起動し、アプリケーションを動かしてみるもエラー。

 

「PDOException: could not find driver」エラーと対処法

早速ログを確認してみると「PDOException: could not find driver」で、ドライバーが見つからないとのこと。

FulePHPプロジェクトのindex.php上部に以下を書き込み、PHPの環境設定情報を表示する。

・index.php

再起動して、あらためてブラウザで開くとPHPの環境設定情報が表示される。

案の定PDO driversに「mysql」がなかったため、こちらを参考にphp-mysqlndを入れた。

参考:PHP7+Nginx+MariaDBでPDO接続したとき”could not find driver”が出た際にやったこと

 

php-mysqlndをインストール

正常にインストールされたか確認

php-fpmとApacheを再起動

PDO driversに「mysql」入っていることを確認し、再度開くと無事接続されました。