Як додати підтримку Postgres до PHP, встановленого Homebrew?


18

Я вже встановив та налаштував нову версію PHP з Homebrew, включаючи підтримку MySQL та XDebug. Це прекрасно працює. Однак мені також потрібно встановити підтримку PostgreSQL. Як я можу це зробити?

Я зрозумів, що легко вперше встановити PHP, просто додавши параметр:

homebrew install php53 --with-pgsql

Як я можу досягти чогось подібного, коли мій PHP вже встановлений, не встановлюючи його повністю? Або якщо я перевстановлюю, чи зберігаються всі конфігурації та додаткові параметри, такі як XDebug?


Те саме стосується --with-mysql, я думаю ...

Відповіді:


22

brew helpне показує кожен доступний варіант Щоб отримати детальнішу інформацію про всі доступні команди, див man brew. У вашому випадку ви можете запустити команду перевстановлення:

brew reinstall php53 --with-postgresql

За даними сторінки brew man, це синонім запуску видалення та встановлення. Здається, Brew спочатку створить резервну копію відомих файлів конфігурації.

Якщо пивовар скаржиться на те, що його не вдається знайти pg_config, то це означає, що postgresqlспочатку потрібно встановити - це має бути postgresql; інакше він ніколи не знайдеться pg_config. Я витратив непомірну кількість часу, намагаючись з’ясувати, чому --with-pgsqlб не працювати, коли в мене були postgresql92встановлені формули.

Я особисто можу підтвердити, що він не видалить будь-які власні файли конфігурації.


5
--with-pgsql застаріло. Використовуйте --with-postgresql
tinkerr

Це безумовно спрацювало для мене!
GavinoGrifoni


3

Якщо ви використовуєте домашню мову:

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

Як ви можете бачити, що моя домашня версія призначена для PHP 5.4, тому я шукаю домашню мову за допомогою:

brew search php54

У результатах пошуку я бачу php54-pdo-pgsql.

Отже, я встановлюю драйвер із:

brew install php54-pdo-pgsql

Потім перезапустіть PHP.


3

Thy Follow на Mac OS X, якщо у вас вже встановлений php.

brew install homebrew/php/php55-pdo-pgsql

Я не бачу, як це істотно відрізняється від попередніх відповідей.
kasperd

Вище команди не працювали для мене, це працювало.
Мітуль

2

Якщо ви встановили php з brew, вам доведеться перезапустити php після установки будь-якого модуля:

brew services restart php70

після цього ви можете використовувати новий встановлений модуль.


1

У мене була аналогічна проблема з PHP55, і я вирішив її з видаленням (видалення заварки php55) та перевстановленням (встановити варити php55 --with-postgresql).


0

Подібно до вищезазначених відповідей, хоча жоден із них не працював досить добре в моєму випадку, я використовував, brew reinstall php70 --with-postgresqlа не знімати / встановлювати, що не вдалося через пов'язані залежності.

Дотримуйтесь цього, brew services restart php70як було запропоновано вище, і sudo apachectl restartдля хорошої міри.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.