Вы можете использовать его, но я бы не рекомендовал его, особенно если вы не знакомы с базой кода Joomla и специфическими особенностями PostgreSQL.
За последние пару месяцев я рассмотрел пару проблем PostgreSQL, как часть моего времени, посвященного Joomla Bug Squad .
Я никогда не использовал его в производстве, но вот некоторые проблемы / что ожидать:
Поддержка нескольких механизмов баз данных - это не просто написание нового драйвера
PostgreSQL НЕ похож на MySQL - MySQL довольно либерален, когда дело доходит до обработки запросов. PostgreSQL нет. Что отлично работает на MySQL, не обязательно работает на PostgreSQL. Наиболее типичные проблемы:
- Последовательности, которые не обновляются, поэтому новые вставки терпят неудачу из-за PK
- Ограничения NOT NULL не позволяют вставлять данные
- при использовании агрегатных функций PostgreSQL требует, чтобы все остальные столбцы были в предложении GROUP BY, а MySQL - нет.
Сторонняя поддержка
Я не хочу говорить все, но большинство разработчиков расширений работают исключительно с MySQL. Вы должны заранее спросить, совместимо ли определенное расширение с PostgreSQL.
Поддержка сообщества довольно низкая
Реальность такова, что на данный момент не так много пользователей, использующих PostgreSQL. Поэтому вся разработка и тестирование в основном выполняются на MySQL. Каждое исправление ошибки требует двух тестеров. Если никто из них не использует PostgreSQL, вероятно, изменение кода вызовет проблему в PostgreSQL.
Сообщается о некоторых ошибках, но с момента поступления отчета, до тех пор, пока кто-то не предложит его исправить и два человека не смогут его проверить, он может пройти очень долго.
Статус в Joomla 3.3.0
(по состоянию на 08.04.2014)
- Вы не можете вставить новые теги (ошибки SQL)
- Вы не можете установить компоненты, которые имеют сервер обновлений. (Ошибки SQL)
- возможное предупреждение журналы
Вещи могут стать лучше для PostgreSQL в Joomla
Даже несмотря на то, что в PostgreSQL сейчас что-то не работает, вы можете внести свой вклад в Joomla, помогая исправить ситуацию.
Проблемы не так уж и плохи, но без поддержки сообщества их невозможно исправить.
Вот что вы можете сделать:
- Проверьте, есть ли какие-либо проблемы, уже представленные относительно вашей проблемы.
- Сообщайте о любых проблемах, делая шаги репликации максимально понятными.
- Вы можете помочь подтвердить новые проблемы (проблемы, помеченные как «Открытые»)
- Вы можете предложить исправление (через запрос на извлечение (PR) на github) для проблем, помеченных как «Подтверждено».
- Вы можете протестировать предложенные исправления (проблемы, помеченные как "Ожидание")
- Тестируйте перед публикацией каждого нового релиза