Book description
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
No serious MySQL user should be without this book.
Publisher resources
Table of contents
-
MySQL Reference Manual
- Preface
-
1. General Information
- About This Manual
- What Is MySQL?
- What Is MySQL AB?
- MySQL Support and Licensing
- MySQL 4.0 in a Nutshell
- MySQL Information Sources
- How Standards-Compatible Is MySQL?
- MySQL and the Future (the TODO)
- How MySQL Compares to Other Databases
-
2. MySQL Installation
- Quick Standard Installation of MySQL
- General Installation Issues
- Installing a MySQL Source Distribution
- Post-Installation Setup and Testing
- Upgrading/Downgrading MySQL
- Operating System–Specific Notes
- Perl Installation Comments
- 3. Tutorial Introduction
-
4. Database Administration
- Configuring MySQL
-
General Security Issues and the MySQL Access Privilege System
- General Security Guidelines
- How to Make MySQL Secure Against Crackers
- Startup Options for mysqld Concerning Security
- Security Issues with LOAD DATA LOCAL
- What the Privilege System Does
- How the Privilege System Works
- Privileges Provided by MySQL
- Connecting to the MySQL server
- Access Control, Stage 1: Connection Verification
- Access Control, Stage 2: Request Verification
- Causes of Access denied Errors
- MySQL User Account Management
- Disaster Prevention and Recovery
- Database Administration Language Reference
- MySQL Localisation and International Usage
- MySQL Server-Side Scripts and Utilities
-
MySQL Client-Side Scripts and Utilities
- Overview of the Client-Side Scripts and Utilities
- The Command-Line Tool
- mysqladmin, Administrating a MySQL Server
- Using mysqlcheck for Table Maintenance and Crash Recovery
- mysqldump, Dumping Table Structure and Data
- mysqlhotcopy, Copying MySQL Databases and Tables
- mysqlimport, Importing Data from Text Files
- Showing Databases, Tables, and Columns
- perror, Explaining Error Codes
- How to Run SQL Commands from a Text File
- The MySQL Log Files
- Replication in MySQL
-
5. MySQL Optimisation
- Optimisation Overview
-
Optimising SELECTs and Other Queries
- EXPLAIN Syntax (Get Information About a SELECT)
- Estimating Query Performance
- Speed of SELECT Queries
- How MySQL Optimises WHERE Clauses
- How MySQL Optimises DISTINCT
- How MySQL Optimises LEFT JOIN and RIGHT JOIN
- How MySQL Optimises ORDER BY
- How MySQL Optimises LIMIT
- Speed of INSERT Queries
- Speed of UPDATE Queries
- Speed of DELETE Queries
- Other Optimisation Tips
- Locking Issues
- Optimising Database Structure
- Optimising the MySQL Server
- Disk Issues
-
6. MySQL Language Reference
- Language Structure
- Column Types
- Functions for Use in SELECT and WHERE Clauses
- Data Manipulation: SELECT, INSERT, UPDATE, DELETE
- Data Definition: CREATE, DROP, ALTER
- Basic MySQL User Utility Commands
- MySQL Transactional and Locking Commands
- MySQL Full-Text Search
- MySQL Query Cache
-
7. MySQL Table Types
- MyISAM Tables
- MERGE Tables
- ISAM Tables
- HEAP Tables
-
InnoDB Tables
- InnoDB Tables Overview
- InnoDB Startup Options
- Creating InnoDB Tablespace
- Creating InnoDB Tables
- Adding and Removing InnoDB Data and Log Files
- Backing up and Recovering an InnoDB Database
- Moving an InnoDB Database to Another Machine
- InnoDB Transaction Model
- Performance Tuning Tips
- Implementation of Multi-Versioning
- Table and Index Structures
- File Space Management and Disk I/O
- Error Handling
- Restrictions on InnoDB Tables
- InnoDB Contact Information
- BDB or Berkeley_DB Tables
-
8. MySQL APIs
- MySQL PHP API
- MySQL Perl API
- MySQL ODBC Support
-
MySQL C API
- C API Datatypes
- C API Function Overview
-
C API Function Descriptions
- mysql_affected_rows( )
- Description
- Return values
- Errors
- Example
- mysql_change_user( )
- Description
- Return values
- Errors
- Example
- mysql_character_set_name( )
- Description
- Return values
- Errors
- mysql_close( )
- Description
- Return values
- Errors
- mysql_connect( )
- Description
- Return values
- Errors
- mysql_create_db( )
- Description
- Return values
- Errors
- Example
- mysql_data_seek( )
- Description
- Return values
- Errors
- mysql_debug( )
- Description
- Return values
- Errors
- Example
- mysql_drop_db( )
- Description
- Return values
- Errors
- Example
- mysql_dump_debug_info( )
- Description
- Return values
- Errors
- mysql_eof( )
- Description
- Return values
- Errors
- Example
- mysql_errno( )
- Description
- Return values
- Errors
- mysql_error( )
- Description
- Return values
- Errors
- mysql_escape_string( )
- mysql_fetch_field( )
- Description
- Return values
- Errors
- Example
- mysql_fetch_fields( )
- Description
- Return values
- Errors
- Example
- mysql_fetch_field_direct( )
- Description
- Return values
- Errors
- Example
- mysql_fetch_lengths( )
- Description
- Return values
- Errors
- Example
- mysql_fetch_row( )
- Description
- Return values
- Errors
- Example
- mysql_field_count( )
- Description
- Return values
- Errors
- Example
- mysql_field_seek( )
- Description
- Return values
- Errors
- mysql_field_tell( )
- Description
- Return values
- Errors
- mysql_free_result( )
- Description
- Return values
- Errors
- mysql_get_client_info( )
- Description
- Return values
- Errors
- mysql_get_host_info( )
- Description
- Return values
- Errors
- mysql_get_proto_info( )
- Description
- Return values
- Errors
- mysql_get_server_info( )
- Description
- Return values
- Errors
- mysql_info( )
- Description
- Return values
- Errors
- mysql_init( )
- Description
- Return values
- Errors
- mysql_insert_id( )
- Description
- Return values
- Errors
- mysql_kill( )
- Description
- Return values
- Errors
- mysql_list_dbs( )
- Description
- Return values
- Errors
- mysql_list_fields( )
- Description
- Return values
- Errors
- mysql_list_processes( )
- Description
- Return values
- Errors
- mysql_list_tables( )
- Description
- Return values
- Errors
- mysql_num_fields( )
- Description
- Return values
- Errors
- Example
- mysql_num_rows( )
- Description
- Return values
- Errors
- mysql_options( )
- Description
- Return values
- Example
- mysql_ping( )
- Description
- Return values
- Errors
- mysql_query( )
- Description
- Return values
- Errors
- mysql_real_connect( )
- Description
- Return values
- Errors
- Example
- mysql_real_escape_string( )
- Description
- Example
- Return values
- Errors
- mysql_real_query( )
- Description
- Return values
- Errors
- mysql_reload( )
- Description
- Return values
- Errors
- mysql_row_seek( )
- Description
- Return values
- Errors
- mysql_row_tell( )
- Description
- Return values
- Errors
- mysql_select_db( )
- Description
- Return values
- Errors
- mysql_shutdown( )
- Description
- Return values
- Errors
- mysql_stat( )
- Description
- Return values
- Errors
- mysql_store_result( )
- Description
- Return values
- Errors
- mysql_thread_id( )
- Description
- Return values
- Errors
- mysql_use_result( )
- Description
- Return values
- Errors
- C Threaded Function Descriptions
- C Embedded Server Function Descriptions
- Common Questions and Problems When Using the C API
- Building Client Programs
- How to Make a Threaded Client
- libmysqld, the Embedded MySQL Server Library
- MySQL C++ APIs
- MySQL Java Connectivity (JDBC)
- MySQL Python APIs
- MySQL Tcl APIs
- MySQL Eiffel Wrapper
- 9. Extending MySQL
-
A. Problems and Common Errors
- How to Determine What Is Causing Problems
-
Common Errors When Using MySQL
- Access denied Error
- MySQL server has gone away Error
- Can't connect to [local] MySQL server Error
- Host '...' is blocked Error
- Too many connections Error
- Some non-transactional changed tables couldn't be rolled back Error
- Out of memory Error
- Packet too large Error
- Communication Error/ Aborted Connection
- The table is full Error
- Can't create/write to file Error
- Commands out of sync Error in Client
- Ignoring user Error
- Table 'xxx' doesn't exist Error
- Can't initialize character set xxx error
- File Not Found
- Installation-Related Issues
- Administration-Related Issues
- Query-Related Issues
- Table Definition-Related Issues
- B. Contributed Programs
- C. Credits
- D. Porting to Other Systems
- E. Environment Variables
- F. MySQL Regular Expressions
- Index
- Colophon
Product information
- Title: MySQL Reference Manual
- Author(s):
- Release date: June 2002
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9780596002657
You might also like
book
MySQL Cookbook
While MySQL has turned up among high profile users such as Yahoo!, NASA and the U.S. …
book
MySQL 8 Cookbook
Design and administer enterprise-grade MySQL 8 solutions About This Book Store, retrieve, and manipulate your data …
book
MySQL Troubleshooting
Stuck with bugs, performance problems, crashes, data corruption, and puzzling output? If you’re a database programmer …
book
Advanced MySQL 8
Design cost-efficient database solutions, scale enterprise operations and reduce overhead business costs with MySQL Key Features …