Skip to main content
v2026.11,858 entries · CC-BY 4.0

Direct comparison

MySQL vs PostgreSQL for Research Data

MySQL vs PostgreSQL: both are ACID with MVCC, but default isolation, licensing and native data types differ. Sourced table for research databases.

Written and maintained by CASRAI Editorial Board

Last updated

Ask CASRAI · free to try

Ask about MySQL vs PostgreSQL for Research Data

Ask your first 2 questions free below. Subscribers get 150 a day for $29 a month.

An AI assistant specialized in research administration. It cites the sources behind every answer, labels web answers and says when it can't answer.

Answers draw on CASRAI's guides and dictionary plus the federal and funder documents we index: Federal Register, Grants.gov, Regulations.gov and UKRI.

Works on this site and inside Claude, Cursor and the AI tools you already use.

Everything CASRAI publishes — this page, the dictionary, the guides and the news — stays free to read, with no account and no card.

How do MySQL, PostgreSQL compare side by side?

The table below compares MySQL, PostgreSQL across 9 procurement-relevant dimensions, from licence through source.

Side-by-side comparison

DimensionMySQLPostgreSQL
LicenceDual licensed: open source under the GNU GPL, or a standard commercial licence from Oracle. MySQL is a trademark of Oracle Corporation.Free and open source, described as highly extensible: you can define your own data types, custom functions and code in other languages.
ACID transactions by defaultYes. InnoDB is the default storage engine in MySQL 8.4, and its DML operations follow the ACID model with commit, rollback and crash recovery.Yes. PostgreSQL states it has been ACID-compliant since 2001.
Concurrency controlInnoDB uses row-level locking; its feature table lists MVCC (multi-version concurrency control) as supported.Multi-Version Concurrency Control (MVCC) is listed among its core features.
Default isolation levelREPEATABLE READ (InnoDB).READ COMMITTED.
Isolation levels offeredAll four SQL:1992 levels.Four can be requested, but only three are distinct internally: READ UNCOMMITTED behaves like READ COMMITTED.
Strictest level (SERIALIZABLE)Offered as one of the four SQL:1992 isolation levels.Implemented as Serializable Snapshot Isolation.
Release documented hereMySQL 8.4 reference manual.PostgreSQL 18 (released September 2025) conforms to at least 170 of the 177 mandatory SQL:2023 Core features; the project states no relational database meets full conformance.
When to pick itYour institution already runs MySQL, or Oracle's dual-licence terms are acceptable. The repeatable-read default means you should state the isolation level explicitly in analysis scripts so results do not depend on it.You want array, range, UUID or JSONB columns, a single open-source licence, or the closest documented SQL:2023 conformance. Because READ COMMITTED is the default, request REPEATABLE READ or SERIALIZABLE explicitly when an analysis needs a consistent snapshot.
SourceMySQL 8.4 Reference Manual: dev.mysql.com/doc/refman/8.4/en/introduction.html, innodb-introduction.html and innodb-transaction-isolation-levels.html (read 2026-10-29).postgresql.org/about and postgresql.org/docs/current/transaction-iso.html (read 2026-10-29).

Common questions

Common questions about MySQL vs PostgreSQL

Is MySQL ACID compliant?

+

Yes, with its default storage engine. The MySQL 8.4 manual states that InnoDB is the default storage engine and that its DML operations follow the ACID model, with commit, rollback and crash-recovery capabilities.

Does MySQL support MVCC?

+

InnoDB does. The MySQL 8.4 manual's InnoDB feature table lists MVCC as supported, with row-level locking granularity.

Which has the stricter default isolation level?

+

MySQL's InnoDB defaults to REPEATABLE READ; PostgreSQL defaults to READ COMMITTED. Both can be set to other levels, so analysis code that depends on a particular level should set it explicitly.

Is PostgreSQL free for institutional use?

+

PostgreSQL describes itself as free and open source. MySQL is dual licensed: open source under the GNU GPL, or under a standard commercial licence from Oracle.

Does PostgreSQL support JSON and array columns?

+

Yes. The PostgreSQL about page lists Array, Range and Multirange, UUID, JSON/JSONB, XML and key-value (hstore) types, and says users can define their own data types.

How standard is PostgreSQL's SQL?

+

As of the version 18 release in September 2025, PostgreSQL states it conforms to at least 170 of the 177 mandatory features for SQL:2023 Core, and notes that no relational database meets full conformance.

Referenced across the research world

University of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logoUniversity of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logo
  • University of Cambridge logo
  • Columbia University logo
  • Crossref logo
  • University of Edinburgh logo
  • Harvard University logo
  • University of Oxford logo
  • Princeton University logo
  • Stanford School of Medicine logo
  • University College London logo
  • ORCID logo

View CASRAI adoption →

Ask CASRAI · Regulatory Radar

Research-admin question? Get an answer that links its sources.

An AI assistant specialized in research administration. Every answer links its sources to check before you act. 2 questions free, no account. $29/month after.

  • Answers draw on CASRAI's guides and dictionary plus the federal and funder documents we index: Federal Register, Grants.gov, Regulations.gov and UKRI.
  • Every answer numbers its sources and links each one, so you can check the source yourself.