MySQL Introduction, Features and History
Introduction
MySQL is an Open-Source, fast reliable and flexible, and easy-to-use RDBMS being used for many small and big businesses. It is developed and supported by MySQL AB, a Swedish Company, and is written in the C and C++ programming languages. It was created by Michael Widenius and David Axmark in 1994. MySQL is named after co-founder Monty Widenius's daughter, My.
MYSQL is compatible with a variety of operating systems, including Windows, Linux, and macOS. MySQL is a Structured Query Language that allows you to manipulate, manage, and extract data using various Queries. It is supported by Oracle in 2010.
MySQL is offered under two different editions: the open-source MySQL Community Server and the proprietary Enterprise Server. MySQL Enterprise Server is differentiated by a series of proprietary extensions which install as server plugins, but otherwise shares the version numbering system and is built from the same code base.
Features:
- MySQL is free to use, Download from the MySQL official website.
- MySQL consists of a solid data security layer that protects sensitive data from intruders. Also, passwords are encrypted in MySQL.
- A client/server architecture is followed by MySQL. A database server (MySQL) and an unlimited number of clients (application programs) connect with the server, allowing them to query data, save changes, and etc.
- MySQL supports multi-threading that makes it easily scalable. MySQL supports large databases, up to 50 million rows or more in a table. The default file size limit for a table is 4GB, but you can increase this to a theoretical limit of 8 million terabytes (TB).
- MySQL supports a large number of embedded applications, which makes MySQL very flexible.
- MySQL version 8.0 provides support for dual passwords: one is the current password, and another is a secondary password, which allows us to transition to the new password.
- MySQL comes with the assurance of 24X7 uptime and offers a wide range of high availability solutions like specialized cluster servers and master/slave replication configurations.
History:
First internal Release on 23 May 1995
3.19 End of 1996
3.20 Jan 1997
3.21 1998
3.22 1998
3.23 22 Jan 2001
4.0 Mar 2003 (set operators)
4.1 Oct 2004 (subqueries, B-Trees and R trees)
5.0 Oct 2005 (cursors, stored procedures, triggers and views)
Sun Microsystems Acquired MySQL AB in 2008
5.1 Nov 2008 (event scheduler, partitioning, plugin API, row-based replication, server log tables)
Oracle acquired Sun Microsystems on 27 January 2010 - The day Oracle announced the purchase of Sun, Michael "Monty" Widenius forked MySQL, launching MariaDB, and took a swath of MySQL developers with him.
Release | General availability | Latest minor version | Latest release | End of support |
5.1 | 14 November 2008 | 5.1.73 | 2013-12-03 | Dec 2013 |
5.5 | 3 December 2010 | 5.5.62 | 2018-10-22 | Dec 2018 |
5.6 | 5 February 2013 | 5.6.51 | 2021-01-20 | Feb 2021 |
5.7 | 21 October 2015 | 5.7.37 | 2022-01-18 | Oct 2023 |
8.0 | 19 April 2018 | 8.0.29 | 2022-04-26 | Apr 2026 |
MySQL 8.0 Features:
- MySQL incorporates a transactional data dictionary that stores information about database objects.
- An atomic DDL statement combines the data dictionary updates, storage engine operations, and binary log writes associated with a DDL operation into a single, atomic transaction.
- The MySQL server automatically performs all necessary upgrade tasks at the next startup to upgrade the system tables in the mysql schema, as well as objects in other schemas such as the sys schema and user schemas. It is not necessary for the DBA to invoke mysql_upgrade.
- It supports the creation and management of resource groups, and permits assigning threads running within the server to particular groups so that threads execute according to the resources available to the group.
- Table encryption can now be managed globally by defining and enforcing encryption defaults. The default_table_encryption variable defines an encryption default for newly created schemas and general tablespace. Encryption defaults are enforced by enabling the table_encryption_privilege_check variable.
- The default character set has changed from latin1 to utf8mb4.
- It supports the use of expressions as default values in data type specifications. This includes the use of expressions as default values for the BLOB, TEXT, GEOMETRY, and JSON data types.
- Error logging was rewritten to use the MySQL component architecture. Traditional error logging is implemented using built-in components, and logging using the system log is implemented as a loadable component.
- A new type of backup lock permits DML during an online backup while preventing operations that could result in an inconsistent snapshot. The new backup lock is supported by LOCK INSTANCE FOR BACKUP and UNLOCK INSTANCE syntax. The BACKUP_ADMIN privilege is required to use these statements.
- MySQL Server now permits a TCP/IP port to be configured specifically for administrative connections. This provides an alternative to the single administrative connection that is permitted on the network interfaces used for ordinary connections even when max_connections connections are already established.
- It supports invisible indexes. This index is not used by the optimizer and makes it possible to test the effect of removing an index on query performance, without removing it.
- Document Store for developing both SQL and NoSQL document applications using a single database.
- MySQL 8.0 makes it possible to persist global, dynamic server variables using the SET PERSIST command instead of the usual SET GLOBAL one.
Comments
Post a Comment