MySQL 5.6 Reference Manual

Abstract

This is the MySQL™ Reference Manual. It documents MySQL 5.6 through 5.6.10.

MySQL Cluster is currently not supported in MySQL 5.6. For information about MySQL Cluster, please see MySQL Cluster NDB 7.2.

MySQL 5.6 features.  This manual describes features that are not included in every edition of MySQL 5.6; such features may not be included in the edition of MySQL 5.6 licensed to you. If you have any questions about the features included in your edition of MySQL 5.6, refer to your MySQL 5.6 license agreement or contact your Oracle sales representative.

For legal information, see the Legal Notices.

Document generated on: 2012-12-06 (revision: 33413)


Table of Contents

Preface and Legal Notices
1. General Information
1.1. About This Manual
1.2. Typographical and Syntax Conventions
1.3. Overview of the MySQL Database Management System
1.3.1. What is MySQL?
1.3.2. The Main Features of MySQL
1.3.3. History of MySQL
1.4. What Is New in MySQL 5.6
1.5. MySQL Development History
1.6. MySQL Information Sources
1.6.1. MySQL Mailing Lists
1.6.2. MySQL Community Support at the MySQL Forums
1.6.3. MySQL Community Support on Internet Relay Chat (IRC)
1.6.4. MySQL Enterprise
1.7. How to Report Bugs or Problems
1.8. MySQL Standards Compliance
1.8.1. What Standards MySQL Follows
1.8.2. Selecting SQL Modes
1.8.3. Running MySQL in ANSI Mode
1.8.4. MySQL Extensions to Standard SQL
1.8.5. MySQL Differences from Standard SQL
1.8.6. How MySQL Deals with Constraints
1.9. Credits
1.9.1. Contributors to MySQL
1.9.2. Documenters and translators
1.9.3. Packages that support MySQL
1.9.4. Tools that were used to create MySQL
1.9.5. Supporters of MySQL
2. Installing and Upgrading MySQL
2.1. General Installation Guidance
2.1.1. Operating Systems Supported by MySQL Community Server
2.1.2. Choosing Which MySQL Distribution to Install
2.1.3. How to Get MySQL
2.1.4. Verifying Package Integrity Using MD5 Checksums or GnuPG
2.1.5. Installation Layouts
2.1.6. Compiler-Specific Build Characteristics
2.2. Installing MySQL from Generic Binaries on Unix/Linux
2.3. Installing MySQL on Microsoft Windows
2.3.1. MySQL Installation Layout on Microsoft Windows
2.3.2. Choosing An Installation Package
2.3.3. Installing MySQL on Microsoft Windows Using MySQL Installer
2.3.4. Installing MySQL on Microsoft Windows Using a noinstall Zip Archive
2.3.5. Troubleshooting a Microsoft Windows MySQL Server Installation
2.3.6. Upgrading MySQL on Windows
2.3.7. Windows Postinstallation Procedures
2.4. Installing MySQL on Mac OS X
2.4.1. General Notes on Installing MySQL on Mac OS X
2.4.2. Installing MySQL on Mac OS X Using Native Packages
2.4.3. Installing the MySQL Startup Item
2.4.4. Installing and Using the MySQL Preference Pane
2.4.5. Using the Bundled MySQL on Mac OS X Server
2.5. Installing MySQL on Linux
2.5.1. Installing MySQL from RPM Packages on Linux
2.5.2. Installing MySQL on Linux using Native Package Manager
2.6. Installing MySQL on Solaris and OpenSolaris
2.6.1. Installing MySQL on Solaris using a Solaris PKG
2.6.2. Installing MySQL on OpenSolaris using IPS
2.7. Installing MySQL on HP-UX
2.7.1. General Notes on Installing MySQL on HP-UX
2.7.2. Installing MySQL on HP-UX using DEPOT
2.8. Installing MySQL on FreeBSD
2.9. Installing MySQL from Source
2.9.1. MySQL Layout for Source Installation
2.9.2. Installing MySQL from a Standard Source Distribution
2.9.3. Installing MySQL from a Development Source Tree
2.9.4. MySQL Source-Configuration Options
2.9.5. Dealing with Problems Compiling MySQL
2.9.6. MySQL Configuration and Third-Party Tools
2.10. Postinstallation Setup and Testing
2.10.1. Unix Postinstallation Procedures
2.10.2. Securing the Initial MySQL Accounts
2.11. Upgrading or Downgrading MySQL
2.11.1. Upgrading MySQL
2.11.2. Downgrading MySQL
2.11.3. Checking Whether Tables or Indexes Must Be Rebuilt
2.11.4. Rebuilding or Repairing Tables or Indexes
2.11.5. Copying MySQL Databases to Another Machine
2.12. Environment Variables
2.13. Perl Installation Notes
2.13.1. Installing Perl on Unix
2.13.2. Installing ActiveState Perl on Windows
2.13.3. Problems Using the Perl DBI/DBD Interface
3. Tutorial
3.1. Connecting to and Disconnecting from the Server
3.2. Entering Queries
3.3. Creating and Using a Database
3.3.1. Creating and Selecting a Database
3.3.2. Creating a Table
3.3.3. Loading Data into a Table
3.3.4. Retrieving Information from a Table
3.4. Getting Information About Databases and Tables
3.5. Using mysql in Batch Mode
3.6. Examples of Common Queries
3.6.1. The Maximum Value for a Column
3.6.2. The Row Holding the Maximum of a Certain Column
3.6.3. Maximum of Column per Group
3.6.4. The Rows Holding the Group-wise Maximum of a Certain Column
3.6.5. Using User-Defined Variables
3.6.6. Using Foreign Keys
3.6.7. Searching on Two Keys
3.6.8. Calculating Visits Per Day
3.6.9. Using AUTO_INCREMENT
3.7. Using MySQL with Apache
4. MySQL Programs
4.1. Overview of MySQL Programs
4.2. Using MySQL Programs
4.2.1. Invoking MySQL Programs
4.2.2. Connecting to the MySQL Server
4.2.3. Specifying Program Options
4.2.4. Setting Environment Variables
4.3. MySQL Server and Server-Startup Programs
4.3.1. mysqld — The MySQL Server
4.3.2. mysqld_safe — MySQL Server Startup Script
4.3.3. mysql.server — MySQL Server Startup Script
4.3.4. mysqld_multi — Manage Multiple MySQL Servers
4.4. MySQL Installation-Related Programs
4.4.1. comp_err — Compile MySQL Error Message File
4.4.2. mysqlbug — Generate Bug Report
4.4.3. mysql_install_db — Initialize MySQL Data Directory
4.4.4. mysql_plugin — Configure MySQL Server Plugins
4.4.5. mysql_secure_installation — Improve MySQL Installation Security
4.4.6. mysql_tzinfo_to_sql — Load the Time Zone Tables
4.4.7. mysql_upgrade — Check and Upgrade MySQL Tables
4.5. MySQL Client Programs
4.5.1. mysql — The MySQL Command-Line Tool
4.5.2. mysqladmin — Client for Administering a MySQL Server
4.5.3. mysqlcheck — A Table Maintenance Program
4.5.4. mysqldump — A Database Backup Program
4.5.5. mysqlimport — A Data Import Program
4.5.6. mysqlshow — Display Database, Table, and Column Information
4.5.7. mysqlslap — Load Emulation Client
4.6. MySQL Administrative and Utility Programs
4.6.1. innochecksum — Offline InnoDB File Checksum Utility
4.6.2. myisam_ftdump — Display Full-Text Index information
4.6.3. myisamchk — MyISAM Table-Maintenance Utility
4.6.4. myisamlog — Display MyISAM Log File Contents
4.6.5. myisampack — Generate Compressed, Read-Only MyISAM Tables
4.6.6. mysql_config_editor — MySQL Configuration Utility
4.6.7. mysqlaccess — Client for Checking Access Privileges
4.6.8. mysqlbinlog — Utility for Processing Binary Log Files
4.6.9. mysqldumpslow — Summarize Slow Query Log Files
4.6.10. mysqlhotcopy — A Database Backup Program
4.6.11. mysql_convert_table_format — Convert Tables to Use a Given Storage Engine
4.6.12. mysql_find_rows — Extract SQL Statements from Files
4.6.13. mysql_fix_extensions — Normalize Table File Name Extensions
4.6.14. mysql_setpermission — Interactively Set Permissions in Grant Tables
4.6.15. mysql_waitpid — Kill Process and Wait for Its Termination
4.6.16. mysql_zap — Kill Processes That Match a Pattern
4.7. MySQL Program Development Utilities
4.7.1. msql2mysql — Convert mSQL Programs for Use with MySQL
4.7.2. mysql_config — Get Compile Options for Compiling Clients
4.7.3. my_print_defaults — Display Options from Option Files
4.7.4. resolve_stack_dump — Resolve Numeric Stack Trace Dump to Symbols
4.8. Miscellaneous Programs
4.8.1. perror — Explain Error Codes
4.8.2. replace — A String-Replacement Utility
4.8.3. resolveip — Resolve Host name to IP Address or Vice Versa
5. MySQL Server Administration
5.1. The MySQL Server
5.1.1. Server Option and Variable Reference
5.1.2. Server Configuration Defaults
5.1.3. Server Command Options
5.1.4. Server System Variables
5.1.5. Using System Variables
5.1.6. Server Status Variables
5.1.7. Server SQL Modes
5.1.8. Server Plugins
5.1.9. IPv6 Support
5.1.10. Server-Side Help
5.1.11. Server Response to Signals
5.1.12. The Shutdown Process
5.2. MySQL Server Logs
5.2.1. Selecting General Query and Slow Query Log Output Destinations
5.2.2. The Error Log
5.2.3. The General Query Log
5.2.4. The Binary Log
5.2.5. The Slow Query Log
5.2.6. Server Log Maintenance
5.3. Managing Disk I/O and File Space for InnoDB Tables
5.3.1. InnoDB Disk I/O
5.3.2. File Space Management
5.3.3. InnoDB Checkpoints
5.3.4. Defragmenting a Table
5.4. Running Multiple MySQL Instances on One Machine
5.4.1. Setting Up Multiple Data Directories
5.4.2. Running Multiple MySQL Instances on Windows
5.4.3. Running Multiple MySQL Instances on Unix
5.4.4. Using Client Programs in a Multiple-Server Environment
5.5. Tracing mysqld Using DTrace
5.5.1. mysqld DTrace Probe Reference
6. Security
6.1. General Security Issues
6.1.1. Security Guidelines
6.1.2. Keeping Passwords Secure
6.1.3. Making MySQL Secure Against Attackers
6.1.4. Security-Related mysqld Options and Variables
6.1.5. How to Run MySQL as a Normal User
6.1.6. Security Issues with LOAD DATA LOCAL
6.1.7. Client Programming Security Guidelines
6.2. The MySQL Access Privilege System
6.2.1. Privileges Provided by MySQL
6.2.2. Privilege System Grant Tables
6.2.3. Specifying Account Names
6.2.4. Access Control, Stage 1: Connection Verification
6.2.5. Access Control, Stage 2: Request Verification
6.2.6. When Privilege Changes Take Effect
6.2.7. Causes of Access-Denied Errors
6.3. MySQL User Account Management
6.3.1. User Names and Passwords
6.3.2. Adding User Accounts
6.3.3. Removing User Accounts
6.3.4. Setting Account Resource Limits
6.3.5. Assigning Account Passwords
6.3.6. Pluggable Authentication
6.3.7. Proxy Users
6.3.8. Using SSL for Secure Connections
6.3.9. Connecting to MySQL Remotely from Windows with SSH
6.3.10. SQL-Based MySQL Account Activity Auditing
7. Backup and Recovery
7.1. Backup and Recovery Types
7.2. Database Backup Methods
7.3. Example Backup and Recovery Strategy
7.3.1. Establishing a Backup Policy
7.3.2. Using Backups for Recovery
7.3.3. Backup Strategy Summary
7.4. Using mysqldump for Backups
7.4.1. Dumping Data in SQL Format with mysqldump
7.4.2. Reloading SQL-Format Backups
7.4.3. Dumping Data in Delimited-Text Format with mysqldump
7.4.4. Reloading Delimited-Text Format Backups
7.4.5. mysqldump Tips
7.5. Point-in-Time (Incremental) Recovery Using the Binary Log
7.5.1. Point-in-Time Recovery Using Event Times
7.5.2. Point-in-Time Recovery Using Event Positions
7.6. MyISAM Table Maintenance and Crash Recovery
7.6.1. Using myisamchk for Crash Recovery
7.6.2. How to Check MyISAM Tables for Errors
7.6.3. How to Repair MyISAM Tables
7.6.4. MyISAM Table Optimization
7.6.5. Setting Up a MyISAM Table Maintenance Schedule
8. Optimization
8.1. Optimization Overview
8.2. Optimizing SQL Statements
8.2.1. Optimizing SELECT Statements
8.2.2. Optimizing DML Statements
8.2.3. Optimizing Database Privileges
8.2.4. Optimizing INFORMATION_SCHEMA Queries
8.2.5. Other Optimization Tips
8.3. Optimization and Indexes
8.3.1. How MySQL Uses Indexes
8.3.2. Using Primary Keys
8.3.3. Using Foreign Keys
8.3.4. Column Indexes
8.3.5. Multiple-Column Indexes
8.3.6. Verifying Index Usage
8.3.7. InnoDB and MyISAM Index Statistics Collection
8.3.8. Comparison of B-Tree and Hash Indexes
8.4. Optimizing Database Structure
8.4.1. Optimizing Data Size
8.4.2. Optimizing MySQL Data Types
8.4.3. Optimizing for Many Tables
8.5. Optimizing for InnoDB Tables
8.5.1. Optimizing Storage Layout for InnoDB Tables
8.5.2. Optimizing InnoDB Transaction Management
8.5.3. Optimizing InnoDB Logging
8.5.4. Bulk Data Loading for InnoDB Tables
8.5.5. Optimizing InnoDB Queries
8.5.6. Optimizing InnoDB DDL Operations
8.5.7. Optimizing InnoDB Disk I/O
8.5.8. Optimizing InnoDB Configuration Variables
8.5.9. Optimizing InnoDB for Systems with Many Tables
8.6. Optimizing for MyISAM Tables
8.6.1. Optimizing MyISAM Queries
8.6.2. Bulk Data Loading for MyISAM Tables
8.6.3. Speed of REPAIR TABLE Statements
8.7. Optimizing for MEMORY Tables
8.8. Understanding the Query Execution Plan
8.8.1. Optimizing Queries with EXPLAIN
8.8.2. EXPLAIN Output Format
8.8.3. EXPLAIN EXTENDED Output Format
8.8.4. Estimating Query Performance
8.8.5. Controlling the Query Optimizer
8.9. Buffering and Caching
8.9.1. The InnoDB Buffer Pool
8.9.2. The MyISAM Key Cache
8.9.3. The MySQL Query Cache
8.9.4. Caching of Prepared Statements and Stored Programs
8.10. Optimizing Locking Operations
8.10.1. Internal Locking Methods
8.10.2. Table Locking Issues
8.10.3. Concurrent Inserts
8.10.4. Metadata Locking Within Transactions
8.10.5. External Locking
8.11. Optimizing the MySQL Server
8.11.1. System Factors and Startup Parameter Tuning
8.11.2. Tuning Server Parameters
8.11.3. Optimizing Disk I/O
8.11.4. Optimizing Memory Use
8.11.5. Optimizing Network Use
8.12. Measuring Performance (Benchmarking)
8.12.1. Measuring the Speed of Expressions and Functions
8.12.2. The MySQL Benchmark Suite
8.12.3. Using Your Own Benchmarks
8.12.4. Measuring Performance with performance_schema
8.12.5. Examining Thread Information
8.13. Internal Details of MySQL Optimizations
8.13.1. Range Optimization
8.13.2. Index Merge Optimization
8.13.3. Engine Condition Pushdown Optimization
8.13.4. Index Condition Pushdown Optimization
8.13.5. IS NULL Optimization
8.13.6. LEFT JOIN and RIGHT JOIN Optimization
8.13.7. Nested-Loop Join Algorithms
8.13.8. Nested Join Optimization
8.13.9. Outer Join Simplification
8.13.10. Multi-Range Read Optimization
8.13.11. Block Nested-Loop and Batched Key Access Joins
8.13.12. ORDER BY Optimization
8.13.13. GROUP BY Optimization
8.13.14. DISTINCT Optimization
8.13.15. Subquery Optimization
9. Language Structure
9.1. Literal Values
9.1.1. String Literals
9.1.2. Number Literals
9.1.3. Date and Time Literals
9.1.4. Hexadecimal Literals
9.1.5. Boolean Literals
9.1.6. Bit-Field Literals
9.1.7. NULL Values
9.2. Schema Object Names
9.2.1. Identifier Qualifiers
9.2.2. Identifier Case Sensitivity
9.2.3. Mapping of Identifiers to File Names
9.2.4. Function Name Parsing and Resolution
9.3. Reserved Words
9.4. User-Defined Variables
9.5. Expression Syntax
9.6. Comment Syntax
10. Globalization
10.1. Character Set Support
10.1.1. Character Sets and Collations in General
10.1.2. Character Sets and Collations in MySQL
10.1.3. Specifying Character Sets and Collations
10.1.4. Connection Character Sets and Collations
10.1.5. Configuring the Character Set and Collation for Applications
10.1.6. Character Set for Error Messages
10.1.7. Collation Issues
10.1.8. String Repertoire
10.1.9. Operations Affected by Character Set Support
10.1.10. Unicode Support
10.1.11. Upgrading from Previous to Current Unicode Support
10.1.12. UTF-8 for Metadata
10.1.13. Column Character Set Conversion
10.1.14. Character Sets and Collations That MySQL Supports
10.2. Setting the Error Message Language
10.3. Adding a Character Set
10.3.1. Character Definition Arrays
10.3.2. String Collating Support for Complex Character Sets
10.3.3. Multi-Byte Character Support for Complex Character Sets
10.4. Adding a Collation to a Character Set
10.4.1. Collation Implementation Types
10.4.2. Choosing a Collation ID
10.4.3. Adding a Simple Collation to an 8-Bit Character Set
10.4.4. Adding a UCA Collation to a Unicode Character Set
10.5. Character Set Configuration
10.6. MySQL Server Time Zone Support
10.6.1. Staying Current with Time Zone Changes
10.6.2. Time Zone Leap Second Support
10.7. MySQL Server Locale Support
11. Data Types
11.1. Data Type Overview
11.1.1. Numeric Type Overview
11.1.2. Date and Time Type Overview
11.1.3. String Type Overview
11.2. Numeric Types
11.2.1. Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT
11.2.2. Fixed-Point Types (Exact Value) - DECIMAL, NUMERIC
11.2.3. Floating-Point Types (Approximate Value) - FLOAT, DOUBLE
11.2.4. Bit-Value Type - BIT
11.2.5. Numeric Type Attributes
11.2.6. Out-of-Range and Overflow Handling
11.3. Date and Time Types
11.3.1. The DATE, DATETIME, and TIMESTAMP Types
11.3.2. The TIME Type
11.3.3. The YEAR Type
11.3.4. YEAR(2) Limitations and Migrating to YEAR(4)
11.3.5. Automatic Initialization and Updating for TIMESTAMP and DATETIME
11.3.6. Fractional Seconds in Time Values
11.3.7. Conversion Between Date and Time Types
11.3.8. Two-Digit Years in Dates
11.4. String Types
11.4.1. The CHAR and VARCHAR Types
11.4.2. The BINARY and VARBINARY Types
11.4.3. The BLOB and TEXT Types
11.4.4. The ENUM Type
11.4.5. The SET Type
11.5. Data Type Default Values
11.6. Data Type Storage Requirements
11.7. Choosing the Right Type for a Column
11.8. Using Data Types from Other Database Engines
12. Functions and Operators
12.1. Function and Operator Reference
12.2. Type Conversion in Expression Evaluation
12.3. Operators
12.3.1. Operator Precedence
12.3.2. Comparison Functions and Operators
12.3.3. Logical Operators
12.3.4. Assignment Operators
12.4. Control Flow Functions
12.5. String Functions
12.5.1. String Comparison Functions
12.5.2. Regular Expressions
12.6. Numeric Functions and Operators
12.6.1. Arithmetic Operators
12.6.2. Mathematical Functions
12.7. Date and Time Functions
12.8. What Calendar Is Used By MySQL?
12.9. Full-Text Search Functions
12.9.1. Natural Language Full-Text Searches
12.9.2. Boolean Full-Text Searches
12.9.3. Full-Text Searches with Query Expansion
12.9.4. Full-Text Stopwords
12.9.5. Full-Text Restrictions
12.9.6. Fine-Tuning MySQL Full-Text Search
12.9.7. Adding a Collation for Full-Text Indexing
12.10. Cast Functions and Operators
12.11. XML Functions
12.12. Bit Functions
12.13. Encryption and Compression Functions
12.14. Information Functions
12.15. Miscellaneous Functions
12.16. Functions and Modifiers for Use with GROUP BY Clauses
12.16.1. GROUP BY (Aggregate) Functions
12.16.2. GROUP BY Modifiers
12.16.3. MySQL Extensions to GROUP BY
12.17. Spatial Extensions
12.17.1. Introduction to MySQL Spatial Support
12.17.2. The OpenGIS Geometry Model
12.17.3. Supported Spatial Data Formats
12.17.4. Creating a Spatially Enabled MySQL Database
12.17.5. Spatial Analysis Functions
12.17.6. Optimizing Spatial Analysis
12.17.7. MySQL Conformance and Compatibility
12.18. Precision Math
12.18.1. Types of Numeric Values
12.18.2. DECIMAL Data Type Changes
12.18.3. Expression Handling
12.18.4. Rounding Behavior
12.18.5. Precision Math Examples
13. SQL Statement Syntax
13.1. Data Definition Statements
13.1.1. ALTER DATABASE Syntax
13.1.2. ALTER EVENT Syntax
13.1.3. ALTER FUNCTION Syntax
13.1.4. ALTER PROCEDURE Syntax
13.1.5. ALTER SERVER Syntax
13.1.6. ALTER TABLE Syntax
13.1.7. ALTER VIEW Syntax
13.1.8. CREATE DATABASE Syntax
13.1.9. CREATE EVENT Syntax
13.1.10. CREATE FUNCTION Syntax
13.1.11. CREATE INDEX Syntax
13.1.12. CREATE PROCEDURE and CREATE FUNCTION Syntax
13.1.13. CREATE SERVER Syntax
13.1.14. CREATE TABLE Syntax
13.1.15. CREATE TRIGGER Syntax
13.1.16. CREATE VIEW Syntax
13.1.17. DROP DATABASE Syntax
13.1.18. DROP EVENT Syntax
13.1.19. DROP FUNCTION Syntax
13.1.20. DROP INDEX Syntax
13.1.21. DROP PROCEDURE and DROP FUNCTION Syntax
13.1.22. DROP SERVER Syntax
13.1.23. DROP TABLE Syntax
13.1.24. DROP TRIGGER Syntax
13.1.25. DROP VIEW Syntax
13.1.26. RENAME TABLE Syntax
13.1.27. TRUNCATE TABLE Syntax
13.2. Data Manipulation Statements
13.2.1. CALL Syntax
13.2.2. DELETE Syntax
13.2.3. DO Syntax
13.2.4. HANDLER Syntax
13.2.5. INSERT Syntax
13.2.6. LOAD DATA INFILE Syntax
13.2.7. LOAD XML Syntax
13.2.8. REPLACE Syntax
13.2.9. SELECT Syntax
13.2.10. Subquery Syntax
13.2.11. UPDATE Syntax
13.3. MySQL Transactional and Locking Statements
13.3.1. START TRANSACTION, COMMIT, and ROLLBACK Syntax
13.3.2. Statements That Cannot Be Rolled Back
13.3.3. Statements That Cause an Implicit Commit
13.3.4. SAVEPOINT, ROLLBACK TO SAVEPOINT, and RELEASE SAVEPOINT Syntax
13.3.5. LOCK TABLES and UNLOCK TABLES Syntax
13.3.6. SET TRANSACTION Syntax
13.3.7. XA Transactions
13.4. Replication Statements
13.4.1. SQL Statements for Controlling Master Servers
13.4.2. SQL Statements for Controlling Slave Servers
13.5. SQL Syntax for Prepared Statements
13.5.1. PREPARE Syntax
13.5.2. EXECUTE Syntax
13.5.3. DEALLOCATE PREPARE Syntax
13.6. MySQL Compound-Statement Syntax
13.6.1. BEGIN ... END Compound-Statement Syntax
13.6.2. Statement Label Syntax
13.6.3. DECLARE Syntax
13.6.4. Variables in Stored Programs
13.6.5. Flow Control Statements
13.6.6. Cursors
13.6.7. Condition Handling
13.7. Database Administration Statements
13.7.1. Account Management Statements
13.7.2. Table Maintenance Statements
13.7.3. Plugin and User-Defined Function Statements
13.7.4. SET Syntax
13.7.5. SHOW Syntax
13.7.6. Other Administrative Statements
13.8. MySQL Utility Statements
13.8.1. DESCRIBE Syntax
13.8.2. EXPLAIN Syntax
13.8.3. HELP Syntax
13.8.4. USE Syntax
14. Storage Engines
14.1. Setting the Storage Engine
14.2. The InnoDB Storage Engine
14.2.1. Getting Started with InnoDB
14.2.2. Creating and Using InnoDB Tables and Indexes
14.2.3. Administering InnoDB
14.2.4. InnoDB Concepts and Architecture
14.2.5. InnoDB Performance Tuning and Troubleshooting
14.2.6. InnoDB Features for Flexibility, Ease of Use and Reliability
14.2.7. InnoDB Startup Options and System Variables
14.2.8. Limits on InnoDB Tables
14.2.9. MySQL and the ACID Model
14.2.10. InnoDB Integration with memcached
14.3. The MyISAM Storage Engine
14.3.1. MyISAM Startup Options
14.3.2. Space Needed for Keys
14.3.3. MyISAM Table Storage Formats
14.3.4. MyISAM Table Problems
14.4. The MEMORY Storage Engine
14.5. The CSV Storage Engine
14.5.1. Repairing and Checking CSV Tables
14.5.2. CSV Limitations
14.6. The ARCHIVE Storage Engine
14.7. The BLACKHOLE Storage Engine
14.8. The MERGE Storage Engine
14.8.1. MERGE Table Advantages and Disadvantages
14.8.2. MERGE Table Problems
14.9. The FEDERATED Storage Engine
14.9.1. FEDERATED Storage Engine Overview
14.9.2. How to Create FEDERATED Tables
14.9.3. FEDERATED Storage Engine Notes and Tips
14.9.4. FEDERATED Storage Engine Resources
14.10. The EXAMPLE Storage Engine
14.11. Other Storage Engines
14.12. Overview of MySQL Storage Engine Architecture
14.12.1. Pluggable Storage Engine Architecture
14.12.2. The Common Database Server Layer
15. High Availability and Scalability
15.1. Oracle VM Template for MySQL Enterprise Edition
15.2. Overview of MySQL with DRBD/Pacemaker/Corosync/Oracle Linux
15.3. Overview of MySQL with Windows Failover Clustering
15.4. Using MySQL within an Amazon EC2 Instance
15.4.1. Setting Up MySQL on an EC2 AMI
15.4.2. EC2 Instance Limitations
15.4.3. Deploying a MySQL Database Using EC2
15.5. Using ZFS Replication
15.5.1. Using ZFS for File System Replication
15.5.2. Configuring MySQL for ZFS Replication
15.5.3. Handling MySQL Recovery with ZFS
15.6. Using MySQL with memcached
15.6.1. Installing memcached
15.6.2. Using memcached
15.6.3. Developing a memcached Application
15.6.4. Getting memcached Statistics
15.6.5. memcached FAQ
15.7. MySQL Proxy
15.7.1. MySQL Proxy Supported Platforms
15.7.2. Installing MySQL Proxy
15.7.3. MySQL Proxy Command Options
15.7.4. MySQL Proxy Scripting
15.7.5. Using MySQL Proxy
15.7.6. MySQL Proxy FAQ
16. Replication
16.1. Replication Configuration
16.1.1. How to Set Up Replication
16.1.2. Replication Formats
16.1.3. Replication with Global Transaction Identifiers
16.1.4. Replication and Binary Logging Options and Variables
16.1.5. Common Replication Administration Tasks
16.2. Replication Implementation
16.2.1. Replication Implementation Details
16.2.2. Replication Relay and Status Logs
16.2.3. How Servers Evaluate Replication Filtering Rules
16.3. Replication Solutions
16.3.1. Using Replication for Backups
16.3.2. Using Replication with Different Master and Slave Storage Engines
16.3.3. Using Replication for Scale-Out
16.3.4. Replicating Different Databases to Different Slaves
16.3.5. Improving Replication Performance
16.3.6. Switching Masters During Failover
16.3.7. Setting Up Replication Using SSL
16.3.8. Semisynchronous Replication
16.3.9. Delayed Replication
16.4. Replication Notes and Tips
16.4.1. Replication Features and Issues
16.4.2. Replication Compatibility Between MySQL Versions
16.4.3. Upgrading a Replication Setup
16.4.4. Troubleshooting Replication
16.4.5. How to Report Replication Bugs or Problems
17. Partitioning
17.1. Overview of Partitioning in MySQL
17.2. Partitioning Types
17.2.1. RANGE Partitioning
17.2.2. LIST Partitioning
17.2.3. COLUMNS Partitioning
17.2.4. HASH Partitioning
17.2.5. KEY Partitioning
17.2.6. Subpartitioning
17.2.7. How MySQL Partitioning Handles NULL
17.3. Partition Management
17.3.1. Management of RANGE and LIST Partitions
17.3.2. Management of HASH and KEY Partitions
17.3.3. Exchanging Partitions and Subpartitions with Tables
17.3.4. Maintenance of Partitions
17.3.5. Obtaining Information About Partitions
17.4. Partition Pruning
17.5. Partition Selection
17.6. Restrictions and Limitations on Partitioning
17.6.1. Partitioning Keys, Primary Keys, and Unique Keys
17.6.2. Partitioning Limitations Relating to Storage Engines
17.6.3. Partitioning Limitations Relating to Functions
17.6.4. Partitioning and Locking
18. Stored Programs and Views
18.1. Defining Stored Programs
18.2. Using Stored Routines (Procedures and Functions)
18.2.1. Stored Routine Syntax
18.2.2. Stored Routines and MySQL Privileges
18.2.3. Stored Routine Metadata
18.2.4. Stored Procedures, Functions, Triggers, and LAST_INSERT_ID()
18.3. Using Triggers
18.3.1. Trigger Syntax
18.3.2. Trigger Metadata
18.4. Using the Event Scheduler
18.4.1. Event Scheduler Overview
18.4.2. Event Scheduler Configuration
18.4.3. Event Syntax
18.4.4. Event Metadata
18.4.5. Event Scheduler Status
18.4.6. The Event Scheduler and MySQL Privileges
18.5. Using Views
18.5.1. View Syntax
18.5.2. View Processing Algorithms
18.5.3. Updatable and Insertable Views
18.5.4. View Metadata
18.6. Access Control for Stored Programs and Views
18.7. Binary Logging of Stored Programs
19. INFORMATION_SCHEMA Tables
19.1. The INFORMATION_SCHEMA CHARACTER_SETS Table
19.2. The INFORMATION_SCHEMA COLLATIONS Table
19.3. The INFORMATION_SCHEMA COLLATION_CHARACTER_SET_APPLICABILITY Table
19.4. The INFORMATION_SCHEMA COLUMNS Table
19.5. The INFORMATION_SCHEMA COLUMN_PRIVILEGES Table
19.6. The INFORMATION_SCHEMA ENGINES Table
19.7. The INFORMATION_SCHEMA EVENTS Table
19.8. The INFORMATION_SCHEMA FILES Table
19.9. The INFORMATION_SCHEMA GLOBAL_STATUS and SESSION_STATUS Tables
19.10. The INFORMATION_SCHEMA GLOBAL_VARIABLES and SESSION_VARIABLES Tables
19.11. The INFORMATION_SCHEMA KEY_COLUMN_USAGE Table
19.12. The INFORMATION_SCHEMA OPTIMIZER_TRACE Table
19.13. The INFORMATION_SCHEMA PARAMETERS Table
19.14. The INFORMATION_SCHEMA PARTITIONS Table
19.15. The INFORMATION_SCHEMA PLUGINS Table
19.16. The INFORMATION_SCHEMA PROCESSLIST Table
19.17. The INFORMATION_SCHEMA PROFILING Table
19.18. The INFORMATION_SCHEMA REFERENTIAL_CONSTRAINTS Table
19.19. The INFORMATION_SCHEMA ROUTINES Table
19.20. The INFORMATION_SCHEMA SCHEMATA Table
19.21. The INFORMATION_SCHEMA SCHEMA_PRIVILEGES Table
19.22. The INFORMATION_SCHEMA STATISTICS Table
19.23. The INFORMATION_SCHEMA TABLES Table
19.24. The INFORMATION_SCHEMA TABLESPACES Table
19.25. The INFORMATION_SCHEMA TABLE_CONSTRAINTS Table
19.26. The INFORMATION_SCHEMA TABLE_PRIVILEGES Table
19.27. The INFORMATION_SCHEMA TRIGGERS Table
19.28. The INFORMATION_SCHEMA USER_PRIVILEGES Table
19.29. The INFORMATION_SCHEMA VIEWS Table
19.30. INFORMATION_SCHEMA Tables for InnoDB
19.30.1. The INFORMATION_SCHEMA INNODB_CMP and INNODB_CMP_RESET Tables
19.30.2. The INFORMATION_SCHEMA INNODB_CMP_PER_INDEX and INNODB_CMP_PER_INDEX_RESET Tables
19.30.3. The INFORMATION_SCHEMA INNODB_CMPMEM and INNODB_CMPMEM_RESET Tables
19.30.4. The INFORMATION_SCHEMA INNODB_TRX Table
19.30.5. The INFORMATION_SCHEMA INNODB_LOCKS Table
19.30.6. The INFORMATION_SCHEMA INNODB_LOCK_WAITS Table
19.30.7. The INFORMATION_SCHEMA INNODB_SYS_TABLES Table
19.30.8. The INFORMATION_SCHEMA INNODB_SYS_INDEXES Table
19.30.9. The INFORMATION_SCHEMA INNODB_SYS_COLUMNS Table
19.30.10. The INFORMATION_SCHEMA INNODB_SYS_FIELDS Table
19.30.11. The INFORMATION_SCHEMA INNODB_SYS_FOREIGN Table
19.30.12. The INFORMATION_SCHEMA INNODB_SYS_FOREIGN_COLS Table
19.30.13. The INFORMATION_SCHEMA INNODB_SYS_TABLESTATS View
19.30.14. The INFORMATION_SCHEMA INNODB_BUFFER_PAGE Table
19.30.15. The INFORMATION_SCHEMA INNODB_BUFFER_PAGE_LRU Table
19.30.16. The INFORMATION_SCHEMA INNODB_BUFFER_POOL_STATS Table
19.30.17. The INFORMATION_SCHEMA INNODB_METRICS Table
19.30.18. The INFORMATION_SCHEMA INNODB_FT_CONFIG Table
19.30.19. The INFORMATION_SCHEMA INNODB_FT_DEFAULT_STOPWORD Table
19.30.20. The INFORMATION_SCHEMA INNODB_FT_INDEX_TABLE Table
19.30.21. The INFORMATION_SCHEMA INNODB_FT_INDEX_CACHE Table
19.30.22. The INFORMATION_SCHEMA INNODB_FT_INSERTED Table
19.30.23. The INFORMATION_SCHEMA INNODB_FT_DELETED Table
19.30.24. The INFORMATION_SCHEMA INNODB_FT_BEING_DELETED Table
19.31. Extensions to SHOW Statements
20. MySQL Performance Schema
20.1. Performance Schema Quick Start
20.2. Performance Schema Configuration
20.2.1. Performance Schema Build Configuration
20.2.2. Performance Schema Startup Configuration
20.2.3. Performance Schema Runtime Configuration
20.3. Performance Schema Queries
20.4. Performance Schema Instrument Naming Conventions
20.5. Performance Schema Status Monitoring
20.6. Performance Schema Atom and Molecule Events
20.7. Performance Schema Statement Digests
20.8. Performance Schema General Table Characteristics
20.9. Performance Schema Table Descriptions
20.9.1. Performance Schema Setup Tables
20.9.2. Performance Schema Instance Tables
20.9.3. Performance Schema Wait Event Tables
20.9.4. Performance Schema Stage Event Tables
20.9.5. Performance Schema Statement Event Tables
20.9.6. Performance Schema Connection Tables
20.9.7. Performance Schema Connection Attribute Tables
20.9.8. Performance Schema Summary Tables
20.9.9. Performance Schema Miscellaneous Tables
20.10. Performance Schema Command Options
20.11. Performance Schema System Variables
20.12. Performance Schema Status Variables
20.13. Performance Schema and Plugins
20.14. Using the Performance Schema to Diagnose Problems
21. Connectors and APIs
21.1. MySQL Connector/ODBC
21.1.1. Connector/ODBC Versions
21.1.2. Connector/ODBC Introduction
21.1.3. Connector/ODBC Installation
21.1.4. Configuring Connector/ODBC
21.1.5. Connector/ODBC Examples
21.1.6. Connector/ODBC Reference
21.1.7. Connector/ODBC Notes and Tips
21.1.8. Connector/ODBC Support
21.2. MySQL Connector/Net
21.2.1. Connector/Net Versions
21.2.2. Installing Connector/Net
21.2.3. Connector/Net Visual Studio Integration
21.2.4. Connector/Net Tutorials
21.2.5. Connector/Net Programming
21.2.6. Connector/Net Connection String Options Reference
21.2.7. Connector/Net API Reference
21.2.8. Connector/Net Support
21.2.9. Connector/Net FAQ
21.3. MySQL Connector/J
21.3.1. Overview of MySQL Connector/J
21.3.2. Connector/J Versions
21.3.3. Connector/J Installation
21.3.4. Connector/J Examples
21.3.5. Connector/J (JDBC) Reference
21.3.6. JDBC Concepts
21.3.7. Connection Pooling with Connector/J
21.3.8. Load Balancing with Connector/J
21.3.9. Failover with Connector/J
21.3.10. Using the Connector/J Interceptor Classes
21.3.11. Using Connector/J with Tomcat
21.3.12. Using Connector/J with JBoss
21.3.13. Using Connector/J with Spring
21.3.14. Using Connector/J with GlassFish
21.3.15. Troubleshooting Connector/J Applications
21.3.16. Connector/J Support
21.4. MySQL Connector/C++
21.4.1. Installing the MySQL Connector/C++ Binary
21.4.2. Installing MySQL Connector/C++ from Source
21.4.3. MySQL Connector/C++ Building Windows Applications with Microsoft Visual Studio
21.4.4. MySQL Connector/C++ Building Linux Applications with NetBeans
21.4.5. MySQL Connector/C++ Getting Started: Usage Examples
21.4.6. MySQL Connector/C++ Tutorials
21.4.7. MySQL Connector/C++ Debug Tracing
21.4.8. MySQL Connector/C++ Usage Notes
21.4.9. MySQL Connector/C++ Known Bugs and Issues
21.4.10. MySQL Connector/C++ Feature requests
21.4.11. MySQL Connector/C++ Support
21.4.12.
21.5. MySQL Connector/C
21.5.1. Building MySQL Connector/C from the Source Code
21.5.2. Testing MySQL Connector/C
21.5.3. MySQL Connector/C FAQ
21.6. MySQL Connector/Python
21.6.1. Guidelines for Python Developers
21.6.2. Connector/Python Versions
21.6.3. Connector/Python Installation
21.6.4. Connector/Python Coding Examples
21.6.5. Connector/Python Tutorials
21.6.6. Connector/Python Connection Arguments
21.6.7. Connector/Python API Reference
21.6.8. Connector/Python FAQ
21.7. MySQL Connector/OpenOffice.org
21.7.1. Installation
21.7.2. Getting Started: Connecting to MySQL
21.7.3. Getting Started: Usage Examples
21.7.4. References
21.7.5. Known Bugs
21.7.6. Contact
21.8. libmysqld, the Embedded MySQL Server Library
21.8.1. Compiling Programs with libmysqld
21.8.2. Restrictions When Using the Embedded MySQL Server
21.8.3. Options with the Embedded Server
21.8.4. Embedded Server Examples
21.9. MySQL C API
21.9.1. C API Data Structures
21.9.2. C API Function Overview
21.9.3. C API Function Descriptions
21.9.4. C API Prepared Statements
21.9.5. C API Prepared Statement Data Structures
21.9.6. C API Prepared Statement Function Overview
21.9.7. C API Prepared Statement Function Descriptions
21.9.8. C API Threaded Function Descriptions
21.9.9. C API Embedded Server Function Descriptions
21.9.10. C API Client Plugin Functions
21.9.11. Common Questions and Problems When Using the C API
21.9.12. Controlling Automatic Reconnection Behavior
21.9.13. C API Support for Multiple Statement Execution
21.9.14. C API Prepared Statement Problems
21.9.15. C API Prepared Statement Handling of Date and Time Values
21.9.16. C API Support for Prepared CALL Statements
21.9.17. Building Client Programs
21.10. MySQL PHP API
21.10.1. Overview of the MySQL PHP drivers
21.10.2. Original MySQL API (Mysql)
21.10.3. MySQL Improved Extension (Mysqli)
21.10.4. MySQL Functions (PDO_MYSQL) (MySQL (PDO))
21.10.5. MySQL Native Driver (Mysqlnd)
21.10.6. Mysqlnd replication and load balancing plugin (mysqlnd_ms)
21.10.7. Mysqlnd query result cache plugin (mysqlnd_qc)
21.10.8. Mysqlnd user handler plugin (mysqlnd_uh)
21.10.9. Mysqlnd connection multiplexing plugin (mysqlnd_mux)
21.10.10. Connector/PHP
21.10.11. Common Problems with MySQL and PHP
21.10.12. Enabling Both mysql and mysqli in PHP
21.11. MySQL Perl API
21.12. MySQL Python API
21.13. MySQL Ruby APIs
21.13.1. The MySQL/Ruby API
21.13.2. The Ruby/MySQL API
21.14. MySQL Tcl API
21.15. MySQL Eiffel Wrapper
22. Extending MySQL
22.1. MySQL Internals
22.1.1. MySQL Threads
22.1.2. The MySQL Test Suite
22.2. The MySQL Plugin API
22.2.1. Plugin API Characteristics
22.2.2. Plugin API Components
22.2.3. Types of Plugins
22.2.4. Writing Plugins
22.2.5. MySQL Services for Plugins
22.3. Adding New Functions to MySQL
22.3.1. Features of the User-Defined Function Interface
22.3.2. Adding a New User-Defined Function
22.3.3. Adding a New Native Function
22.4. Debugging and Porting MySQL
22.4.1. Debugging a MySQL Server
22.4.2. Debugging a MySQL Client
22.4.3. The DBUG Package
23. MySQL Enterprise Edition
23.1. MySQL Enterprise Monitor
23.2. MySQL Enterprise Backup
23.3. MySQL Enterprise Security
23.4. MySQL Enterprise Audit
23.5. MySQL Thread Pool
24. MySQL Workbench
25. MySQL for Excel
25.1. Installing and Configuring
25.2. Edit MySQL Data
25.3. Import MySQL Data
25.4. Append MySQL Data
25.5. Export MySQL Data
A. Licenses for Third-Party Components
A.1. Ant-Contrib License
A.2. ANTLR 3.3 License
A.3. Boost Library License
A.4. dtoa.c License
A.5. Editline Library (libedit) License
A.6. Facebook Fast Checksum Patch License
A.7. Facebook Patches License
A.8. FindGTest.cmake License
A.9. Fred Fish's Dbug Library License
A.10. getarg License
A.11. GLib License (for MySQL Proxy)
A.12. GNU General Public License Version 2.0, June 1991
A.13. GNU General Public License Version 3.0, 29 June 2007 and GCC Runtime Library Exception Version 3.1, 31 March 2009
A.14. GNU Lesser General Public License Version 2.1, February 1999
A.15. GNU Libtool License
A.16. GNU Readline License
A.17. GNU Standard C++ Library (libstdc++) License
A.18. Google Controlling Master Thread I/O Rate Patch License
A.19. Google Perftools (TCMalloc utility) License
A.20. Google SMP Patch License
A.21. lib_sql.cc License
A.22. Libaio License
A.23. libevent License
A.24. Libiconv License
A.25. libintl License
A.26. Linux-PAM License
A.27. LPeg Library License
A.28. Lua (liblua) License
A.29. LuaFileSystem Library License
A.30. md5 (Message-Digest Algorithm 5) License
A.31. memcached License
A.32. mkpasswd.pl License
A.33. nt_servc (Windows NT Service class library) License
A.34. OpenPAM License
A.35. OpenSSL v1.0 License
A.36. PCRE License
A.37. Percona Multiple I/O Threads Patch License
A.38. Red HAT RPM Spec File License
A.39. RegEX-Spencer Library License
A.40. RFC 3174 - US Secure Hash Algorithm 1 (SHA1) License
A.41. Richard A. O'Keefe String Library License
A.42. SHA-1 in C License
A.43. Simple Logging Facade for Java (SLF4J) License
A.44. Unicode Data Files
A.45. zlib License
A.46. ZLIB.NET License
B. MySQL 5.6 Frequently Asked Questions
B.1. MySQL 5.6 FAQ: General
B.2. MySQL 5.6 FAQ: Storage Engines
B.3. MySQL 5.6 FAQ: Server SQL Mode
B.4. MySQL 5.6 FAQ: Stored Procedures and Functions
B.5. MySQL 5.6 FAQ: Triggers
B.6. MySQL 5.6 FAQ: Views
B.7. MySQL 5.6 FAQ: INFORMATION_SCHEMA
B.8. MySQL 5.6 FAQ: Migration
B.9. MySQL 5.6 FAQ: Security
B.10. MySQL 5.6 FAQ: MySQL Cluster
B.11. MySQL 5.6 FAQ: MySQL Chinese, Japanese, and Korean Character Sets
B.12. MySQL 5.6 FAQ: Connectors & APIs
B.13. MySQL 5.6 FAQ: Replication
C. Errors, Error Codes, and Common Problems
C.1. Sources of Error Information
C.2. Types of Error Values
C.3. Server Error Codes and Messages
C.4. Client Error Codes and Messages
C.5. Problems and Common Errors
C.5.1. How to Determine What Is Causing a Problem
C.5.2. Common Errors When Using MySQL Programs
C.5.3. Installation-Related Issues
C.5.4. Administration-Related Issues
C.5.5. Query-Related Issues
C.5.6. Optimizer-Related Issues
C.5.7. Table Definition-Related Issues
C.5.8. Known Issues in MySQL
D. MySQL Release Notes
D.1. Changes in MySQL 5.6 (Development)
D.1.1. Changes in MySQL 5.6.10 (Not yet released)
D.1.2. Changes in MySQL 5.6.9 (Not yet released)
D.1.3. Changes in MySQL 5.6.8 (2012-11-07)
D.1.4. Changes in MySQL 5.6.7 (2012-09-29, Release Candidate)
D.1.5. Changes in MySQL 5.6.6 (2012-08-07, Milestone 9)
D.1.6. Changes in MySQL 5.6.5 (2012-04-10, Milestone 8)
D.1.7. Changes in MySQL 5.6.4 (2011-12-20, Milestone 7)
D.1.8. Changes in MySQL 5.6.3 (2011-10-03, Milestone 6)
D.1.9. Changes in MySQL 5.6.2 (2011-04-11)
D.1.10. Changes in MySQL 5.6.1 (Not released, Milestone 5)
D.1.11. Changes in MySQL 5.6.0 (Not released, Milestone 4)
D.2. MySQL Connector/ODBC (MyODBC) Change History
D.2.1. Changes in MySQL Connector/ODBC Version 5.2
D.2.2. Changes in MySQL Connector/ODBC Version 5.1
D.2.3. Changes in MySQL Connector/ODBC Version 5.0
D.2.4. Changes in MySQL Connector/ODBC Version 3.51
D.3. MySQL Connector/Net Change History
D.3.1. Changes in MySQL Connector/Net Version 6.6
D.3.2. Changes in MySQL Connector/Net Version 6.5
D.3.3. Changes in MySQL Connector/Net Version 6.4
D.3.4. Changes in MySQL Connector/Net Version 6.3
D.3.5. Changes in MySQL Connector/Net Version 6.2
D.3.6. Changes in MySQL Connector/Net Version 6.1
D.3.7. Changes in MySQL Connector/Net Version 6.0
D.3.8. Changes in MySQL Connector/Net Version 5.3
D.3.9. Changes in MySQL Connector/Net Version 5.2
D.3.10. Changes in MySQL Connector/Net Version 5.1
D.3.11. Changes in MySQL Connector/Net Version 5.0
D.3.12. Changes in MySQL Connector/Net Version 1.0
D.3.13. Changes in MySQL Connector/Net Version 0.9.0 (30 August 2004)
D.3.14. Changes in MySQL Connector/Net Version 0.76
D.3.15. Changes in MySQL Connector/Net Version 0.75
D.3.16. Changes in MySQL Connector/Net Version 0.74
D.3.17. Changes in MySQL Connector/Net Version 0.71
D.3.18. Changes in MySQL Connector/Net Version 0.70
D.3.19. Changes in MySQL Connector/Net Version 0.68
D.3.20. Changes in MySQL Connector/Net Version 0.65
D.3.21. Changes in MySQL Connector/Net Version 0.60
D.3.22. Changes in MySQL Connector/Net Version 0.50
D.4. MySQL Visual Studio Plugin Change History
D.4.1. Changes in MySQL Visual Studio Plugin 1.0.3 (Not yet released)
D.4.2. Changes in MySQL Visual Studio Plugin 1.0.2 (Not yet released)
D.4.3. Changes in MySQL Visual Studio Plugin 1.0.1 (2006-10-04)
D.4.4. Changes in MySQL Visual Studio Plugin 1.0.0 (2006-10-04)
D.5. MySQL Connector/J Change History
D.5.1. Changes in MySQL Connector/J 5.1
D.5.2. Changes in MySQL Connector/J 5.0
D.5.3. Changes in MySQL Connector/J 3.1
D.5.4. Changes in MySQL Connector/J 3.0
D.5.5. Changes in MySQL Connector/J 2.0
D.5.6. Changes in MySQL Connector/J 1.2 and lower
D.6. MySQL Connector/C++ Change History
D.6.1. Changes in MySQL Connector/C++ 1.1
D.6.2. Changes in MySQL Connector/C++ 1.0
D.7. MySQL Proxy Change History
D.7.1. Changes in MySQL Proxy 0.8.3 (2012-08-20)
D.7.2. Changes in MySQL Proxy 0.8.2 (2011-08-18)
D.7.3. Changes in MySQL Proxy 0.8.1 (2010-09-13)
D.7.4. Changes in MySQL Proxy 0.8.0 (2010-01-21)
D.7.5. Changes in MySQL Proxy 0.7.2 (2009-06-30)
D.7.6. Changes in MySQL Proxy 0.7.1 (2009-05-15)
D.7.7. Changes in MySQL Proxy 0.7.0 (Not Released)
D.7.8. Changes in MySQL Proxy 0.6.1 (2008-02-06)
D.7.9. Changes in MySQL Proxy 0.6.0 (2007-09-11)
D.7.10. Changes in MySQL Proxy 0.5.1 (2007-06-30)
D.7.11. Changes in MySQL Proxy 0.5.0 (2007-06-19)
D.8. MySQL for Excel Change History
D.9. MySQL Installer Change History
D.9.1. Changes in MySQL Installer 1.1.5 (2012-09-30)
D.9.2. Changes in MySQL Installer 1.1.4 (2012-08-08)
D.9.3. Changes in MySQL Installer 1.1.0 (2012-07-25)
E. Restrictions and Limits
E.1. Restrictions on Stored Programs
E.2. Restrictions on Condition Handling
E.3. Restrictions on Server-Side Cursors
E.4. Restrictions on Subqueries
E.5. Restrictions on Views
E.6. Restrictions on XA Transactions
E.7. Restrictions on Character Sets
E.8. Restrictions on Performance Schema
E.9. Restrictions on Pluggable Authentication
E.10. Limits in MySQL
E.10.1. Limits of Joins
E.10.2. Limits on Number of Databases and Tables
E.10.3. Limits on Table Size
E.10.4. Table Column-Count and Row-Size Limits
E.10.5. Windows Platform Limitations
F. MySQL Glossary
General Index
C Function Index
Command Index
Function Index
INFORMATION_SCHEMA Index
Join Types Index
Operator Index
Option Index
Privileges Index
SQL Modes Index
Statement/Syntax Index
System Variable Index
Status Variable Index
Transaction Isolation Level Index