С момента внедрения веб-приложений всегда был необходимость обработки back-end системы, которая могла бы свести к минимуму время отклика любого приложения быстрее запросов. Чтобы эффективно обрабатывать пользователя введенные данные для обработки и хранения, системы управления базами данных были введены, которые могут обрабатывать данные и хранить его вывода.
MySQL, MS Access и PostgreSQL сегодня являются некоторые из самых знаменитых СУБД или СУБД. MS Access, будучи собственностью СУБД является обычно не рассматриваются как увеличивает стоимость развертывания; MySQL и PostgreSQL, будучи открытым исходным кодом СУБД приходят в приоритетный список разработчиков и администраторов.
Оба, MySQL и PostgreSQL, поддерживаются на основных OSs как Linux и Windows и являются бесплатными для использования. Оба легко масштабируемая и могут быть развернуты от небольших до гигантских распределенных приложений. Некоторые из основных веб-приложений, как Facebook и Twitter использовать MySQL как их back-end СУБД и другие как Reddit и Disqus имеют свои системы обработки данных, основанные на PostgreSQL. Выбор между двумя сильно зависит от типа приложения и ожиданий администраторами для различных показателей.
MySQL становится приоритетом разработчиков в ситуациях, когда производительность приложения является главной заботой. С другой стороны для приложений, которые могут включать ссылки на внешние ключи, т.е. для передачи данных из других таблиц в базе данных, PostgreSQL является лучшим решением в такой ситуации.
PostgreSQL предоставляет больше целостность данных в СУБД как он проверяет и обеспечивает достоверность данных; будучи данных ориентированной СУБД. MySQL, с другой стороны, больше фокусируется на производительность и скорость приложения вместо целостность данных.
PostgreSQL можно выполнить триггер из любого процедурного языка для любой определяемой пользователем функции. MySQL, с другой стороны, триггер активируется только инструкции SQL. Это создает проблемы, когда любой API, развернутых в приложении внести изменения в таблицы и триггеры не активирован в этой ситуации.
PostgreSQL поддержку частичной индексации таблицы, которая является функцией благоприятный, когда индекс построен над подмножество таблицы, как это определено пользователем. MySQL не поддерживает эту функцию, и поэтому индексации всей таблицы это необходимо сделать в случае MySQL.
MySQL может обеспечить поддержку для других хранения двигателей в зависимости от характера приложения и его обработки данных потребностей. PostgreSQL с другой стороны это единовременного хранения двигателя в себе и для любого типа приложения, нельзя изменять ее характер.