MySQL is the most popular open-source database in the world. MySQL is a Relational Database Management System (RDMS) which is used to store data in a relational manner inside different tables. What makes MySQL different is it is production-ready enterprise-level features without a cost or lower costs. The name of the MySQL comes from the creator’s daughter name which is
First, we will start with some information about the MySQL history of how it created and grow up today’s popularity.
- MySQL is created as an open-source database product by MySQL AB in 1995 in Sweden.
- MySQL was priority products where it went open source in 2000 which dropped their revenue about %80.
- MySQL reached 3 million active users at the end of 2002.
- MySQL changed the business model with the dual-licensing model and targeted enterprise market rather than end-users.
- Sun Microsystems acquired MySQL AB for 1 billion USD in 2008.
- Oracle acquired Sun Microsystems as well as MySQL too in 2009.
As its licensing models and services, MySQL has different editions. These editions are created to provide flexible plans for the customers with only required features. Here is the list of currently available MySQL editions. From the list only
MySQL Community Editin is free so others have different licensing costs. This also makes MySQL Community Edition most popular MySQL version.
- MySQL Community Edition
- MySQL Standard Edition
- MySQL Classic Edition
- MySQL Enterprise Edition
- MySQL Cluster CGE
- MySQL Embedded
MySQL Community Edition
As stated previously
MySQL Community Edition is the freely downloaded version of the MySQL. It is licensed under the GPL license and support provided by a huge, helpful community. MySQL Community Edition provides the following features.
- Supports both Relational SQL and NoSQL
- Provides MySQL Document Store
Transactional Data Dictionarywith atomic DDL statement for reliability
Pluggable Storage Engine Architecturesupport like (InnoDB, NDB, MyISAM, etc)
Replicationsupport for performance and scalability
Group Replicationsupport to fault tolerance, automated failover, elasticity
Routerto deliver requests between applications and multiple MySQL servers
Partitioningto improve performance and large database data
Stored Proceduresto improve productivity and lower operation cost
Triggersto enforce complex business rules at the MySQL database
Viewsto filer sensitive data and create new virtual tables
Performance Schemafor performance monitoring and resource consumption
Information Schemafor easy access to the database, table, row information, and metadata
MySQL Connectorsto connect the database from different languages and platforms like C, C++, Python, .Net, PHP, etc.
MySQL Workbenchfor the GUI tool and management tool for MySQL server.
MySQL Standard Edition
MySQL Standard Edition is created for the applications that needing high performance and scalable Online Transaction Processing (OLTP). It has extra features to the MySQL Community Editions.
Fully Integrated InnoDBwhich will make the transactions safe.
Advanced Replicationwill provide enterprise-level replication.
MySQL Classic Edition and MySQL Embedded Edition
MySQL Classic Edition is designed or ISVs, OEMs, and VARs for developing read-intensive applications with the MyISAM engine. This edition has zero administration and high performance with low resource needs. MySQL Classic Edition is ideal for embedded applications which do not need or have client and server communication.
MySQL Enterprise Edition
MySQL Enterprise Edition is the most popular enterprise-level version of MySQL database. It provides all features an enterprise-level database needs. This edition provides advanced features, management tools with technical support. This edition will lower the risk, cost, and complexity of business-critical database operations.
Oracle MySQL Cloud Sericeis built on MySQL Enterprise Edition where the workload can be balanced between on-premise and on cloud
MySQL Document Storeis an engine where scheme-free document database can be created in SQL
MySQL Enterprise Transparent Data Encryption (TDE)enabled data-at-rest encryption for security
MySQL Enterprise Masking and De-identificationwill mask sensitive data and replace real values with substitutes
MySQL Enterprise Backupwill take online “Hot” backups of databases
MySQL Enterprise High Availabilitywill provide HA for multiple database servers
MySQL Enterprise Scalabilitywill load balance users, query and transactions
MySQL Enterprise Authenticationprovides 3rd party and external authentication modules like Active Directory, PAM, etc.
MySQL Enterprise Encryptionwill handle encryption, key generations, digital signatures, and other cryptographic operations
MySQL Enterprise Firewallwill guard against real-time attacks like SQL Injection and provide security monitoring
MySQL Enterprise Auditwill provide policy-based auditing and compliance and create alerts
MySQL Technical Supportservice will provide direct access to the experts 7×24.
MySQL Cluster CGE
MySQL Cluster CGE provides linear scalability and high availability. Also, it has features like in-memory real-time access across partitioned and distributed datasets. Following features are provided by MySQLCluster CGE.
99.9999% Availabilitywill make the database services always available time-critical applications.
In-memory Real-Time Databasewill provide real-time response to the queries and transactions
Auto-partitioning and Scalabilitywill create shards automatically to scale database with extra hardware
Parallel Distributed Query Enginewill provide multiple queries runs at the same time in a parallel manner
SQL and NoSQLsupport will be provided at the same time
Multi-site Clusters with Active&Active Geographical Replicationwill provide Active& Active deployments in a multisite environment
Online Scaling & Schema Upgradessupport active or online scheme changes and scaling without stopping or distributing database services
MySQL Community Edition is the most popular edition. It is provided from the following download page in order to download and install different components into different operating systems like Windows, Linux, Ubuntu, CentOS, etc.
Other paid versions can be downloaded from the following page with a customer account. But also
Trial versions can be downloaded for a test drive too.
PHP and MySQL
PHP is the closest friend of MySQL. PHP is a programming language where a lot of PHP tools, applications, frameworks use MySQL database by default. Both PHP and MySQL are cross-platform applications that can be used in Windows, Linux, MacOS, etc. But generally, the Linux platform is preferred for both PHP and MySQL.
phpMyAdmin is a web GUI created to manage MySQL databases. phpMyAdmin is a free tool that is developed with PHP programming language.
MySQL is the most popular opensource RDMS but there are also different type of alternatives which may provide similar or more features. Here a list of alternatives for MySQL.
PostgreSQLis the most enterprise-ready alternative to MySQL. PostgreSQL can provide more than MySQL but it needs more technical ability for management.
MariaDBis the clone of MySQL which is created for more liberty. MariaDB is compatible with most of the MySQL features and tools.
Firebirdis the embedded database used for serverless applications.