At nearly 1,300 pages MySQL by Paul DuBois must be one of the largest books I have ever reviewed. This is the third edition of the database book and covers MySQL 4.1 and 5.0. If you thought you knew everything about MySQL then read this book and discover some of the near professional features that MySQL now has, such as database replication, using the embedded version of MySQL, security measures, transactions and how to tune your database queries using the query optimiser.
MySQL starts off with an introductory chapter taking you through a hypothetical student records database whilst working through all the possible SELECT statements you may ever need to write, some books are just on this subject and that was just part of chapter 1.
All aspects of MySQL are covered including tables, joins, indexing, keys, data types, sequences, type conversion, query optimiser, loading data, locking issues, error handling, APIs, embedded server library, Perl DBI, PHP, Data Dictionary, securing a new installation, managing user accounts, log files, tuning the server, storage configuration, internationalisation, replication servers, running multiple servers, internal and external security, backups, database maintenance, installing, numeric, string and spatial types, operators, functions, system variables, command line commands, C API reference, Perl DBI reference and PEAR DB modules.
As you can see the list of topics covered is never ending. MySQL is a book you can read and work through as well as a good reference manual, to pick up and read when you need it. A lot of people may just only be using a fraction of the functionality that the MySQL database has but it is good to know that this book is a definitive guide to MySQL and will contain the answers when you need them.
For some the new features in MySQL 5 will not be used for a long time, although the use of triggers, views, functions and procedures is something that MySQL has been crying out for to bring it into line with other databases such as Postgres and Oracle. I feel that the MySQL book could have had longer sections on writing triggers, and functions as it was only mentioned on a small number of pages, but the topic is covered.
This may be the only MySQL reference book you need as it is so complete and covers all areas of MySQL from basic select statements right up to the C API and MySQL Administration. The only down side is that the book is so large and heavy it’s difficult to pick up for long periods of time.