2009-09-03 6 views
2

Juste eu une discussion au travail sur les avantages d'utiliser PostgreSQL sur MySQL et vice-versa. Est-ce que quelqu'un a une expérience pratique lorsqu'il existe une raison valable d'utiliser l'un plutôt que l'autre? Certaines personnes disaient que Postgre est meilleur pour la sécurité alors que MySQL devient de plus en plus riche en fonctionnalités ... Je ne sais pas quoi en faire.Quel est le meilleur SGBD pour le travail?

Répondre

5

La question n'est pas de savoir quel est le meilleur, mais quel est le meilleur pour l'usage que vous voulez faire.

Si vous n'avez pas besoin de cohérence transactionnelle, mySQL peut donner de meilleures performances. Si vous le faites, PostgreS peut être plus rapide. Si vous avez besoin d'une recherche spatiale, PostgreS. Tables de plus de 2 Go, PostgreS. Index Bitmap, PostgreS. INTERSECT, PostgreS.

... cela pourrait continuer ad-nauseum. Et puis nous arrivons à la question du «meilleur», et cela suppose que mySQL ou PostgreS sont les deux seules options. Parfois, SQLite est le meilleur. Ou Oracle. Ou même un moteur de stockage qui n'est pas un SGBDR.

(et notez que je l'ai dit « pourrait » donner de meilleures performances - juste parce que l'on est généralement plus rapide ne signifie pas que ce sera plus rapide pour la façon dont vous allez être stresser)

+3

Je suis sûr que vous vouliez dire Postgres pour la recherche spatiale, non? PostGIS a beaucoup plus de fonctionnalités que MySQL. Et dans MySQL, les requêtes spatiales ne sont supportées que sur MyISAM, donc Bye Bye Core les fonctionnalités de base de données comme les transactions. –

1

Il peut aussi dépendre de votre point de vue ...

Si vous étiez un employeur, vous voudriez assurer le taux d'adoption le plus élevé possible afin que vous puissiez trouver des développeurs qui peuvent travailler.

Si vous êtes un développeur, les fonctionnalités, la documentation et la communauté sont importantes.

Si vous êtes un architecte, la sécurité, les fonctionnalités et l'évolutivité sont importantes.

Si vous êtes l'utilisateur final. Tu t'en fous!

+0

Comment est-ce une réponse? ;-) –

+0

L'utilisateur final ne s'en souciera peut-être pas, mais le patron de l'utilisateur final s'en souciera. –

+0

Expliquez pourquoi le patron de l'utilisateur final se soucie de la technologie de base de données que vous utilisez. – Fenton

1

Jetez un oeil à this avis qu'il vient de Postgresql.org si

1

La réponse simple est que Postgres mieux pour les caractéristiques et la sécurité.

Cependant, MySQL est beaucoup plus populaire, donc il est plus susceptible d'être directement pris en charge par une application aléatoire, en particulier les applications Web. MySQL prétend également être plus rapide (probablement parce qu'il a moins de fonctionnalités).

Il existe des milliers de pages Web consacrées à ce sujet.

+0

Oui, à un moment donné, mysql était aussi plus léger et était un outil parfait pour créer un site Web de deux pages. Comme "php". Maintenant, les gens continuent à l'utiliser parce qu'ils le font toujours ... –

1

Ce n'est pas vraiment une connaissance de première main, mais ...

D'après ce que je l'ai entendu parler de vitesse:
de MyISAM MySQL est plus rapide que PostgreSQL
PostgreSQL est plus rapide que InnoDB de MySQL

(Notez que je n'ai jamais utilisé PostgreSQL, seulement MySQL)

1

I J'ai utilisé les deux et même les projets migrés de MySQL à PostgreSQL et dans mon expérience, PostgreSQL était le meilleur choix. Pour mes applications, c'était au moins sur le plan de la vitesse avec MySQL et les fonctionnalités nécessaires non trouvées dans MySQL. Cela dit, si MySQL répond à vos besoins, c'est un bon petit dbms et comme les autres dbms continue de s'améliorer.

1
0

Si vous utilisez le SGBD pour le site Web sans besoins transactionnels - votre choix est MySQL avec le moteur MyISAM. Si vous développez le logiciel plus industriel - puis PostgreSQL. La fonctionnalité étonnante de PostgreSQL est l'écriture de procédures stockées dans différents langages, non seulement PL/PgSQL. Il peut y avoir C, Python, PERL ... tout ce que vous voulez et pour lequel le gestionnaire de langue existe.

0

Oracle 9i serveur est très fort RDBMS, et d'apprendre à utiliser un SGBDR, je pense que PostgreSQL est un bon choix.

Questions connexes