(apply-generic op . args)

教育者, 将軍, 栄養士, 心理学者, 親はプログラムする. 軍隊, 学生, 一部の社会はプログラムされる. - 計算機プログラムの構造と解釈 序文

古いMacBookProにpostgresqlを入れる

古いって行っても、2009年とか。initdbでエラーが出て、ぐぐったら日本の情報が殆ど無かったので他の人のためにメモ。

2012年モデルのMacMiniだと出なかったから、必要ないかもしれないけどw

エラー

initdb /usr/local/var/postgres
... This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory or swap space, or exceeded your kernel's SHMALL parameter.

対処方法

/etc/sysctl.conf

を作成。中身は

kern.sysv.shmall=65536

kern.sysv.shmmax=16777216

で、Mac再起動してinitdbしたら無事完了。