MySQL vs. PostgreSQL vs. MongoDB

  • 1.11K
  • 8.55K
  • 554K
  • 8.36K
  • 8.45K
  • 97.1K
  • 623
  • 712
  • 111K

What is MySQL?

The MySQL software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software.

What is PostgreSQL?

PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions.

What is MongoDB?

MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
Why do developers choose MySQL?
Why do you like MySQL?

Why do developers choose PostgreSQL?
Why do you like PostgreSQL?

Why do developers choose MongoDB?
Why do you like MongoDB?

What are the cons of using MySQL?
Downsides of MySQL?

What are the cons of using PostgreSQL?
No Cons submitted yet for PostgreSQL
Downsides of PostgreSQL?

What are the cons of using MongoDB?
Downsides of MongoDB?

Want advice about which of these to choose?Ask the StackShare community!

How much does MySQL cost?
How much does PostgreSQL cost?
How much does MongoDB cost?
MongoDB Pricing
What companies use MySQL?
3729 companies on StackShare use MySQL
What companies use PostgreSQL?
3262 companies on StackShare use PostgreSQL
What companies use MongoDB?
2695 companies on StackShare use MongoDB
What tools integrate with MySQL?
80 tools on StackShare integrate with MySQL
What tools integrate with PostgreSQL?
92 tools on StackShare integrate with PostgreSQL
What tools integrate with MongoDB?
43 tools on StackShare integrate with MongoDB

What are some alternatives to MySQL, PostgreSQL, and MongoDB?

  • MariaDB - An enhanced, drop-in replacement for MySQL
  • Microsoft SQL Server - A relational database management system developed by Microsoft
  • SQLite - A software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine
  • Memcached - High-performance, distributed memory object caching system

See all alternatives to MySQL

Tungsten Clustering 6.0.5 and Tungsten Replicator 6....
How to Run and Configure ProxySQL 2.0 for MySQL Gale...
Django Authentication with a MySQL Database— Login, ...
9.5.16
11.2
9.6.12
Building with Patterns: The Tree Pattern
MongoDB Go Driver Tutorial Part 1: Connecting, Using...
Official MongoDB Go Driver Now GA and Ready For Prod...
Related Stack Decisions
Yarn
Redux.js
React
jQuery
vuex
Vue.js
MongoDB
Redis
PostgreSQL
Sidekiq
Rails
#Font-awesome
#Bulma.io

I'm building a new process management tool. I decided to build with Rails as my backend, using Sidekiq for background jobs. I chose to work with these tools because I've worked with them before and know that they're able to get the job done. They may not be the sexiest tools, but they work and are reliable, which is what I was optimizing for. For data stores, I opted for PostgreSQL and Redis. Because I'm planning on offering dashboards, I wanted a SQL database instead of something like MongoDB that might work early on, but be difficult to use as soon as I want to facilitate aggregate queries.

On the front-end I'm using Vue.js and vuex in combination with #Turbolinks. In effect, I want to render most pages on the server side without key interactions being managed by Vue.js . This is the first project I'm working on where I've explicitly decided not to include jQuery . I have found React and Redux.js more confusing to setup. I appreciate the opinionated approach from the Vue.js community and that things just work together the way that I'd expect. To manage my javascript dependencies, I'm using Yarn .

For CSS frameworks, I'm using #Bulma.io. I really appreciate it's minimal nature and that there are no hard javascript dependencies. And to add a little spice, I'm using #font-awesome.

See more
John Kodumal
John Kodumal
CTO at LaunchDarkly · | 13 upvotes · 2276 views
atLaunchDarkly
Kafka
Amazon Kinesis
Redis
Amazon EC2
Amazon ElastiCache
Consul
Patroni
TimescaleDB
PostgreSQL
Amazon RDS

As we've evolved or added additional infrastructure to our stack, we've biased towards managed services. Most new backing stores are Amazon RDS instances now. We do use self-managed PostgreSQL with TimescaleDB for time-series data—this is made HA with the use of Patroni and Consul.

We also use managed Amazon ElastiCache instances instead of spinning up Amazon EC2 instances to run Redis workloads, as well as shifting to Amazon Kinesis instead of Kafka.

See more
Joshua Dean KĂĽpper
Joshua Dean KĂĽpper
CEO at Scrayos UG (haftungsbeschränkt) · | 3 upvotes · 1016 views
atScrayos UG (haftungsbeschränkt)
Sentry
GitLab
PostgreSQL
MariaDB

We primarily use MariaDB but use PostgreSQL as a part of GitLab , Sentry and @Nextcloud , which (initially) forced us to use it anyways. While this isn't much of a decision – because we didn't have one (ha ha) – we learned to love the perks and advantages of PostgreSQL anyways. PostgreSQLs extension system makes it even more flexible than a lot of the other SQL-based DBs (that only offer stored procedures) and the additional JOIN options, the enhanced role management and the different authentication options came in really handy, when doing manual maintenance on the databases.

See more


Interest Over Time