PostgreSQL 用の PDO ドライバーを Mac にインストールする (Eclipse 用の Zend を使用)
-
09-06-2019 - |
質問
PDO を Mac (OS X 10.5) で動作させるにはどうすればよいですか?私は組み込みの php と Zend/Eclipse の php を使用しています。有用なドライバーがまったく見つからないようです。
解決
最近 PDO_PGSQL ドライバーを Leopard にインストールする必要があり、多数の問題に遭遇しました。答えを探していると、この質問に行き当たりました。現在は正常にインストールされているので、この質問はかなり古いものではありますが、私が見つけたことが、間違いなく同様の問題に遭遇する他の人(私のような)に役立つことを願っています。
最初に行う必要があるのは、 PEARをインストールする, デフォルトでは Leopard にインストールされていないため、まだインストールしていない場合はインストールしてください。
それが完了したら、PECL インストーラーを使用して PDO_PGSQL パッケージをダウンロードします。
$ pecl download pdo_pgsql
$ tar xzf PDO_PGSQL-1.0.2.tgz
(注記:走らなければならないかもしれない pecl
スーパーユーザーとして、つまり sudo pecl
.)
その後、PECL インストーラーは拡張機能を直接インストールできないため、自分で拡張機能をビルドしてインストールする必要があります。
$ cd PDO_PGSQL-1.0.2
$ phpize
$ ./configure --with-pdo-pgsql=/path/to/your/PostgreSQL/installation
$ make && sudo make install
すべてがうまくいけば、「」というファイルができるはずです。pdo_pgsql.so
" 次のようなディレクトリに存在します。"/usr/lib/php/extensions/no-debug-non-zts-20060613/
" (PECL インストールでは、拡張機能をインストールしたディレクトリが出力されているはずです)。
インストールを完了するには、 php.ini
ファイル。「Dynamic Extensions」というラベルの付いたセクションを見つけて、(おそらくコメントアウトされている) 拡張機能のリストの下に次の行を追加します。
extension=pdo_pgsql.so
PHP 拡張機能を初めてインストールすると仮定すると、これを機能させるには 2 つの追加手順を実行する必要があります。まず、 php.ini
, 、 を見つける extension_dir
ディレクティブ (「パスとディレクトリ」の下) を選択し、それをディレクトリに変更します。 pdo_pgsql.so
ファイルがインストールされました。たとえば、私の extension_dir
ディレクティブは次のようになります:
extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20060613"
64 ビット Intel Mac を使用している場合の 2 番目のステップでは、Apache を 32 ビット モードで実行します。(より良い戦略がある場合は知りたいですが、今のところ、これが私が見つけることができる最善のものです。)これを行うには、次の場所にあるプロパティ リスト ファイルを編集します。 /System/Library/LaunchDaemons/org.apache.httpd.plist
. 。次の 2 行を見つけます。
<key>ProgramArguments</key>
<array>
その下に次の 3 行を追加します。
<string>arch</string>
<string>-arch</string>
<string>i386</string>
ここで、Apache を再起動するだけで、PDO_PGSQL が起動して実行されます。
他のヒント
この PECL パッケージを見てください。 PDO_PGSQL
私自身は試したことはありませんが、MySQL の代替として Postgres を使ってみることに興味がありました。すぐに試す機会があれば、役立つかもしれないので、結果をここに投稿します。
これが特に PDO ドライバーに役立つかどうかはわかりませんが、調べてみるとよいでしょう。 BitNamiのMAPPStack.
Mac 上の Postgres、PHP、および Apache で多くの問題が発生しました。その一部は、それらの一部またはすべての 64 ビット バージョンと 32 ビット バージョンに関係していました。これまでのところ、BitNami MAPPStack のインストールは概ねうまく機能しています。もしかしたら、PDO の問題にも役立つかもしれません。
brew で新しい php バージョンをインストールし、サーバーを再起動し、php -v を実行すると、すべての問題が解決されます。
これが私にとってうまくいきました
brew install php55-pdo-pgsql
これにより、PHP 5.5.32 と PostgreSQL 9.5 がインストールされます。すでに PostgreSQL 9.4 がインストールされていたため、次のコマンドを使用して自作バージョンをアンインストールしました。
brew uninstall postgres
次に、正しい PHP バージョンを指すように /etc/apache2/httpd.conf を更新し、Apache を再起動する必要があります。
LoadModule php5_module /usr/local/Cellar/php55/5.5.32/libexec/apache2/libphp5.so
私のOSXバージョンはYosemiteです。