Puis-je utiliser PostgreSQL avec Joomla 3.3


11

Puis-je utiliser PostgreSQL avec Joomla un site de production 3.3 (pas pour les tests) et si oui, y a-t-il quelque chose que je devrais savoir?

J'apprécierais les commentaires de quelqu'un qui a déjà installé et utilise un site Web Joomla avec une base de données PostgreSQL.

Merci

Réponses:


18

Vous pouvez l'utiliser, mais je ne le recommanderais pas surtout si vous n'êtes pas familier avec la base de code de Joomla et les particularités spécifiques de PostgreSQL.

Au cours des derniers mois, j'ai examiné quelques problèmes liés à PostgreSQL, dans le cadre de mon temps consacré à Joomla Bug Squad .

Je ne l'ai jamais utilisé en production, mais voici quelques problèmes / à quoi s'attendre:

La prise en charge de plusieurs moteurs de base de données ne se limite pas à l'écriture d'un nouveau pilote

PostgreSQL n'est PAS comme MySQL - MySQL est plutôt permissif quand il s'agit de gérer les requêtes. PostgreSQL ne l'est pas. Ce qui fonctionne parfaitement sur MySQL, ne fonctionne pas nécessairement sur PostgreSQL. Problèmes les plus courants:

  • séquences qui ne sont pas mises à jour, donc les nouvelles insertions échouent à cause du PK
  • Les contraintes NOT NULL ne permettent pas l'insertion de données
  • lors de l'utilisation de fonctions d'agrégation, PostgreSQL requiert que toutes les autres colonnes soient dans la clause GROUP BY, pas MySQL.

Support tiers

Je ne veux pas tout dire, mais la plupart des développeurs d'extensions travaillent exclusivement avec MySQL. Vous devez demander à l'avance si une certaine extension est compatible avec PostgreSQL.

Le soutien communautaire est plutôt faible

La réalité est qu'il n'y a pas autant d'utilisateurs utilisant PostgreSQL à ce stade. Donc, tout le développement et les tests se font principalement sur MySQL. Chaque correction de bogue nécessite deux testeurs. Si aucun d'entre eux n'utilise PostgreSQL, il est probable qu'une modification du code causera un problème dans PostgreSQL.

Il y a quelques bugs signalés, mais à partir du rapport qui arrive, jusqu'à ce que quelqu'un se porte volontaire pour le corriger et que deux personnes puissent le tester, cela peut passer très longtemps.

Statut dans Joomla 3.3.0

(au 08.04.2014)

  • vous ne pouvez pas insérer de nouvelles balises (erreurs SQL)
  • vous ne pouvez pas installer de composants dotés d'un serveur de mise à jour. (Erreurs SQL)
  • avertissement possible les journaux

Les choses peuvent s'améliorer pour PostgreSQL dans Joomla

Même si certaines choses sont cassées avec PostgreSQL en ce moment, vous pouvez apporter une contribution à Joomla en aidant à réparer les choses.

Les problèmes ne sont pas si graves, mais sans le soutien de la communauté, ils ne peuvent pas être résolus.

Voici ce que vous pouvez faire:

  • Vérifiez si des problèmes ont déjà été soumis concernant votre problème.
  • Signalez tous les problèmes que vous rencontrez, en rendant les étapes de réplication aussi claires que possible.
  • Vous pouvez aider à confirmer de nouveaux problèmes (problèmes marqués comme "ouverts")
  • Vous pouvez proposer un correctif (via une Pull Request (PR) sur github) pour les problèmes marqués comme "Confirmé".
  • Vous pouvez tester les correctifs proposés (problèmes marqués comme "En attente")
  • Testez avant que chaque nouvelle version ne soit rendue publique

Ah, la négligence de MySQL est contagieuse :-) Je suppose qu'il n'y a alors aucune transaction ou ai-je besoin du moteur de base de données InnoDB?
David Tonhofer

Pas certain. L'API de base de données Joomla possède une interface pour les transactions qui fonctionne avec MySQL. Pas sûr de l'implémentation dans Postgres. Vous devez creuser le problème.
Valentin Despa

La réponse est de 2014. Cette réponse ressemble-t-elle toujours à la situation actuelle?
Ini

@Ini ne peut pas dire que j'ai perdu contact avec la communauté Joomla.
Valentin Despa
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.