Jak dodać obsługę Postgres do PHP zainstalowanego przez Homebrew?


18

Zainstalowałem już i skonfigurowałem nową wersję PHP z Homebrew, w tym obsługę MySQL i XDebug. To działa dobrze. Jednak muszę również zainstalować obsługę PostgreSQL. Jak mogę to zrobić?

Doszedłem do wniosku, że instalowanie PHP po raz pierwszy jest łatwe, po prostu dodając opcję:

homebrew install php53 --with-pgsql

Jak mogę osiągnąć coś podobnego, gdy mój PHP jest już zainstalowany, bez ponownej instalacji? Lub, jeśli przeinstaluję, czy wszystkie konfiguracje i dodatkowe ustawienia, takie jak XDebug, zostaną zachowane?


To samo dotyczy --with-mysql, jak sądzę ...

Odpowiedzi:


22

brew helpnie pokazuje wszystkich dostępnych opcji. Aby uzyskać więcej informacji o wszystkich dostępnych poleceniach, zobacz man brew. W twoim przypadku możesz uruchomić polecenie ponownej instalacji:

brew reinstall php53 --with-postgresql

Według strony brew man jest to równoznaczne z uruchomieniem deinstalacji, a następnie instalacji. Wygląda na to, że napar najpierw utworzy kopię zapasową znanych plików konfiguracyjnych.

Jeśli brew skarży się na brak możliwości znalezienia pg_config, oznacza to, że musisz postgresqlnajpierw zainstalować - musi być postgresql; inaczej nigdy się nie znajdzie pg_config. Spędziłem nadmiernie dużo czasu próbując dowiedzieć się, dlaczego --with-pgsqlnie miałbym działać, gdy mam postgresql92zainstalowane formuły.

Mogę osobiście potwierdzić, że nie usunie żadnych niestandardowych plików konfiguracyjnych.


5
--with-pgsql jest przestarzałe. Użyj --with-postgresql
tinkerr

To zdecydowanie działało dla mnie!
GavinoGrifoni,


3

Jeśli używasz Homebrew:

ls /usr/local/Cellar/|grep php
php54

Jak widać, moja wersja Homebrew jest przeznaczona dla PHP 5.4, dlatego szukam Homebrew za pomocą:

brew search php54

Widzę w wynikach wyszukiwania php54-pdo-pgsql.

Tak więc instaluję sterownik z:

brew install php54-pdo-pgsql

Następnie uruchom ponownie PHP.


3

Thy Follows na Mac OS X, jeśli masz już zainstalowany php.

brew install homebrew/php/php55-pdo-pgsql

Nie rozumiem, jak to zasadniczo różni się od wcześniejszych odpowiedzi.
kasperd

Powyższe polecenia nie działały dla mnie, to działało.
Mitul

2

Jeśli zainstalowałeś php z brewem, musisz ponownie uruchomić php po zainstalowaniu dowolnego modułu:

brew services restart php70

potem możesz użyć nowego zainstalowanego modułu.


1

Miałem podobny problem z PHP55 i rozwiązałem go poprzez odinstalowanie (brew uninstall php55) i ponowną instalację (brew install php55 --with-postgresql).


0

Podobne do powyższych odpowiedzi, chociaż żadna z nich nie działała wystarczająco dobrze w moim przypadku, użyłem brew reinstall php70 --with-postgresqlzamiast odinstalować, co nie powiodło się z powodu powiązanych zależności.

Postępuj zgodnie z brew services restart php70powyższymi wskazówkami i sudo apachectl restartna wszelki wypadek.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.