DBMS > Microsoft SQL Server vs. MySQL vs. Oracle vs. OrigoDB vs. PostgreSQL
System Properties Comparison Microsoft SQL Server vs. MySQL vs. Oracle vs. OrigoDB vs. PostgreSQL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Microsoft SQL Server Xexclude from comparison | MySQL Xexclude from comparison | Oracle Xexclude from comparison | OrigoDB Xexclude from comparison | PostgreSQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Microsofts flagship relational DBMS | Widely used open source RDBMS | Widely used RDBMS | A fully ACID in-memory object graph database | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS Key/Value like access via memcached API | Relational DBMS | Document store Object oriented DBMS | Relational DBMS with object oriented extensions, e.g.: user defined types/functions and inheritance. Handling of key/value pairs with hstore module. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Graph DBMS Spatial DBMS | Document store Spatial DBMS | Document store Graph DBMS with Oracle Spatial and Graph RDF store with Oracle Spatial and Graph Spatial DBMS with Oracle Spatial and Graph Vector DBMS since Oracle 23 | Document store Graph DBMS with Apache Age Spatial DBMS Vector DBMS with pgvector extension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.microsoft.com/en-us/sql-server | www.mysql.com | www.oracle.com/database | origodb.com | www.postgresql.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | learn.microsoft.com/en-US/sql/sql-server | dev.mysql.com/doc | docs.oracle.com/en/database | origodb.com/docs | www.postgresql.org/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Microsoft | Oracle since 2010, originally MySQL AB, then Sun | Oracle | Robert Friberg et al | PostgreSQL Global Development Group www.postgresql.org/developer | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 1989 | 1995 | 1980 | 2009 under the name LiveDB | 1989 1989: Postgres, 1996: PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | SQL Server 2022, November 2022 | 8.3.0, January 2024 | 23c, September 2023 | 16.2, February 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial restricted free version is available | Open Source GPL version 2. Commercial licenses with extended functionallity are available | commercial restricted free version is available | Open Source | Open Source BSD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. | Aiven for PostgreSQL: Fully managed PostgreSQL for developers with 70+ extensions and flexible orchestration tools. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C and C++ | C and C++ | C# | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Windows | FreeBSD Linux OS X Solaris Windows | AIX HP-UX Linux OS X Solaris Windows z/OS | Linux Windows | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | yes Schemaless in JSON and XML columns | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | User defined using .NET types and collections | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | yes | yes | yes | no can be achieved using .NET | yes specific XML-type available, but no XML query functionality. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | yes with proprietary extensions | yes with proprietary extensions | no | yes standard with numerous extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC ODBC OLE DB Tabular Data Stream (TDS) | ADO.NET JDBC ODBC Proprietary native API | JDBC ODBC ODP.NET Oracle Call Interface (OCI) | .NET Client API HTTP API LINQ | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# C++ Delphi Go Java JavaScript (Node.js) PHP Python R Ruby Visual Basic | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | C C# C++ Clojure Cobol Delphi Eiffel Erlang Fortran Groovy Haskell Java JavaScript Lisp Objective C OCaml Perl PHP Python R Ruby Scala Tcl Visual Basic | .Net | .Net C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Transact SQL, .NET languages, R, Python and (with SQL Server 2019) Java | yes proprietary syntax | PL/SQL also stored procedures in Java possible | yes | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes | yes | yes Domain Events | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | tables can be distributed across several files (horizontal partitioning); sharding through federation | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | Sharding, horizontal partitioning | horizontal partitioning client side managed; servers are not synchronized | partitioning by range, list and (since PostgreSQL 11) by hash | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes, but depending on the SQL-Server Edition | Multi-source replication Source-replica replication | Multi-source replication Source-replica replication | Source-replica replication | Source-replica replication other methods possible by using 3rd party extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no can be realized in PL/SQL | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | yes not for MyISAM storage engine | yes | depending on model | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID not for MyISAM storage engine | ACID isolation level can be parameterized | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes table locks or row locks depending on storage engine | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Write ahead log | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | yes Version 12c introduced the new option 'Oracle Database In-Memory' | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | Users with fine-grained authorization concept no user groups or roles | fine grained access rights according to SQL-standard | Role based authorization | fine grained access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for SQL Server gives you a fully graphical approach to database management and development. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for SQL Server and many other database management systems. » more | Navicat for MySQL is the ideal solution for MySQL/MariaDB administration and development. » more Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for MySQL and many other database management systems. » more CData: Connect to Big Data & NoSQL through standard Drivers. » more | Navicat for Oracle improves the efficiency and productivity of Oracle developers and administrators with a streamlined working environment. » more Devart ODBC driver for Oracle accesses Oracle databases from ODBC-compliant reporting, analytics, BI, and ETL tools on both 32 and 64-bit Windows, macOS, and Linux. » more | Datasentinel: Platform for Monitoring and Analyzing the performance problems of your PostgreSQL Clusters » more SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more. » more Aiven for PostgreSQL: Fully managed PostgreSQL for developers with 70+ extensions and flexible orchestration tools. » more pgDash: In-Depth PostgreSQL Monitoring. » more Timescale: Calling all PostgreSQL users – the 2023 State of PostgreSQL survey is now open! Share your favorite extensions, preferred frameworks, community experiences, and more. Take the survey today! » more Fujitsu Enterprise Postgres: An Enterprise Grade PostgreSQL with the flexibility of a hybrid cloud solution combined with industry leading security, availability and performance. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for PostgreSQL and many other database management systems. » more Instaclustr: Fully Hosted & Managed PostgreSQL » more Redgate webinars: A series of key topics for new PostgreSQL users. » more CYBERTEC is your professional partner in PostgreSQL topics for over 20 years. As our main aim is to be your single-source all-in-one IT service provider, we offer a wide range of products and services. Visit our website for more details. » more Navicat for PostgreSQL is an easy-to-use graphical tool for PostgreSQL database development. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Microsoft SQL Server | MySQL | Oracle | OrigoDB | PostgreSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL is the DBMS of the Year 2019 The struggle for the hegemony in Oracle's database empire Microsoft SQL Server is the DBMS of the Year | MySQL is the DBMS of the Year 2019 MariaDB strengthens its position in the open source RDBMS market The struggle for the hegemony in Oracle's database empire | MySQL is the DBMS of the Year 2019 The struggle for the hegemony in Oracle's database empire Architecting eCommerce Platforms for Zero Downtime on Black Friday and Beyond | PostgreSQL is the DBMS of the Year 2023 Snowflake is the DBMS of the Year 2022, defending the title from last year Snowflake is the DBMS of the Year 2021 DBCC CLONEDATABASE in Microsoft SQL Server Convert licenses of SQL Servers migrated with AWS Application Migration Service | Amazon Web Services Fortinet FortiClient EMS SQL injection flaw exploited in the wild Microsoft's SQL Managed Instance Offers Full Platform Cloud Solution Microsoft confirms memory leak in March Windows Server security update provided by Google News Vitess Version 19 Released: Ends Support for MySQL 5.7, Improves MySQL Compatibility Oracle Academy continues support for MySQL Community in Hong Kong and Taiwan Unlock insights on Amazon RDS for MySQL data with zero-ETL integration to Amazon Redshift | Amazon Web Services Google advances with vector search in MySQL, leapfrogging Oracle in LLM support General Availability: Azure Database for MySQL Import feature for Azure Database for MySQL Single to Flexible Server ... provided by Google News Blog Theme - Details Oracle readies its databases for the AI wave Oracle Database@Azure Expansion: Committing to the Cloud New Oracle Database Survey Shows Customers Satisfied with Current Releases but Concerned with Cost, Effort, and ... Microsoft and Oracle announce that Oracle Database@Azure is now generally available provided by Google News AI GPTs for PostgreSQL Database: Can They Work? Relational Data at the Edge: How Cloudflare Operates Distributed PostgreSQL Clusters General availability: Microsoft Entra ID integration with Azure Cosmos DB for PostgreSQL | Azure updates Introducing OCI Database with PostgreSQL: Completing Our Cloud Database Suite for Every Need PostgreSQL and Databricks founders join forces for DBOS to create a new type of operating system provided by Google News |
Share this page