あずきみるくのあずきはニガテ - for Engineer

ひよっこプログラマがやってみたことやハマっちゃったことなど、備忘録的な感じで書いていきます。

PHP5.5 と cakePHP2.5.8 と postgreSQL9.4 と Windows8.1 - 相性わるい?

今回の内容と環境はタイトルの通りです。

ちょっとはまりました。



cakePHP2.5.8 と postgreSQL9.4 と Windows8.1を連携させる時、初めにやったのはいつも通り、php.iniの編集です。

extension=php_pdo_pgsql.dll

という名の拡張モジュールのコメントアウトを外します。

※「php_pgsql.dll」という名のモジュールもあるんだけど、mySQLでやってたPDOが使えそうなので、そのままPDO版を使用しています。
違いについては・・・古いのと新しいの、ぐらいしかわかりません(汗
ごめんなさい。。。



で、「(プロジェクト名)\app\Config\database.phpを編集します。

class DATABASE_CONFIG {

	public $default = array(
		'datasource' => 'Database/Postgres',
		'persistent' => false,
		'host' => 'localhost',
		'port' => '5432',
		'login' => '(ユーザ名)',
		'password' => '(パスワード)',
		'database' => '(データベース名)',
		'schema' => '(スキーマ名)',
		'prefix' => '',
		'encoding' => 'utf8',
	);
}

mySQL接続と異なるポイントは

  • port
  • schema

です。

この2つをちゃんと設定していないとpostgreSQLは動きません。


ここまでは、まぁ、普通ですね。






はまったのはここからです。


これだけやってもPHPInfoにも反映されていないのです。。。

なぜだ?!となりました。



結論から申し上げますと。


  • PHPのパスを通す
  • その後、再起動


この3ステップです。

これで、接続できるようになりました。。。


・・・はぁ~、mySQL使えたらいいのに。。。orz





<先生は神様です>
WindowsとPHPとPostgreSQLの関係 - 老い耄れしんすけ日記