MySQL officially, but also called /ma? ?si?kw?l/ “My Sequel”) is the world’s most used open source relational database management system (RDBMS) as of 2008 that runs as a server providing multi-user access to a number of databases.
It is named after co-founder Michael Widenius’ daughter, My. The SQL phrase stands for Structured Query Lang
usage.
The MySQL development project has made its source code available under the terms of the GNU General Public License, as well as under a variety of proprietary agreements. MySQL was owned and sponsored by a single for-profit firm, the Swedish company MySQL AB, now owned by Oracle Corporation.
MySQL is a popular choice of database for use in web applications, and is a central component of the widely used LAMP open source web application software stack (and other ‘AMP’ stacks) . LAMP is an acronym for “Linux, Apache, MySQL, Perl/PHP/Python.” Free-software-open source projects that require a full-featured database management system often use MySQL.
Features
——————————
A broad subset of ANSI SQL 99, as well as extensions
Cross-platform support
Stored procedures
Triggers
Cursors
Updatable Views
Information schema
Strict mode (ensures MySQL does not truncate or otherwise modify data to conform to an underlying data type, when an incompatible value is inserted into that type)
X/Open XA distributed transaction processing (DTP) support; two phase commit as part of this, using Oracle’s InnoDB engine
Independent storage engines (MyISAM for read speed, InnoDB for transactions and referential integrity, MySQL Archive for storing historical data in little space)
Transactions with the InnoDB, and Cluster storage engines; savepoints with InnoDB
SSL support
Query caching
Sub-SELECTs (i.e. nested SELECTs)
Replication support (i.e. Master-Master Replication & Master-Slave Replication) with one master per slave, many slaves per master, no automatic support for multiple masters per slave.
Full-text indexing and searching using MyISAM engine
Embedded database library
Unicode support (however prior to 5.5.3 UTF-8 and UCS-2 encoded strings are limited to the BMP, in 5.5.3 and later use utf8mb4 for full unicode support)
ACID compliance when using transaction capable storage engines (InnoDB and Cluster)
Partitioned tables with pruning of partitions in optimizer
Shared-nothing clustering through MySQL Cluster
Hot backup (via mysqlhotcopy) under certain conditions[
Multiple storage engines, allowing one to choose the one that is most effective for each table in the application (in MySQL 5.0, storage engines must be compiled in; in MySQL 5.1, storage engines can be dynamically loaded at run time):
Native storage engines (MyISAM, Falcon, Merge, Memory (heap), Federated, Archive, CSV, Blackhole, Cluster, EXAMPLE, Maria, and InnoDB, which was made the default as of 5.5)
Partner-developed storage engines (solidDB, NitroEDB, ScaleDB, TokuDB, Infobright (formerly Brighthouse), Kickfire, XtraDB, IBM DB2). InnoDB used to be a partner-developed storage engine, but with recent acquisitions, Oracle now owns both MySQL core and InnoDB.
Community-developed storage engines (memcache engine, httpd, PBXT, Revision Engine)
Custom storage engines
Commit grouping, gathering multiple transactions from multiple connections together to increase the number of commits per second. (PostgreSQL has an advanced form of this functionality)