MySQL: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Topbanana (talk | contribs)
Correcting link to ScaleDB
Line 66: Line 66:


MySQL is written in [[C (programming language)|C]] and [[C++]]. Its SQL parser is written in [[yacc]], and a home-brewed [[Lexical analysis|lexical analyzer]].<ref>{{cite web|url=http://dev.mysql.com/doc/internals/en/index.html |title=MySQL Internals Manual |publisher=Dev.mysql.com |date=4 March 2009 |accessdate=8 June 2009}}</ref> Many [[programming language]]s with language-specific [[application programming interface|API]]s include [[library (computing)|libraries]] for accessing MySQL databases. These include MySQL Connector/Net for integration with Microsoft's [[Visual Studio]] (languages such as [[C Sharp (programming language)|C#]] and [[Visual Basic|VB]] are most commonly used) and the JDBC driver for Java. In addition, an [[ODBC]] interface called [[MyODBC]] allows additional programming languages that support the ODBC interface to communicate with a MySQL database, such as [[Active Server Pages|ASP]] or [[Adobe ColdFusion|ColdFusion]]. The [[HTSQL]] - [[Uniform resource locator|URL]]-based query method also ships with a MySQL adapter, allowing direct interaction between a MySQL database and any web client via structured URLs.
MySQL is written in [[C (programming language)|C]] and [[C++]]. Its SQL parser is written in [[yacc]], and a home-brewed [[Lexical analysis|lexical analyzer]].<ref>{{cite web|url=http://dev.mysql.com/doc/internals/en/index.html |title=MySQL Internals Manual |publisher=Dev.mysql.com |date=4 March 2009 |accessdate=8 June 2009}}</ref> Many [[programming language]]s with language-specific [[application programming interface|API]]s include [[library (computing)|libraries]] for accessing MySQL databases. These include MySQL Connector/Net for integration with Microsoft's [[Visual Studio]] (languages such as [[C Sharp (programming language)|C#]] and [[Visual Basic|VB]] are most commonly used) and the JDBC driver for Java. In addition, an [[ODBC]] interface called [[MyODBC]] allows additional programming languages that support the ODBC interface to communicate with a MySQL database, such as [[Active Server Pages|ASP]] or [[Adobe ColdFusion|ColdFusion]]. The [[HTSQL]] - [[Uniform resource locator|URL]]-based query method also ships with a MySQL adapter, allowing direct interaction between a MySQL database and any web client via structured URLs.
[http://kashifniaz786.blogspot.com/2013/01/php-in-urdu-complete-video-course.html MYSQL in Urdu Complete Video Course]


==Features==
==Features==

Revision as of 12:26, 28 January 2013

MySQL
Developer(s)Oracle (formerly Sun, formerly MySQL AB)
Initial release23 May 1995 (1995-05-23)
Stable release
5.5.29 / 21 December 2012; 11 years ago (2012-12-21)[1]
Preview release
5.6.9 / 11 December 2012; 11 years ago (2012-12-11)[2]
Repository
Written inC, C++[3]
Operating systemCross-platform
Available inEnglish
TypeRDBMS
LicenseGNU General Public License (version 2) or proprietary EULA
Websitewww.mysql.com
dev.mysql.com

MySQL (/[invalid input: 'icon']m ˌɛskjuːˈɛl/ "My S-Q-L",[4] officially, but also called /m ˈskwəl/ "My Sequel") is the world's most used[5] open source relational database management system (RDBMS)[6] 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.[7] The SQL phrase stands for Structured Query Language.[4]

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.[8]

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.

For commercial use, several paid editions are available, and offer additional functionality. Applications which use MySQL databases include: TYPO3, Joomla, WordPress, phpBB, MyBB, Drupal and other software. MySQL is also used in many high-profile, large-scale World Wide Web products, including Wikipedia,[9] Google[10][11] (though not for searches), Facebook,[12][13][14] Twitter,[15] Flickr,[16] Nokia.com,[17] and YouTube.[18]

Interfaces

MySQL Workbench in Windows

MySQL is a relational database management system (RDBMS), and ships with no GUI tools to administer MySQL databases or manage data contained within the databases. Users may use the included command line tools,[19][20] or use MySQL "front-ends", desktop software and web applications that create and manage MySQL databases, build database structures, back up data, inspect status, and work with data records.[21][22][23][24] The official set of MySQL front-end tools, MySQL Workbench is actively developed by Oracle, and is freely available for use.[25]

Graphical

The official MySQL Workbench is a free integrated environment developed by MySQL AB, that enables users to graphically administer MySQL databases and visually design database structures. MySQL Workbench replaces the previous package of software, MySQL GUI Tools. Similar to other third-party packages, but still considered the authoritative MySQL front end, MySQL Workbench lets users manage database design & modeling, SQL development (replacing MySQL Query Browser) and Database administration (replacing MySQL Administrator).

MySQL Workbench is available in two editions, the regular free and open source Community Edition which may be downloaded from the MySQL website, and the proprietary Standard Edition which extends and improves the feature set of the Community Edition.

Third-party proprietary and free graphical administration applications (or "front ends") are available that integrate with MySQL and enable users to work with database structure and data visually. Some well-known front ends, in alphabetical order, are:

  • Adminer – a free MySQL front end written in one PHP script, capable of managing multiple databases, with many CSS skins available.
  • DaDaBIK – a customizable CRUD front-end to MySQL. Written in PHP. Commercial.
  • DBEdit – a free front end for MySQL and other databases.
  • dbForge GUI Tools — a set of tools for database management that includes separate applications for schema comparison and synchronization, data comparison and synchronization, and building queries.
  • HeidiSQL – a full featured free front end that runs on Windows, and can connect to local or remote MySQL servers to manage databases, tables, column structure, and individual data records. Also supports specialised GUI features for date/time fields and enumerated multiple-value fields.[26]
  • LibreOffice Base - LibreOffice Base allows the creation and management of databases, preparation of forms and reports that provide end users easy access to data. Like Access, it can be used as a front-end for various database systems, including Access databases (JET), ODBC data sources, and MySQL or PostgreSQL.[27]
  • Navicat – a series of proprietary graphical database management applications, developed for Windows, Macintosh and Linux.
  • OpenOffice.org – OpenOffice.org Base can manage MySQL databases if the entire suite is installed. Free and open-source.
  • phpMyAdmin – a free Web-based front end widely installed[citation needed] by Web hosts, since it is developed in PHP and is included in the LAMP stack, MAMP, and WAMP software bundle installers.
  • SQLBuddy - a free Web-based front end, developed in PHP.
  • Sequel Pro - a free, open-source front end for Mac OS X.
  • SQLYog - a free community-developed UI for MySQL.
  • Toad for MySQL – a free development and administration front end for MySQL from Quest Software

Other available proprietary MySQL front ends include dbForge Studio for MySQL, DBStudio, Epictetus, Oracle SQL Developer, SchemaBank, SQLPro SQL Client, Toad Data Modeler.

Command line

MySQL ships with many command line tools, from which the main interface is 'mysql' client.[19][20] Third-parties have also developed tools to manage, optimize, monitor and backup a MySQL server, some listed below. All these tools work on *NIX type operating systems, and some of them also on Windows.

  • Maatkit - a cross-platform toolkit for MySQL, PostgreSQL and Memcached, developed in Perl.[28] Maatkit can be used to prove replication is working correctly, fix corrupted data, automate repetitive tasks, and speed up servers. Maatkit is included with several GNU/Linux distributions such as CentOS and Debian and packages are available for Fedora and Ubuntu as well. As of late 2011, Maatkit is no longer developed, but Percona has continued development under the Percona Toolkit brand.[29]
  • XtraBackup - Open Source MySQL hot backup software. Some notable features include hot, non-locking backups for InnoDB storage, incremental backups, streaming, parallel-compressed backups, throttling based on the number of IO operations per second, etc. [30]
  • MySQL::Replication - a replacement for MySQL's built-in replication, developed in Perl.[31] MySQL::Replication can be used to create a peer-to-peer, multi-master MySQL replication network.

Programming

MySQL works on many different system platforms, including AIX, BSDi, FreeBSD, HP-UX, eComStation, i5/OS, IRIX, Linux, Mac OS X, Microsoft Windows, NetBSD, Novell NetWare, OpenBSD, OpenSolaris, OS/2 Warp, QNX, Solaris, Symbian, SunOS, SCO OpenServer, SCO UnixWare, Sanos and Tru64. A port of MySQL to OpenVMS also exists.[32]

MySQL is written in C and C++. Its SQL parser is written in yacc, and a home-brewed lexical analyzer.[33] Many programming languages with language-specific APIs include libraries for accessing MySQL databases. These include MySQL Connector/Net for integration with Microsoft's Visual Studio (languages such as C# and VB are most commonly used) and the JDBC driver for Java. In addition, an ODBC interface called MyODBC allows additional programming languages that support the ODBC interface to communicate with a MySQL database, such as ASP or ColdFusion. The HTSQL - URL-based query method also ships with a MySQL adapter, allowing direct interaction between a MySQL database and any web client via structured URLs. MYSQL in Urdu Complete Video Course

Features

As of April 2009, MySQL offered MySQL 5.1 in two different variants: the open source MySQL Community Server and the commercial Enterprise Server. MySQL 5.5 is offered under the same licences.[34] They have a common code base and include the following 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)[35]
  • Partitioned tables with pruning of partitions in optimizer
  • Shared-nothing clustering through MySQL Cluster
  • Hot backup (via mysqlhotcopy) under certain conditions[36]
  • 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):
  • 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[38])

The developers release monthly versions of the MySQL Server. The sources can be obtained from MySQL's website or from MySQL's Bazaar repository, both under the GPL license.

Limitations

Like other SQL databases, MySQL does not currently comply with the full SQL standard for some of the implemented functionality, including foreign key references when using some storage engines other than the 'standard' InnoDB.[39]

Triggers are currently limited to one per action / timing, i.e. maximum one after insert and one before insert on the same table.[40] There are no triggers on views.[40]

MySQL, like most other transactional relational databases, is strongly limited by hard disk performance. This is especially true in terms of write latency.[41] Given the recent appearance of very affordable consumer grade SATA interface Solid-state drives that offer zero mechanical latency, a fivefold speedup over even an eight drive RAID array can be had for a smaller investment.[42][43]

Deployment

MySQL can be built and installed manually from source code, but this can be tedious so it is more commonly installed from a binary package unless special customizations are required. On most Linux distributions the package management system can download and install MySQL with minimal effort, though further configuration is often required to adjust security and optimization settings.

Though MySQL began as a low-end alternative to more powerful proprietary databases, it has gradually evolved to support higher-scale needs as well. It is still most commonly used in small to medium scale single-server deployments, either as a component in a LAMP-based web application or as a standalone database server. Much of MySQL's appeal originates in its relative simplicity and ease of use, which is enabled by an ecosystem of open source tools such as phpMyAdmin. In the medium range, MySQL can be scaled by deploying it on more powerful hardware, such as a multi-processor server with gigabytes of memory.

There are however limits to how far performance can scale on a single server, so on larger scales, multi-server MySQL deployments are required to provide improved performance and reliability. A typical high-end configuration can include a powerful master database which handles data write operations and is replicated to multiple slaves that handle all read operations.[44] The master server synchronizes continually with its slaves so in the event of failure a slave can be promoted to become the new master, minimizing downtime. Further improvements in performance can be achieved by caching the results from database queries in memory using memcached, or breaking down a database into smaller chunks called shards which can be spread across a number of distributed server clusters.[45]

Cloud deployment

MySQL can also be run on cloud computing platforms such as Amazon EC2. Listed below are some common deployment models for MySQL on the cloud:

  • Virtual Machine Image - cloud users can upload a machine image of their own with MySQL installed, or use a ready-made machine image with an optimized installation of MySQL on it, such as the one provided by Amazon EC2.[46]
  • MySQL as a Service - some cloud platforms offer MySQL "as a service". In this configuration, application owners do not have to install and maintain the MySQL database on their own. Instead, the database service provider takes responsibility for installing and maintaining the database, and application owners pay according to their usage.[47] Notable cloud-based MySQL services are the Amazon Relational Database Service, and the Xeround Cloud Database, which runs on EC2, Rackspace, HP Cloud, and Heroku.
  • Managed MySQL cloud hosting - the database is not offered as a service, but the cloud provider hosts the database and manages it on the application owner's behalf. As of 2011, of the major cloud providers, only Terremark and Rackspace offer managed hosting for MySQL databases.[48][49]

Community

The MySQL server software itself and the client libraries use dual-licensing distribution. They are offered under GPL version 2,[50] beginning from 28 June 2000[51] (which in 2009 has been extended with a FLOSS License Exception)[52] or to use a proprietary license.[53]

Support can be obtained from the official manual.[54] Free support additionally is available in different IRC channels and forums. Oracle offers paid support via its MySQL Enterprise products. They differ in the scope of services and in price. Additionally, a number of third party organisations exist to provide support and services, including SkySQL Ab and Percona.

MySQL has received positive reviews, and reviewers noticed it "performs extremely well in the average case." and that the "developer interfaces are there, and the documentation (not to mention feedback in the real world via Web sites and the like) is very, very good".[55] It has also been tested to be a "fast, stable and true multi-user, multi-threaded sql database server".[56]

Related projects

  • Drizzle – a fork targeted at the web-infrastructure and cloud computing markets. The developers of the product describe it as a "smaller, slimmer and (hopefully) faster version of MySQL". As such is planned to have many common MySQL features stripped out, including stored procedures, query cache, prepared statements, views, and triggers. This is a partial rewrite of the server that does not maintain compatibility with MySQL.
  • MariaDB – a community-developed branch of the MySQL database, the impetus being the community maintenance of its free status under GPL as opposed to any uncertainty of MySQL license status under its current ownership by Oracle. The intent also being to maintain high fidelity with MySQL, ensuring a "drop-in" replacement capability with library binary equivalency and exact matching with MySQL APIs and commands. It includes the XtraDB storage engine as a replacement for InnoDB.
  • Percona Server – a fork that includes the XtraDB storage engine. It is an enhanced version of MySQL that is fully compatible, and deviates as little as possible from it, while still providing beneficial new features, better performance, and improved instrumentation for analysis of performance and usage.
  • OurDelta – No longer maintained. It was a fork compiled with various patches, including patches from MariaDB, Percona, and Google, and a storage engine called OQGRAPH.

History

On 15 June 2001, NuSphere sued MySQL AB, TcX DataKonsult AB and its original authors Michael ("Monty") Widenius and David Axmark in U.S District Court in Boston.[57] [58]

In 2002, MySQL AB sued Progress NuSphere for copyright and trademark infringement in United States district court. NuSphere had allegedly violated MySQL's copyright by linking MySQL's GPL'ed code with NuSphere Gemini table without being in compliance with the license. After a preliminary hearing before Judge Patti Saris on 27 February 2002, the parties entered settlement talks and eventually settled.[59] After the hearing, FSF commented that "Judge Saris made clear that she sees the GNU GPL to be an enforceable and binding license."[60]

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. After the acquisition, an Oracle press release mentioned that the contracts that make the company's software available to MySQL AB would be due for renewal (and presumably renegotiation) some time in 2006.[61] During the MySQL Users Conference in April 2006, MySQL issued a press release that confirmed that MySQL and Innobase OY agreed to a "multi-year" extension of their licensing agreement.[62]

In February 2006, Oracle Corporation acquired Sleepycat Software,[63] makers of the Berkeley DB, a database engine providing the basis for another MySQL storage engine. This had little effect, as Berkeley DB was not widely used, and was dropped (due to lack of use) in MySQL 5.1.12, a pre-GA release of MySQL 5.1 released in October 2006.[64]

In January 2008, Sun Microsystems bought MySQL for $1 billion.[65]

In April 2009, Oracle Corporation entered into an agreement to purchase Sun Microsystems,[66] then owners of MySQL copyright and trademark. Sun's board of directors unanimously approved the deal, it was also approved by Sun's shareholders, and by the U.S. government on 20 August 2009.[67] On 14 December 2009, Oracle pledged to continue to enhance MySQL[68] as it had done for the previous four years.

A movement against Oracle's acquisition of MySQL, to "Save MySQL"[69] from Oracle was started by one of the MySQL founders, Monty Widenius. The petition of 50,000+ developers and users called upon the European Commission to block approval of the acquisition. At the same time, several Free Software opinion leaders (including Eben Moglen, Pamela Jones of Groklaw, Jan Wildeboer and Carlo Piana, who also acted as co-counsel in the merger regulation procedure) advocated for the unconditional approval of the merger.[citation needed] As part of the negotiations with the European Commission, Oracle committed that MySQL server will continue until at least 2015 to use the dual-licensing strategy long used by MySQL AB, with commercial and GPL versions available. The antitrust of the EU had been "pressuring it to divest MySQL as a condition for approval of the merger". But, as revealed by Wikileaks, the US Department of Justice and Antitrust, at the request of Oracle, pressured the EU to unconditionally approve the merger.[70] The European Commission eventually unconditionally approved Oracle's acquisition of MySQL on 21 January 2010.[71]

In January 2009, prior to Oracle's acquisition of MySQL, Monty Widenius started a GPL-only fork, MariaDB. MariaDB is based on the same code base as MySQL server 5.1 and strives to maintain compatibility with Oracle-provided versions.[72]

In August 2012, TechCrunch's Alex Williams reported that Oracle was holding back MySQL Server test cases, a move that he concluded indicated that Oracle is attempting to kill the product.[73] Percona also reported that Oracle is no longer synchronizing their changes with the public source repositories.[74] Widenius called this a breach of the agreement that Oracle entered into with the EU as a condition of their acquisition of Sun.[75]

Milestones

Notable milestones in MySQL development include:

  • Original development of MySQL by Michael Widenius and David Axmark beginning in 1994[76]
  • First internal release on 23 May 1995
  • Version 3.19: End of 1996, from www.tcx.se
  • Version 3.20: January 1997
  • Windows version was released on 8 January 1998 for Windows 95 and NT
  • Version 3.21: production release 1998, from www.mysql.com
  • Version 3.22: alpha, beta from 1998
  • Version 3.23: beta from June 2000, production release 22 January 2001[77]
  • Version 4.0: beta from August 2002, production release March 2003 (unions)
  • Version 4.01: beta from August 2003, Jyoti[clarification needed][citation needed] adopts MySQL for database tracking
  • Version 4.1: beta from June 2004, production release October 2004 (R-trees and B-trees, subqueries, prepared statements)
  • Version 5.0: beta from March 2005, production release October 2005 (cursors, stored procedures, triggers, views, XA transactions)
The developer of the Federated Storage Engine states that "The Federated Storage Engine is a proof-of-concept storage engine",[78] but the main distributions of MySQL version 5.0 included it and turned it on by default. Documentation of some of the short-comings appears in "MySQL Federated Tables: The Missing Manual".[79]
Version 5.1 contained 20 known crashing and wrong result bugs in addition to the 35 present in version 5.0 (almost all fixed as of release 5.1.51).[81]
MySQL 5.1 and 6.0 showed poor performance when used for data warehousing — partly due to its inability to utilize multiple CPU cores for processing a single query.[82]
  • Oracle acquired Sun Microsystems on 27 January 2010.[83]
  • MySQL Server 5.5 is currently generally available (as of December 2010). Enhancements and features include:
    • The default storage engine is InnoDB, which supports transactions and referential integrity constraints.
    • Improved InnoDB I/O subsystem[84]
    • Improved SMP support[85]
    • Semisynchronous replication.
    • SIGNAL and RESIGNAL statement in compliance with the SQL standard.
    • Support for supplementary Unicode character sets utf16, utf32, and utf8mb4.
    • New options for user-defined partitioning.

MySQL Server 6.0.11-alpha was announced[86] on 22 May 2009 as the last release of the 6.0 line. Future MySQL Server development uses a New Release Model. Features developed for 6.0 are being incorporated into future releases.

MySQL 5.6, a development milestone release, was announced at the MySQL users conference 2011. New features include 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, improvements to replication and better performance monitoring by expanding the data available through the PERFORMANCE_SCHEMA.[87] In July further previews with a BINLOG API, group commit, and InnoDB full text searching were released.

Versions

[88][89][90][91][92][93][94]

See also

References

  1. ^ "Changes in Release 5.5.x (Production)". MySQL 5.5 Reference Manual. Oracle. 29 December 2012. Retrieved 31 December 2012.
  2. ^ "Changes in Release 5.6.x (Development)". MySQL 5.6 Reference Manual. Oracle. 11 November 2012. Retrieved 11 December 2012.
  3. ^ "MySQL: Project Summary". Ohloh. Black Duck Software. Retrieved 17 September 2012.
  4. ^ a b "What is MySQL?". MySQL 5.1 Reference Manual. Oracle. Retrieved 17 September 2012. The official way to pronounce "MySQL" is "My Ess Que Ell" (not "my sequel")
  5. ^ "Market Share". Why MySQL?. Oracle. Retrieved 17 September 2012.
  6. ^ Schumacher, Robin; Lentz, Arjen. "Dispelling the Myths". MySQL AB. Archived from the original on 6 June 2011. Retrieved 17 September 2012.
  7. ^ "History of MySQL". MySQL 5.1 Reference Manual. MySQL AB. Retrieved 26 August 2011.
  8. ^ "Sun Microsystems Announces Completion of MySQL Acquisition; Paves Way for Secure, Open Source Platform to Power the Network Economy" (Press release). Sun Microsystems. 26 February 2008. Archived from the original on 28 February 2008. Retrieved 17 September 2012.
  9. ^ "Wikimedia servers — System architecture". Wikimedia Meta-Wiki. Wikimedia Foundation. Retrieved 17 September 2012.
  10. ^ Urlocker, M. Zack (13 December 2005). "Google Runs MySQL". The Open Force. M. Zack Urlocker. Retrieved 3 August 2010. AdWords was built using the MySQL database
  11. ^ Claburn, Thomas (24 April 2007). "Google Releases Improved MySQL Code". InformationWeek. CPM Media. Retrieved 30 November 2008.
  12. ^ Callaghan, Mark (13 April 2010). MySQL at Facebook. YouTube. Google. Retrieved 3 August 2010. x,000 servers, ... Master-slave replication, InnoDB
  13. ^ Sobel, Jason (21 December 2007). "Keeping Up". The Facebook Blog. Facebook. Retrieved 30 October 2008.
  14. ^ Malik, Om (25 April 2008). "Facebook's Insatiable Hunger for Hardware". GigaOM. GigaOmniMedia. Retrieved 30 October 2008.
  15. ^ Cole, Jeremy (14 April 2011). Big and Small Data at @Twitter. YouTube. Google. Retrieved 20 October 2011.
  16. ^ "MySQL Customer: Flickr". MySQL Customers. Oracle. Retrieved 17 September 2012.
  17. ^ "MySQL Customer: Nokia". MySQL Customers. Oracle. Retrieved 1 February 2012.
  18. ^ "MySQL Customer: YouTube". MySQL Customers. Oracle. Retrieved 17 September 2012.
  19. ^ a b mysql — The MySQL Command-Line Tool, MySQL Reference Manual
  20. ^ a b mysqladmin - the MySQL command-line tool, MySQL Reference Manual
  21. ^ MySQL Client Programs, MySQL Reference Manual
  22. ^ MySQL Tools Family, SQLMaestro Group
  23. ^ MySQL GUI Tools, WebYog
  24. ^ HeidiSQL, HeidiSQL MySQL GUI
  25. ^ MySQL Workbench, MySQL Downloads
  26. ^ "HeidiSQL Grid editing features".
  27. ^ "LibreOffice Base". Retrieved 5 January 2012.
  28. ^ Home. "Maatkit website". Maatkit.org. Retrieved 5 November 2012.
  29. ^ Percona Toolkit, Percona Software
  30. ^ "XtraBackup". Percona. Retrieved 19 January 2013.
  31. ^ Home. "MySQL::Replication". Opera Software. Retrieved 11 December 2012.
  32. ^ Jean-François Piéronne. "PCSI Kits of Open Source Software for OpenVMS". Pi-net.dyndns.org. Retrieved 8 June 2009.
  33. ^ "MySQL Internals Manual". Dev.mysql.com. 4 March 2009. Retrieved 8 June 2009.
  34. ^ "Which Should I Use: MySQL Enterprise or MySQL Community Server?". MySQL AB. Retrieved 8 April 2009.
  35. ^ "MySQL :: InnoDB 1.1 for MySQL 5.5 User's Guide :: C InnoDB Glossary :: ACID". Retrieved 5 January 2011.
  36. ^ "4.6.9. mysqlhotcopy - A Database Backup Program". MySQL 5.1 Reference Manual. Oracle. Retrieved 23 September 2009. mysqlhotcopy is a Perl script [...]. It uses Lock Tables, Flush Tables, and cp or scp to make a database backup quickly [...] but it can be run only on the same machine where the database directories are located. mysqlhotcopy works only for backing up MyISAM and Archive tables. It runs on Unix and NetWare.
  37. ^ "The DB2 for i (IBMDB2I) Storage Engine for MySQL on IBM i". MySQL. Retrieved 18 January 2010.
  38. ^ "Group commit in PostgreSQL". Retrieved 8 April 2012.
  39. ^ "dev.mysql.com". dev.mysql.com. Retrieved 1 February 2012.
  40. ^ a b "dev.mysql.com". dev.mysql.com. Retrieved 1 February 2012.
  41. ^ "MySQL Innodb ZFS Best Practices."
  42. ^ "Intel SSD 910 vs HDD RAID in tpcc-mysql benchmark."
  43. ^ Matsunobu, Yoshinori. "SSD Deployment Strategies for MySQL." Sun Microsystems, 15 April 2010.
  44. ^ "The future of replication in MySQL". Facebook. Retrieved 9 December 2009.
  45. ^ "Database Sharding". Code Futures. Retrieved 9 December 2009.
  46. ^ Running "MySQL on Amazon EC2 with EBS (Elastic Block Store)". Amazon Web Services. Retrieved 20 November 2011. {{cite web}}: Check |url= value (help)
  47. ^ Finley, Klint. "7 Cloud-Based Database Services". ReadWriteWeb. Retrieved 9 November 2011. {{cite web}}: External link in |work= (help)
  48. ^ "MySQL Server Support at Rackspace". Rackspace.com. Retrieved 10 November 2011.
  49. ^ "Managed Hosting - Terremark". Terremark.com.
  50. ^ "Oracle :: MySQL Open Source License". Mysql.com. Retrieved 8 June 2009.
  51. ^ "MySQL GOES GPL". Archived from the original on 12 August 2001.
  52. ^ "Oracle :: FLOSS License Exception". Mysql.com. Retrieved 8 June 2009.
  53. ^ "Oracle :: MySQL Commercial License". Mysql.com. Retrieved 8 June 2009.
  54. ^ MySQL Support Manual, MySQL Developers
  55. ^ Review of MySQL Server 5.0, Techworld.com, November 2005
  56. ^ MySQL Server Review, LinuxMint.com
  57. ^ Basil, Tom (4 September 2001). "Eyewitness account: "Monty Widenius, International Fugitive"". MySQL Life (Mailing list). Retrieved 16 September 2012. {{cite mailing list}}: Unknown parameter |mailinglist= ignored (|mailing-list= suggested) (help)
  58. ^ "FAQ on MySQL vs. NuSphere Dispute". MySQL AB. 13 July 2001. Archived from the original on 17 July 2001. Retrieved 16 September 2012.
  59. ^ Progress Software Corporation v. MySQL AB, 195 F. Supp. 2d 328 (D. Mass. 2002).
  60. ^ "Judge Saris defers GNU GPL Questions for Trial in MySQL vs. Progress Software" (Press release). Free Software Foundation. 1 March 2002. Retrieved 16 September 2012.
  61. ^ "Oracle Announces the Acquisition of Open Source Software Company, Innobase" (Press release). Oracle. 7 October 2005. Archived from the original on 20 July 2011. Retrieved 16 September 2012. {{cite press release}}: Unknown parameter |deadurl= ignored (|url-status= suggested) (help)
  62. ^ "MySQL to Promote New Open Source DB Engines from its Partners and Dev Community" (Press release). MySQL AB. 26 April 2006. Archived from the original on 23 June 2011. Retrieved 16 September 2012.
  63. ^ Babcock, Charles (14 February 2006). "Oracle Buys Sleepycat, Is JBoss Next?". InformationWeek. CPM Media. Retrieved 16 September 2012.
  64. ^ "Changes in MySQL 5.1.12". MySQL 5.1 Reference Manual. MySQL AB. 24 October 2006. Retrieved 16 September 2012.
  65. ^ "Sun Microsystems Announces Agreement to Acquire MySQL, Developer of the World's Most Popular Open Source Database" (Press release). MySQL AB. 16 January 2008. Archived from the original on 18 July 2011. Retrieved 16 September 2012. {{cite press release}}: Unknown parameter |deadurl= ignored (|url-status= suggested) (help)
  66. ^ "Oracle to Buy Sun" (Press release). Sun Microsystems. 20 April 2009. Archived from the original on 22 April 2009. Retrieved 16 September 2012.
  67. ^ Thomasch, Paul; Finkle, Jim (20 August 2009). "Oracle wins U.S. approval to buy Sun Microsystems". Reuters. Retrieved 16 September 2012.
  68. ^ Whitney, Lance (14 December 2009). "Oracle pledges to play well with MySQL". CNET. CBS Interactive. Retrieved 16 September 2012.
  69. ^ Michael, Widenius (12 December 2009). "Help saving MySQL". Monty Says. Google. Retrieved 16 September 2012.
  70. ^ Kanaracus, Chris (30 August 2011). "Wikileaks Cable Offers New Insights Into Oracle-Sun Deal". PC World. IDG. Retrieved 16 September 2012.
  71. ^ "Mergers: Commission clears Oracle's proposed acquisition of Sun Microsystems" (Press release). European Union. 21 January 2010. Retrieved 16 September 2012.
  72. ^ "MariaDB versus MySQL - Compatibility". AskMonty Knowledgebase. Monty Program. 30 July 2010. Retrieved 16 September 2012.
  73. ^ Williams, Alex (18 August 2012). "Oracle Makes More Moves To Kill Open Source MySQL". TechCrunch. AOL. Retrieved 16 October 2012.
  74. ^ Smith, Stewart (16 August 2012). "Where to get a BZR tree of the latest MySQL releases". MySQL Performance Blog. Percona. Retrieved 16 October 2012.
  75. ^ "Monty on broken MySQL promises: Oracle's going to fork it up."
  76. ^ "Five Questions With Michael Widenius - Founder And Original Developer of MySQL". w3resource.com. Retrieved 13 October 2012.
  77. ^ "MySQL 3.23 Declared Stable". Archived from the original on 15 August 2001.
  78. ^ "Capttofu: FederatedX Pluggable Storage Engine Released!". Capttofu.livejournal.com. Retrieved 3 April 2009.
  79. ^ "Oreillynet.com". Oreillynet.com. 9 October 2008. Retrieved 1 February 2012.
  80. ^ "Sun Picks Up MySQL For $1 Billion; Open Source Is A Legitimate Business Model". Retrieved 13 October 2012.
  81. ^ "Archives - Oops, we did it again (MySQL 5.1 released as GA wi". Planet MySQL. 29 November 2008. Retrieved 3 April 2009.
  82. ^ "TPC-H Run on MySQL 5.1 and 6.0 | MySQL Performance Blog". MySQL Performance Blog. Retrieved 8 June 2009.
  83. ^ "Oracle.com". Oracle.com. 7 September 2010. Retrieved 1 February 2012.
  84. ^ "dev.mysql.com". dev.mysql.com. Retrieved 1 February 2012.
  85. ^ "dev.mysql.com". dev.mysql.com. Retrieved 1 February 2012.
  86. ^ "MySQL Lists: packagers: MySQL 6.0.11 Alpha has been released!". Lists.mysql.com. Retrieved 1 February 2012.
  87. ^ "What's New in MySQL 5.6". MySQL Developer Zone. Retrieved 21 April 2011.
  88. ^ "B.3. Changes in Release 3.23.x (Lifecycle Support Ended)". Oracle. Retrieved 24 August 2010.
  89. ^ "B.2. Changes in Release 4.0.x (Lifecycle Support Ended)". Oracle. Retrieved 24 August 2010.
  90. ^ "B.1. Changes in Release 4.1.x (Lifecycle Support Ended)". Oracle. Retrieved 24 August 2010.
  91. ^ "C.1. Changes in Release 5.0.x (Lifecycle Support Ended)". Oracle. Retrieved 24 August 2010.
  92. ^ "C.1. Changes in Release 5.1.x (Production)". Oracle. Retrieved 24 August 2010.
  93. ^ "C.1. Changes in Release 5.5.x (Production)". Oracle. Retrieved 24 August 2010.
  94. ^ "C.1. Changes in Release 5.6.x (Development)". Oracle. Retrieved 24 August 2010.

External links