DBMS > IBM Db2 vs. Microsoft SQL Server vs. MySQL vs. Oracle vs. PostgreSQL
System Properties Comparison IBM Db2 vs. Microsoft SQL Server vs. MySQL vs. Oracle vs. PostgreSQL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | IBM Db2 formerly named DB2 or IBM Database 2 Xexclude from comparison | Microsoft SQL Server Xexclude from comparison | MySQL Xexclude from comparison | Oracle Xexclude from comparison | PostgreSQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Common in IBM host environments, 2 different versions for host and Windows/Linux | Microsofts flagship relational DBMS | Widely used open source RDBMS | Widely used RDBMS | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS Since Version 10.5 support for JSON/BSON documents compatible with MongoDB | Relational DBMS | Relational DBMS Key/Value like access via memcached API | Relational 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 RDF store in Db2 LUW (Linux, Unix, Windows) Spatial DBMS with Db2 Spatial Extender | 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.ibm.com/products/db2 | www.microsoft.com/en-us/sql-server | www.mysql.com | www.oracle.com/database | www.postgresql.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.ibm.com/docs/en/db2 | learn.microsoft.com/en-US/sql/sql-server | dev.mysql.com/doc | docs.oracle.com/en/database | www.postgresql.org/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | IBM | Microsoft | Oracle since 2010, originally MySQL AB, then Sun | Oracle | PostgreSQL Global Development Group www.postgresql.org/developer | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 1983 host version | 1989 | 1995 | 1980 | 1989 1989: Postgres, 1996: PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 12.1, October 2016 | SQL Server 2022, November 2022 | 9.0.0, July 2024 | 23c, September 2023 | 16.4, August 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial free version is available | 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 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. | SQLServer Flex @ STACKIT offers a managed version of SQL Server with adjustable CPU, RAM, storage amount and speed, in enterprise grade to perfectly match all application requirements. All services are 100% GDPR-compliant. | PostgreSQL Flex @ STACKIT offers managed PostgreSQL Instances with adjustable CPU, RAM, storage amount and speed and several extensions available, in enterprise grade to perfectly match all application requirements. All 100% GDPR-compliant. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C and C++ | C++ | C and C++ | C and C++ | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | AIX HP-UX Linux Solaris Windows z/OS | Linux Windows | FreeBSD Linux OS X Solaris Windows | AIX HP-UX Linux OS X Solaris Windows z/OS | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | yes | yes Schemaless in JSON and XML columns | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | 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 | yes specific XML-type available, but no XML query functionality. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | yes | yes with proprietary extensions | yes with proprietary extensions | yes standard with numerous extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC JSON style queries MongoDB compatible ODBC XQuery | 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) | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Cobol Delphi Fortran Java Perl PHP Python Ruby Visual Basic | 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 C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | Transact SQL, .NET languages, R, Python and (with SQL Server 2019) Java | yes proprietary syntax | PL/SQL also stored procedures in Java possible | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding only with Windows/Unix/Linux Version | tables can be distributed across several files (horizontal partitioning); sharding through federation | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | Sharding, horizontal partitioning | partitioning by range, list and (since PostgreSQL 11) by hash | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes with separate tools (MQ, InfoSphere) | yes, but depending on the SQL-Server Edition | Multi-source replication Source-replica replication | Multi-source 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 | no can be realized in PL/SQL | 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 | yes not for MyISAM storage engine | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | ACID not for MyISAM storage engine | ACID isolation level can be parameterized | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes table locks or row locks depending on storage engine | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | 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' | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | 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 | 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 | CData: Connect to Big Data & NoSQL through standard Drivers. » 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 | pgDash: In-Depth PostgreSQL Monitoring. » more SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more. » more CYBERTEC is a premier consulting company that provides open-source database PostgreSQL management and data science solutions. By offering PostgreSQL migrations, administration, design, and more, CYBERTEC provides an all-in-one catalog of powerful PostgreSQL support. It's through this exceptional service, equipped with a team of experts, that the company has established a proven reputation. When it comes to Machine Learning, Artificial Intelligence, and Big Data, CYBERTEC offers services customized for you. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IBM Db2 formerly named DB2 or IBM Database 2 | Microsoft SQL Server | MySQL | Oracle | 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 PASS Data Community Summit PASS Data Community Summit Db2 is a story worth telling, even if IBM won't Data migration strategies to Amazon RDS for Db2 Java's 4 JDBC driver types explained Using Oracle Cloud Infrastructure (OCI) GoldenGate with Db2 for z Database Six new Db2 capabilities DBAs must try today with Db2 11.5.9 provided by Google News Load balancing strategies for Amazon RDS for SQL Server read replicas to scale read workloads and reduce latency SAP offers different way to move SQL Server-based software to the cloud Getting started with delivering generative AI capabilities in SQL Server and Azure SQL Mastering the SQL Server command-line interface How to check your SQL Server version provided by Google News Older PHP & MySQL no longer working in Later Versions Amazon RDS for MySQL zero-ETL integration with Amazon Redshift, now generally available, enables near real-time analytics Upgrading Uber’s MySQL Fleet to version 8.0 HeatWave MySQL – New Capabilities for OLTP Workloads How to get started with MySQL provided by Google News AWS Weekly Roundup: Oracle Database@AWS, Amazon RDS, AWS PrivateLink, Amazon MSK, Amazon EventBridge, Amazon SageMaker and more | Amazon Web Services Microsoft and Oracle enhance Oracle Database@Azure with data and AI integration Oracle Database 23ai now available for Exadata Oracle inks deal with AWS to offer database services Oracle and AWS partner to bring Oracle Database to AWS cloud provided by Google News PostgreSQL 17 accelerates open source database with replication and JSON tables Failing to connect Commento with PostgreSQL PostgreSQL 17 packs big performance and feature enhancements PostgreSQL 17 Gets Incremental Backup, SQL Queries for JSON Essential Strategies for PostgreSQL Upgrade Success provided by Google News |
Share this page