문제

Mac(os x 10.5)에서 PDO를 작동시키려면 어떻게 해야 합니까?저는 Zend/Eclipse에 내장된 PHP와 PHP를 사용하고 있습니다.유용한 드라이버를 전혀 찾을 수 없는 것 같습니다.

도움이 되었습니까?

해결책

최근 Leopard에 PDO_PGSQL 드라이버를 설치해야 했고, 수많은 문제에 부딪혔습니다.답을 찾다가 우연히 이런 질문을 발견했습니다.이제 성공적으로 설치되었으므로 이 질문이 꽤 오래되었지만 내가 찾은 내용이 의심할 여지 없이 비슷한 문제에 직면할 다른 사람들(나와 같은)에게 도움이 될 수 있기를 바랍니다.

가장 먼저 해야 할 일은 배를 설치하다, 아직 설치하지 않았다면 기본적으로 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 파일."동적 확장"이라는 섹션을 찾아 (아마도 주석 처리된) 확장 목록 아래에 다음 줄을 추가하세요.

extension=pdo_pgsql.so

이제, 이것이 처음으로 PHP 확장을 설치했다고 가정하면, 이 작업을 수행하려면 두 가지 추가 단계를 수행해야 합니다.먼저, php.ini, 찾기 extension_dir 지시문("경로 및 디렉터리" 아래)을 실행하고 있는 디렉터리로 변경합니다. pdo_pgsql.so 파일이 설치되었습니다.예를 들어, 내 extension_dir 지시어는 다음과 같습니다:

extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20060613"

두 번째 단계는 64비트 Intel Mac을 사용하는 경우 Apache를 32비트 모드에서 실행하는 것입니다.(더 나은 전략이 있다면 알고 싶지만 현재로서는 이것이 제가 찾을 수 있는 최선의 방법입니다.) 이렇게 하려면 다음 위치에 있는 속성 목록 파일을 편집하십시오. /System/Library/LaunchDaemons/org.apache.httpd.plist.다음 두 줄을 찾으세요.

<key>ProgramArguments</key>
<array>

그 아래에 다음 세 줄을 추가하세요.

<string>arch</string>
<string>-arch</string>
<string>i386</string>

이제 Apache를 다시 시작하면 PDO_PGSQL이 실행됩니다.

다른 팁

이 PECL 패키지를 살펴보십시오. PDO_PGSQL

직접 시도해본 적은 없지만 MySQL의 대안으로 Postgres를 사용하는 데 관심이 있었습니다.곧 시도해 볼 기회가 있으면 도움이 될 수 있도록 여기에 결과를 올려 놓겠습니다.

이것이 특히 PDO 드라이버에 도움이 될지 확신할 수 없지만, 다음을 살펴볼 수도 있습니다. 비트나미의 MAPPStack.

저는 Mac에서 Postgres, PHP, Apache에 많은 문제를 겪었습니다. 그 중 일부는 64비트 버전과 32비트 버전 중 일부 또는 전부와 관련이 있었습니다.지금까지 BitNami MAPPStack 설치는 일반적으로 잘 작동하고 있습니다.아마도 PDO 문제에도 도움이 될 것입니다.

Brew 및 재시작 서버와 php -v를 통해 새 PHP 버전을 설치하면 모든 문제가 제거됩니다.

이것이 나를 위해 일한 것입니다

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입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top