Wie füge ich Postgres-Unterstützung zu PHP hinzu, das von Homebrew installiert wurde?

18

Ich habe bereits eine neue Version von PHP mit Homebrew installiert und konfiguriert, einschließlich MySQL-Unterstützung und XDebug. Das funktioniert gut. Ich muss jedoch auch die Unterstützung für PostgreSQL installieren. Wie kann ich es tun?

Ich habe herausgefunden, dass es einfach ist, PHP zum ersten Mal zu installieren, indem ich einfach die folgende Option hinzufüge:

homebrew install php53 --with-pgsql

Wie kann ich etwas Ähnliches erreichen, wenn mein PHP bereits installiert ist, ohne es komplett neu zu installieren? Oder werden bei einer Neuinstallation alle Konfigurationen und zusätzlichen Einstellungen, z. B. XDebug, beibehalten?

Pavel S.
quelle
Das gleiche gilt für - mit-mysql, denke ich ...

Antworten:

22

brew helpzeigt nicht alle verfügbaren Optionen an. Weitere Informationen zu allen verfügbaren Befehlen finden Sie unter man brew. In Ihrem Fall können Sie den Befehl zum erneuten Installieren ausführen:

brew reinstall php53 --with-postgresql

Laut der Handbuchseite für das Brauen ist dies gleichbedeutend mit dem Ausführen der Deinstallation und der anschließenden Installation. Es scheint, dass Brew zuerst bekannte Konfigurationsdateien sichert.

Wenn sich brew darüber beschwert pg_config, dass Sie nicht finden können , müssen Sie dies postgresqlzuerst installieren - es muss sein postgresql; sonst wird es nie finden pg_config. Ich habe übermäßig viel Zeit damit verbracht, herauszufinden, warum --with-pgsqldas nicht funktioniert, wenn ich die postgresql92Formeln installiert habe.

Ich kann persönlich bestätigen, dass keine benutzerdefinierten Konfigurationsdateien entfernt werden.

dohpaz42
quelle
5
--with-pgsql ist veraltet. Verwenden Sie --with-postgresql
tinkerr
Das hat definitiv bei mir funktioniert!
GavinoGrifoni
15

Wenn PHP bereits installiert ist, können Sie es einfach ausführen brew install php55-pdo-pgsql

user219328
quelle
2
Dies ist nur für den Pdo-Treiber, nicht für die Pgsql-Erweiterung
Vinicius Pinto
3

Wenn Sie Homebrew verwenden:

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

Wie Sie sehen können, ist meine Homebrew-Version für PHP 5.4, also suche ich Homebrew mit:

brew search php54

In den Suchergebnissen sehe ich php54-pdo-pgsql.

Also installiere ich den Treiber mit:

brew install php54-pdo-pgsql

Starten Sie dann PHP neu.

Taco
quelle
3

Thy Following unter Mac OS X, wenn Sie bereits PHP installiert haben.

brew install homebrew/php/php55-pdo-pgsql
Mitul
quelle
Ich sehe keinen wesentlichen Unterschied zu früheren Antworten.
Kasperd
Die obigen Befehle haben bei mir nicht funktioniert.
Mitul
2

Wenn Sie PHP mit brew installiert haben, müssen Sie das PHP neu starten, nachdem Sie ein Modul installiert haben:

brew services restart php70

Danach können Sie das neu installierte Modul verwenden.

Ricardo
quelle
1

Ich hatte ein ähnliches Problem mit PHP55 und löste es mit der Deinstallation (brew uninstall php55) und der Neuinstallation (brew install php55 --with-postgresql).

Asle
quelle
0

Ähnlich wie bei den obigen Antworten, obwohl keine davon in meinem Fall recht gut genug funktionierte, habe ich brew reinstall php70 --with-postgresqlstatt un / install verwendet, was aufgrund verknüpfter Abhängigkeiten fehlgeschlagen ist.

Folgen Sie dem brew services restart php70wie oben vorgeschlagen und sudo apachectl restartfür eine gute Maßnahme.

Danjah
quelle