Versions of Software Covered in This Book
The first edition of this book covered MySQL 3.22 and the beginnings of MySQL 3.23 (up to about 3.23.3). The second edition expanded that range to include MySQL 4.0 and the first release of MySQL 4.1. The first edition was already a large book, and the additional material for the second edition made it even bigger. Now that MySQL has entered its 5.0 release series, it's become necessary to take a different approach to keep the book a more manageable size.
For this third edition, the baseline for coverage is MySQL 4.1. That is, the book covers MySQL 4.1 and the early releases of MySQL 5.0. Most of this book still applies if you have an older version, but differences specific to older versions usually are not explicitly noted. For example, the book does not list limitations on foreign key support that apply only before MySQL 4.1.
The MySQL 4.1 series now has reached production status, which means that it is considered stable for use in production environments. There were a lot of changes in earlier pre-production versions, and I recommend that you use the most recent version if possible. The current version as I write is 4.1.9. The MySQL 5.0 series is in early development (currently at 5.0.3). You'll need MySQL 5.0 if you want to try stored procedures, views, or triggers. These are still new, so expect some rough edges for a while.
If you're using an older version of MySQL, be aware that the following major features will not be available to you:
If you're using a version of MySQL older than 4.1, you may also find that certain features differ from the current behavior described in this book. Here are two resources to consult for more information about older versions:
I also draw your attention to some topics that are not covered in this book:
In addition, features such as views and triggers were added very recently. They are covered, but in less depth than you can expect in a future edition of this book, after development has matured further.
For the other major software packages discussed in the book, any recent versions should be sufficient for the examples shown. The current versions are shown in the following table:
All software discussed in this book is available on the Internet. Appendix A, "Obtaining and Installing Software," provides instructions for getting MySQL, Perl DBI support, PHP, Apache, and CGI.pm onto your system. The appendix also contains instructions for obtaining the sampdb sample database that is used in examples throughout the book, as well as the example programs that are developed in the programming chapters.