Synopses & Reviews
MySQL is the most popular SQL database in the open source community and is used almost universally by web sites running on open source systems. As powerful and flexible as it is lightweight and efficient, MySQL packs a large feature set into a very small and fast engine that now runs on more than 500,000 servers. This renowned online manual that has supported MySQL administrators and database developers for years is now available in paperback format. This book is an exact reproduction of the MySQL Reference Manual from the MySQL development team's Web site, minus some non-technical appendices. This version covers MySQL 4.0.
Many sophisticated topics appear in this comprehensive manual, ranging from the hitches you may run into when first installing MySQL to internals that will help you tune your queries. MySQL Reference Manual contains all the comprehensive reference material one would expect for building the product, running administrative utilities, and using various API as well as MySQL's rich version of SQL. In addition, you can turn a page and find such unexpected riches as:
- A thorough comparison of MySQL with SQL standards and other databases
- A discussion of privileges and suggested uses of privileges to enhance security
- Directions for replicating a database and for running several MySQL servers on a single system
- Directions for initializing a database from a flat file
- Guidelines for estimating the performance of different queries
- A far-reaching discussion of optimization, with reference to the implementation of MySQL
- Investigations of the differences between data types and the pros and cons of each type of number, string, or timestamp
- An extended inquiry into the effects of using delayed inserts
- A candid explanation of why various errors occur and how to recover from them
- Tips for weighted, full-text searches
- Detailed descriptions of the features, strengths, and weaknesses of available table formats
- A guide to adding new functions to MySQL
This comprehensive reference guide offers useful pointers for advanced use of SQL and describes the bugs and workarounds involved in compiling MySQL for every system.
About the Author
David Axmark, Co-founder: David Axmark is one of the founders of MySQL and worked with the product well before it had a name. He has worked as a consultant and software developer for nearly 20 years. Interested in free software since the early '80s, David has been committed to developing a successful business model through open source software.
Table of Contents
Preface; Chapter 1: General Information; 1.1 About This Manual; 1.2 What Is MySQL?; 1.3 What Is MySQL AB?; 1.4 MySQL Support and Licensing; 1.5 MySQL 4.0 in a Nutshell; 1.6 MySQL Information Sources; 1.7 How Standards-Compatible Is MySQL?; 1.8 MySQL and the Future (the TODO); 1.9 How MySQL Compares to Other Databases; Chapter 2: MySQL Installation; 2.1 Quick Standard Installation of MySQL; 2.2 General Installation Issues; 2.3 Installing a MySQL Source Distribution; 2.4 Post-Installation Setup and Testing; 2.5 Upgrading/Downgrading MySQL; 2.6 Operating System-Specific Notes; 2.7 Perl Installation Comments; Chapter 3: Tutorial Introduction; 3.1 Connecting to and Disconnecting from the Server; 3.2 Entering Queries; 3.3 Creating and Using a Database; 3.4 Getting Information About Databases and Tables; 3.5 Examples of Common Queries; 3.6 Using mysql in Batch Mode; 3.7 Queries from Twin Project; 3.8 Using MySQL with Apache; Chapter 4: Database Administration; 4.1 Configuring MySQL; 4.2 General Security Issues and the MySQL Access Privilege System; 4.3 MySQL User Account Management; 4.4 Disaster Prevention and Recovery; 4.5 Database Administration Language Reference; 4.6 MySQL Localisation and International Usage; 4.7 MySQL Server-Side Scripts and Utilities; 4.8 MySQL Client-Side Scripts and Utilities; 4.9 The MySQL Log Files; 4.10 Replication in MySQL; Chapter 5: MySQL Optimisation; 5.1 Optimisation Overview; 5.2 Optimising SELECTs and Other Queries; 5.3 Locking Issues; 5.4 Optimising Database Structure; 5.5 Optimising the MySQL Server; 5.6 Disk Issues; Chapter 6: MySQL Language Reference; 6.1 Language Structure; 6.2 Column Types; 6.3 Functions for Use in SELECT and WHERE Clauses; 6.4 Data Manipulation: SELECT, INSERT, UPDATE, DELETE; 6.5 Data Definition: CREATE, DROP, ALTER; 6.6 Basic MySQL User Utility Commands; 6.7 MySQL Transactional and Locking Commands; 6.8 MySQL Full-Text Search; 6.9 MySQL Query Cache; Chapter 7: MySQL Table Types; 7.1 MyISAM Tables; 7.2 MERGE Tables; 7.3 ISAM Tables; 7.4 HEAP Tables; 7.5 InnoDB Tables; 7.6 BDB or Berkeley_DB Tables; Chapter 8: MySQL APIs; 8.1 MySQL PHP API; 8.2 MySQL Perl API; 8.3 MySQL ODBC Support; 8.4 MySQL C API; 8.5 MySQL C++ APIs; 8.6 MySQL Java Connectivity (JDBC); 8.7 MySQL Python APIs; 8.8 MySQL Tcl APIs; 8.9 MySQL Eiffel Wrapper; Chapter 9: Extending MySQL; 9.1 MySQL Internals; 9.2 Adding New Functions to MySQL; 9.3 Adding New Procedures to MySQL; Problems and Common Errors; How to Determine What Is Causing Problems; Common Errors When Using MySQL; Installation-Related Issues; Administration-Related Issues; Query-Related Issues; Table Definition-Related Issues; Contributed Programs; APIs; Clients; Web Tools; Performance Benchmarking Tool; Authentication Tools; Converters; Using MySQL with Other Products; Utilities; RPMs for Common Tools (Most Are for RedHat 6.1); Useful Function; Windows Program; Uncategorized; Credits; Developers at MySQL AB; Contributors to MySQL; Supporters to MySQL; Porting to Other Systems; Debugging a MySQL Server; Debugging a MySQL Client; The DBUG Package; Locking Methods; Comments About RTS Threads; Differences Between Different Thread Packages; Environment Variables; MySQL Regular Expressions; Colophon;