Amazing Facts About MySQL You Should Know
MySQL can be built and installed manually from source code. In this post, we’ll have a look at different facts and figures of MySQL that makes it one of the most popular RDBMS in the world.
Interesting Facts About MySQL
- It is a relational database management system (RDBMS).
- The development of MySQL began in 1994. It was initially released on 23 May 1995; 26 years ago at the time of writing this post.
- MySQL was initially, created for personal usage from mSQL based on the low-level language ISAM. mSQL or Mini SQL is a lightweight database management system from Hughes Technologies.
- The name MySQL is derived from “My”, the name of co-founder Michael Widenius’s daughter, and “SQL”.
- The relational database management system organization’s data in the form of one or more data tables interlinked with some relationship.
- SQL language is used to create, modify and extract data from the relational database. SQL also controls the users’ access to the database.
- MySQL is free and open-source software under the terms of the GNU General Public License.
- Though MySQL is free and open-source, it is also available under a variety of proprietary licenses.
- Initially, MySQL was owned and sponsored by the Swedish company MySQL AB. In January 2008, Sun Microsystems bought MySQL AB for $1 billion.
- In 2010, Sun Microsystems was acquired by Oracle Corporation.
- In 2010, after the Sun acquisition by Oracle, Michael Widenius forked the open-source MySQL project to create MariaDB.
- MariaDB is based on the same code base as MySQL server 5.5 and aims to maintain compatibility with Oracle-provided versions.
- MariaDB is a community-developed, commercially supported fork of the MySQL, intended to remain free and open-source software under the GNU General Public License.
- MySQL is available under two different editions: the open-source MySQL Community Server and the proprietary Enterprise Server.
- MySQL Enterprise Server includes a series of proprietary extensions which install as server plugins.
- MySQL Enterprise Server shares the version numbering system and is built from the same code base.
- MySQL has a stand-alone client to interact directly with a MySQL database using SQL queries.
- MySQL is used with other programs to implement applications that need relational database capability. e.g. Websites, Desktop applications.
- MySQL is a component of the LAMP web application software stack. LAMP stack consists of Linux, Apache, MySQL, Perl/PHP/Python.
- MySQL powers a lot of big fishes in the tech market. It includes including Facebook, Flickr, MediaWiki, Twitter, YouTube, etc.
- MySQL is written in C and C++.
- MySQL is a cross-platform software.
- MySQL supports all major operating systems, including, Operating system Linux, Solaris, macOS, Windows, FreeBSD.
- Apart from these popular OSs, MySQL also works on many system platforms, including AIX, BSDi, HP-UX, ArcaOS, eComStation, IBM i, IRIX, NetBSD, Novell NetWare, OpenBSD, OpenSolaris, OS/2 Warp, QNX, Oracle Solaris, Symbian, SunOS, SCO OpenServer, SCO UnixWare, Sanos, and Tru64.
- MySQL’s SQL parser is written in yacc. Yacc is a computer program for the Unix operating system developed by Stephen C. Johnson.
- In MySQL Server 5.5, the default storage engine is InnoDB. It supports transactions and referential integrity constraints.
- MySQL 5.5 has improved SMP support. Symmetric multiprocessing or shared-memory multiprocessing (SMP) is a multiprocessor computer hardware and software architecture where two or more identical processors are connected to a single, shared main memory, have full access to all input and output devices.
- MySQL has support for supplementary Unicode character sets utf16, utf32, and utf8mb4.
- MySQL 5.6 was announced in February 2013.
- MySQL 5.6 included features such as performance improvements to the query optimizer, higher transactional throughput in InnoDB, new NoSQL-style Memcached APIs, improvements to partitioning for querying and managing very large tables.
- MySQL 5.6 supports stored procedures. A stored procedure is a subroutine available to applications that access an RDBMS.
- MySQL 5.6 also supports triggers. A trigger is a procedural code that is automatically executed on certain events on a particular table or view.
- MySQL 5.6 also supports cursors. A cursor is a mechanism that enables traversal over the records in a relational database.
- MySQL 5.6 also provides a Performance Schema that collects and aggregates statistics about server execution and query performance for monitoring purposes.
- MySQL 5.6 also introduced a set of SQL Mode options to control runtime behavior, including a strict mode to better adhere to SQL standards.
- MySQL 5.6 also introduced transactions with savepoints when using the default InnoDB Storage Engine.
- MySQL 5.6 also introduced support for SSL and query caching.
- MySQL 5.6 also introduced support for full-text indexing and searching.
- The new InnoDB storage engine also included support for full-text search and improved group commit performance.
- MySQL 5.7 was announced in October 2015.
- MySQL 5.7.8 supports a native JSON data type defined by RFC 7159.
- MySQL Server 8.0 was announced in April 2018.
- MySQL Server 8.0 included support for NoSQL Document Store, atomic and crash-safe DDL sentences and JSON Extended syntax.
- MySQL Server 8.0 also included support for additional functions, such as, JSON table functions, improved sorting, and partial updates.
- MySQL was declared DBMS of the year 2019 from the DB-Engines ranking. The DB-Engines Ranking ranks database management systems by popularity, covering over 340 systems.
- Work on MySQL version 6 was stopped after the Sun Microsystems acquisition.
- On 15 June 2001, NuSphere sued MySQL AB, TcX DataKonsult AB, and its original authors for “breach of contract, tortious interference with third party contracts and relationships and unfair competition”.
- In 2002, MySQL AB sued Progress NuSphere for copyright and trademark infringement.
- In October 2005, Oracle Corporation acquired Innobase OY, the Finnish company that developed the third-party InnoDB storage engine that allows MySQL to provide such functionality as transactions and foreign keys.
- A movement against Oracle’s acquisition of MySQL AB, to “Save MySQL” from Oracle was initiated by Monty Widenius. The petition of 50,000+ MySQL developers and users was filed upon the European Commission to disapprove this acquisition.
- MySQL also has some limitations, such as, when using some storage engines other than the default of InnoDB, MySQL does not comply with the full SQL standard for some of the implemented functionality.
- Up until MySQL 5.7, triggers are limited to one per action/timing.
- No triggers can be defined on views.
- MySQL Workbench is the integrated environment for MySQL.
- MySQL Workbench was developed by MySQL AB. It enables users to graphically administer MySQL databases and visually design database structures.
- Like MySQL, MySQL Workbench is available in two editions, the regular free and open source Community Edition.
- Apart from MySQL Workbench, MySQL has many popular GUI tools, such as Adminer, Database Workbench, DBeaver, DBEdit, HeidiSQL, LibreOffice Base, phpMyAdmin, SQLBuddy, SQLyog, Toad for MySQL, Webmin.
- MySQL Utilities is a set of utilities designed to perform common maintenance and administrative tasks.
- Different programming languages have made available language-specific APIs for accessing the MySQL databases.
- An ODBC interface called MySQL Connector allows additional programming languages to connect with the MySQL servers.
- MySQL can be deployed on cloud computing platforms such as Microsoft Azure, Amazon EC2, etc.
- MySQL can be deployed on a server as a “Virtual machine image”.
- Some cloud platforms provide MySQL “as a service”.
- Some of the popular cloud-based MySQL services are, Azure Database for MySQL, Rackspace, HP Converged Cloud, Heroku, and Jelastic.
- Currently, MySQL has two extremely popular forks, MariaDB and Percona Server for MySQL. Percona Server for MySQL, forked by Percona, aims to retain close compatibility to the official MySQL releases.
- MySQL has some abandoned forks, such, as Drizzle, WebScaleSQL, and OurDelta. Drizzle was a free software/open-source relational database management system (DBMS) that was forked from the now-defunct 6.0 MySQL branch.
- WebScaleSQL was a software branch of MySQL 5.6 and was announced on 27 March 2014 by Facebook, Google, LinkedIn, and Twitter as a joint effort to provide a centralized development structure for extending MySQL.
There is a lot more to discuss about MySQL. Share these amazing facts about MySQL with your friends on social media.
References:
- MySQL Official Website
- MySQL GITHUB Repository
- Wikipedia
- What is MySQL?
- History of MySQL
- MyRocks: Space- and write-optimized MySQL database
- Using, Abusing and Scaling MySQL at Flickr
- The Infrastructure Behind Twitter: Scale
- Sun Picks Up MySQL For $1 Billion; Open Source Is A Legitimate Business Model
- MySQL Database Service
- OurDelta produced enhanced builds for MySQL 5.0 and builds for MariaDB 5.1
- Changes in MySQL 8.0.25 (2021-05-11, General Availability)
- DB-Engines Ranking of Relational DBMS