MySQL vs. PostgreSQL vs. Oracle



Hacker News, Reddit, Stack Overflow Stats

  • 1.11K
  • 8.53K
  • 547K
  • 8.36K
  • 8.23K
  • 94.7K
  • 1.63K
  • 8.97K
  • 106K

GitHub Stats

No public GitHub repository stats available

Description

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 Oracle?

Oracle Database is an RDBMS. An RDBMS that implements object-oriented features such as user-defined types, inheritance, and polymorphism is called an object-relational database management system (ORDBMS). Oracle Database has extended the relational model to an object-relational model, making it possible to store complex business models in a relational database.

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

Pros

Why do developers choose MySQL?
Why do you like MySQL?

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

Why do developers choose Oracle?
Why do you like Oracle?

Cons

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 Oracle?
Downsides of Oracle?

Companies

What companies use MySQL?
3588 companies on StackShare use MySQL
What companies use PostgreSQL?
3084 companies on StackShare use PostgreSQL
What companies use Oracle?
131 companies on StackShare use Oracle

Integrations

What tools integrate with MySQL?
77 tools on StackShare integrate with MySQL
What tools integrate with PostgreSQL?
88 tools on StackShare integrate with PostgreSQL
What tools integrate with Oracle?
15 tools on StackShare integrate with Oracle

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

  • MongoDB - The database for giant ideas
  • Microsoft SQL Server - A relational database management system developed by Microsoft
  • MariaDB - An enhanced, drop-in replacement for MySQL
  • SQLite - A software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine

See all alternatives to MySQL

Latest News

MySQL @ FOSSASIA, 2018
Using dbdeployer in CI tests
Archiving MySQL Tables in ClickHouse
PostgreSQL rocks, except when it blocks: Understandi...
10.2
9.6.7
Related Stack Decisions
Jake Stein
Jake Stein
CEO at Stitch · | 15 upvotes · 806 views
atStitch
PostgreSQL
MySQL
Clojure

The majority of our Clojure microservices are simple web services that wrap a transactional database with CRUD operations and a little bit of business logic. We use both MySQL and PostgreSQL for transactional data persistence, having transitioned from the former to the latter for newer services to take advantage of the new features coming out of the Postgres community.

Most of our Clojure best practices can be summed up by the phrase "keep it simple." We avoid more complex web frameworks in favor of using the Ring library to build web service routes, and we prefer sending SQL directly to the JDBC library rather than using a complicated ORM or SQL DSL.

See more
Zach Coffin
Zach Coffin
Software Developer · | 1 upvotes · 463 views
PostgreSQL

I started using PostgreSQL because I started a job at a company that was already using it as well as @MongoDB. The main difference between the two from my perspective is that postgres columns are a chore to add/remove/modify whereas you can throw whatever you want into a mongo collection. And personally I prefer the query language for postgres over that of mongo, but they both have their merits. Maybe someday I'll be a DBA and have more insight to share but for now there's my 2 cents.

See more
Dan Robinson
Dan Robinson
at Heap, Inc. · | 14 upvotes · 913 views
atHeap
Heap
Node.js
Kafka
PostgreSQL
Citus
#FrameworksFullStack
#Databases
#MessageQueue

At Heap, we searched for an existing tool that would allow us to express the full range of analyses we needed, index the event definitions that made up the analyses, and was a mature, natively distributed system.

After coming up empty on this search, we decided to compromise on the “maturity” requirement and build our own distributed system around Citus and sharded PostgreSQL. It was at this point that we also introduced Kafka as a queueing layer between the Node.js application servers and Postgres.

If we could go back in time, we probably would have started using Kafka on day one. One of the biggest benefits in adopting Kafka has been the peace of mind that it brings. In an analytics infrastructure, it’s often possible to make data ingestion idempotent.

In Heap’s case, that means that, if anything downstream from Kafka goes down, we won’t lose any data – it’s just going to take a bit longer to get to its destination. We also learned that you want the path between data hitting your servers and your initial persistence layer (in this case, Kafka) to be as short and simple as possible, since that is the surface area where a failure means you can lose customer data. We learned that it’s a very good fit for an analytics tool, since you can handle a huge number of incoming writes with relatively low latency. Kafka also gives you the ability to “replay” the data flow: it’s like a commit log for your whole infrastructure.

#MessageQueue #Databases #FrameworksFullStack

See more


Interest Over Time