Примечание для будущих читателей: текст ниже последний раз редактировался в августе 2008 года. Это почти 11 лет назад на момент редактирования. Программное обеспечение может быстро меняться от версии к версии, поэтому, прежде чем выбирать СУБД на основе приведенного ниже совета, проведите небольшое исследование, чтобы убедиться, что он по-прежнему точен. Проверьте новые ответы ниже.
Лучше?
MySQL гораздо чаще предоставляется веб-хостами.
PostgreSQL - гораздо более зрелый продукт.
Это обсуждение касается вашего «лучшего» вопроса
Очевидно, согласно этой веб-странице , MySQL работает быстро, когда уровни одновременного доступа низкие, и когда операций чтения гораздо больше, чем записи. С другой стороны, он демонстрирует низкую масштабируемость при увеличении нагрузок и соотношений записи / чтения. PostgreSQL относительно медленен на низких уровнях параллелизма, но хорошо масштабируется при увеличении уровней нагрузки, обеспечивая при этом достаточную изоляцию между одновременным доступом, чтобы избежать замедления при высоких соотношениях записи / чтения. Далее идет ссылка на ряд сравнений производительности, потому что эти вещи очень ... чувствительны к условиям.
Итак, если ваш фактор принятия решения - « что быстрее? », То ответ будет «это зависит от обстоятельств . Если это действительно важно, протестируйте свое приложение с обоими». И если вам действительно интересно, вы получите двух администраторов баз данных (один из которых специализируется в каждой базе данных) и попросите их настроить дерьмо из баз данных, а затем выберите. Удивительно, насколько дороги хорошие администраторы баз данных; и они стоят каждого цента .
Когда это важно.
Что, вероятно, не так, поэтому просто выберите ту базу данных, которая вам нравится, и следуйте ей; лучшую производительность можно купить за счет большего количества ОЗУ и ЦП, а также более подходящего дизайна базы данных, умных уловок с хранимыми процедурами и т. д. - и все это дешевле и проще для random-website-X, чем мучения по поводу выбора, MySQL или PostgreSQL , и специализированная настройка от дорогих администраторов баз данных.
Джоэл также сказал в этом подкасте, что комментарий вернется, чтобы укусить его, потому что люди будут говорить, что MySQL - это кусок дерьма - Джоэл не мог получить
count
назад ни одной строки. Множественное число анекдота - это не данные.
Он сказал :
MySQL - единственная база данных, с которой я когда-либо программировал за свою карьеру, у которой были проблемы с целостностью данных, когда вы выполняете запросы и получаете обратно бессмысленные ответы, которые неверны.
и он также сказал:
Это просто анекдот. И это одна из вещей, которые меня расстраивают в блогах или просто в Интернете в целом. [...] Есть просто странная тенденция превращать анекдоты в правду, и на самом деле я, как блоггер, начинаю чувствовать себя немного виноватым по этому поводу
Просто звоните много месяцев спустя.
Географические возможности двух баз данных очень и очень разные. PostgreSQL имеет исключительное расширение PostGIS. По сравнению с этим географическая функциональность MySQL практически равна нулю.
Если в вашем веб-сервисе есть компонент местоположения, выберите PostgreSQL.
источник
Я не использовал Django, но использовал как MySQL, так и PostgreSQL. Если вы будете использовать свою базу данных только как серверную часть для Django, это не имеет большого значения, потому что это абстрагирует большинство различий. PostgreSQL немного более масштабируем, потому что он не достигает кирпичной стены так же быстро, как MySQL, когда увеличивается размер данных / количество клиентов.
Настоящая разница проявляется, если вы делаете новую систему. Тогда я бы порекомендовал PostgreSQL без рук, потому что у него намного больше функций, которые делают ваш уровень БД гораздо более настраиваемым, так что вы можете точно настроить его под любые ваши требования.
источник
Хотя это немного устарело, стоит прочитать страницу MySQL Gotchas . Насколько мне известно, многие из перечисленных там пунктов все еще актуальны.
Я использую PostgreSQL.
источник
Я широко использую оба. Мой выбор для конкретного проекта сводится к:
Под специальным соусом я подразумеваю такие вещи, как:
источник
Что ж, я не думаю, что вам следует использовать другой бренд базы данных в каких-либо прошлых разработках (сборка, постановка, продвижение), поскольку это вернется, чтобы вас укусить.
Насколько я понимаю, PostgreSQL - более «правильная» реализация базы данных, в то время как mySQl менее правильный (менее совместимый), но быстрее.
Так что, если вы в значительной степени пишете приложение CRUD, mySQL - это то, что вам нужно. Если вам требуются определенные функции из вашей базы данных (если вы не уверены, значит, нет), вы можете изучить postgreSQL.
источник
Если вы пишете приложение, которое может довольно часто распространяться на разных серверах, MySQL имеет больший вес по сравнению с PostgreSQL из-за переносимости. PostgreSQL сложно найти на менее чем удовлетворительных веб-хостах, хотя их немного. В большинстве случаев PostgreSQL медленнее MySQL, особенно когда дело доходит до тонкой настройки в конце. В общем, я бы посоветовал дать PostgreSQL шанс на короткое время, чтобы вы не избежали этого полностью, а затем вынесите решение.
источник
Спасибо. Я использовал Django с MySQL, и все в порядке. Выберите свою базу данных по нужным вам функциям. Трудно сравнивать MySQL и Postgres. Лучше сравнить Postgress с SQl Server.
источник
@WolfmanDragon
PostgreSQL имеет (крошечную) поддержку объектов, но по своей природе это реляционная база данных. Со страницы о нем :
источник
MySQL - это система управления реляционными базами данных, а PostgreSQL - это система управления объектно- реляционными базами данных . PostgreSQL хорошо подходит для разработчиков на C ++ или Java, поскольку дает нам больше контроля над написанием запросов. ORDBMS также предоставляет нам объекты и типы, определяемые пользователем. Сами запросы SQL намного ближе к стандартам ISO, чем MySQL.
Вам нужна ORDBMS или RDBMS? Это лучше ответит на ваш вопрос.
источник