はじめに
CakePHP3 ではデフォルトで、Mysql のドライバを参照する設定となっている
そのため、Postgresql を使用予定で php-mysql をインストールしていない場合は、以下のようなエラーが発生する
Database driver Cake\Database\Driver\Mysql cannot be used due to a missing PHP extension or unmet dependency
解決策
/config/app.php を修正
'Datasources' => [
'default' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Postgres',
'persistent' => false,
'host' => 'localhost',
'username' => '★★',
'password' => '★★',
'database' => '★★',
'encoding' => 'utf8',
'timezone' => 'UTC',
'cacheMetadata' => true,
'log' => false,
上記のapp.php
の中に、‘default’と同じように ‘test’ 側も
'driver' => 'Cake\Database\Driver\Postgres'
に変える必要がある。
'test' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Postgres', ...