2014年8月 のアーカイブ
phpenv で入れた PHP に pdo_pgsql をインストール
- 2014/08/23
- murave
実際は前の記事の前にやったんですけど、動かしたいソフトが使っていたのはpdo_pgsqlじゃなかったのでありました。
ということで、環境は前の記事と同じでPostgres.appを使用しててPostgreSQLのバージョンは9.3.5.0。対象のPHPのバージョンは5.5.14です。anyenvもからんでいるのでphpenv単独の場合とは少しディレクトリ構成が違う点にご注意ください。
以下の記事を参考に作業しました。
まずはpeclのサイトからpdo_pgsqlを取ってきて解凍。
$ cd tmp
$ wget http://pecl.php.net/get/PDO_PGSQL-1.0.2.tgz
$ tar zxvf PDO_PGSQL-1.0.2.tgz
$ cd PDO_PGSQL-1.0.2
ぺちぱいず(読み方不明)だ!
$ phpize
こんふぃぎゅあしてめいくしましょう。
$ ./configure --with-pdo-pgsql=/Applications/Postgres.app/Contents/Versions/9.3/bin
$ make
インストール内容を確認してから
$ make test
インストール。
$ make install
有効化するためにpdo_pgsqのためのiniファイルを作成。
$ vim /Users/murave/.anyenv/envs/phpenv/versions/5.5.14/etc/conf.d/pdo_pgsql.ini
内容。
extension=pdo_pgsql.so
php.iniに直接追加してもいいけどphp.iniがリセットされて泣いたりするかもしれないから分けておくといいと思う(経験者)。
確認。
$ php -i | grep pdo_pgsql
phpenv + php-build で php_pgsql を有効化したPHPをインストール
- 2014/08/22
- murave
開発環境のMacでPHPからPostgreSQLにアクセスできなくてアレレ〜となったので入れなおしました。その際のメモをまとめておきます。
Postgres.appを使用しており、PostgreSQLのバージョンは9.3.5.0です。
インストールしたPHPのバージョンは5.5.14。
anyenvもからんでいるのでphpenv単独の場合とは少しディレクトリ構成が違う点にご注意ください。
php_pgsqlを有効にするためにconfigure_optionを追加します。
$ vim /Users/murave/.anyenv/envs/phpenv/share/php-build/definitions/5.5.14
編集します。
configure_option "--with-pgsql" "/Applications/Postgres.app/Contents/Versions/9.3/bin"
install_package "http://php.net/distributions/php-5.5.14.tar.bz2"
install_pyrus
install_xdebug "2.2.5"
enable_builtin_opcache
configure_option “–with-pgsql” の行を追加しました。ここはPostgreSQLの導入状況にあわせる必要があります。
インストールします。
$ phpenv install 5.5.14
インストールしたPHPに切り替えて確認。
$ phpenv global 5.5.14
$ phpenv rehash
$ php -i | grep pgsql
VMware Fusion が入っている Mac での 仮想ディスク(vmdk)縮小
- 2014/08/08
- murave
- Mac
- VMware Fusion
放置していたら仮想マシンが肥大してディスクを超圧迫していました、夏。
そして、ディスクの残容量0と言われた立秋。
Vagrant で使用している Virtual Box の VM がいつの間にか60GBを超えており放置できなくなりました。
検索したところ Virtual Box のツールで .vmdk なファイルを .vdi に変換して縮小する素敵な記事が見つかりました。
Bureimono stdio.h: Vagrant とストレージ容量
でも考えたら、ボクのマシンには VMware Fusion が入っています。vmdkファイルを直接縮小できるよね、たぶん。前にやった気もするし。
ということで、調べて作業した際のメモです。 VMware Fusion は 5.0.5 です。
ゲストOSでゼロクリアを行います(root権限で作業)。
# dd if=/dev/zero of=zero bs=4k
# sync
# rm zero
vmdkファイルの縮小(defragment -> shrink)
$ /Applications/VMware\ Fusion.app/Contents/Library/vmware-vdiskmanager -d target.vmdk
$ /Applications/VMware\ Fusion.app/Contents/Library/vmware-vdiskmanager -k target.vmdk
60GB位あったvmdkファイルが10GB位になりました。
今回はディスクの残容量が少なくなりすぎていて vmware-vdiskmanager を動かすのに苦労しました。そんな状況になる前に対処するようにしないとですね。