on 23 March 2010
This book is heavy going. At 1224 pages it will be used more as a reference manual than a book that you will read from start to finish. The book introduces itself nicely rather than jumping straight in, making it an ideal companion for users at all levels.
In simple terms, the book explains how to get your data into the database and then how to ask the right questions to retrieve selected records from the database (known as queries). The structure of the book has been well thought out, being broken down into 4 distinct sections, with each section being broken down into chapters. This format should make it easier to find the exact subject you need to research.
The breakdown in more detail is :-
Part 1 : General MySQL Use
This is a nice slow introduction into SQL. If you are new to the concept of relational databases (for those of you who use Microsoft Office, Access is also a relational database) and SQL, this section will give you a broad understanding of the language and the confidence to progess to further stages.
* Chapter 1, "Getting Started with MySQL and SQL". This chapter is more of an introduction to SQL in general and introduces the MySQL client program which will be used to write queries against the database.
* Chapter 2, "Working with data in MySQL". This chapter discusses how the database tables are created along with what types of fields can be created.
* Chapter 3, "MySQL syntax and use", This chapter discusses the SQL language and how MySQL varies from other forms of SQL.
* Chapter 4, "Query Optimisation". This chapter discusses how to make your queries run faster.
Part 2 : Using the MySQL programming interfaces
This section of the book is very technical so I'll just provide a summary so as not to lose half of the audience of the review. The book covers interfacing with many of the common web languages such as Perl, C and php. I would recommend that database and/or programming novices skip this section completely. If you have got a programming background and need to know how to interface with any of these languages, this section of the book gives you a good understanding of how to do this well and includes lots of code examples to back up this theory.
Part 3 : MySQL Administration
This part of the book looks at the role of the database administrator. This part, is one of the most important in the book as database security is paramount to any application so I would recommend that if you do read this book, your understanding of the content here is clear. Again, the author approaches this section in a nice structured manner and the chapters are well structured and relevant to what it trying to be achieved.
* Chapter 9, ""Introduction to MySQL Administration"". This chapter explains what the database administrator's duties are and what you should know to run a site successfully.
* Chapter 10, "The MySQL Data Directory". The data directory is the actual area where all of your database files are stored. This chapter provides an understanding of how the directory works.
* Chapter 11, "General MySQL Administration". This chapter discusses the setting up of user accounts and maintaining log files which are used if you need to roll the database back to an earlier state. In my opinion, this chapter is pretty heavy going but luckily, its something that you don't need to do too often.
* Chapter 12, "Security". In my opinion, one of the most crucial chapters in the book. We learn how to make the database safe from intruders and how to make the database safe over the internet by using encryption.
* Chapter 13, "Database Backups, Maintenance and Repair". Again, another crucial chapter in my opinion. The author discusses various scenarios and the best techniques to recover your data in the unfortunate event of a disaster (any loss of data in computing terms is referred to as a disaster). This chapter does deal with worst case scenarios but I feel that after reading and understanding this content, you will gain peace of mind that, should the worst happen, restoring data will not be an arduous task.
Part 4 : Appendices
There are 9 appendices which, to be truthful are only for the technically minded out there who wish to take the database to the nth degree. If reading about database column types and different programming languages excites you then you will spend many a happy hour trawling through the appendix. As I am trying to keep this review relevant to a wider audience, I am not going to go into detail here as it wont really give you a better understanding of the book.
This is the first book I have bought on MySQL. I usually tend to steer clear of technical books as I find that you can get more relevant and upto date information off the web and in particular, forums. I found the book to be at just the level I needed in terms of the functions I needed to perform. Having knowledge of SQL itself, I was pleased that the book didn't go over ground that I already knew in much detail, although it did touch the surface for the benefit of completely new users.
As someone who likes to delve straight in to writing queries, my only major gripe with the book is that there is a lot of theory and explanations of techniques before actually getting down to the nitty gritty of examples. In my opinion, examples are a lot easier for grasping the concept of a technique than reading paragraph after paragraph of text. Maybe this is an unfair criticism as other people might prefer the theoretical approach.
My only other downer with the book is that it goes into too much detail in the middle sections about various programming languages which, in my opinion is bordering with going out of scope as to what this book is about. In my opinion, if you want to know how to program Perl to make use of MySQL, then you buy a Perl book. I appreciate that its nice to know that you can perform these kinds of functions but I think this book goes into too much detail for my liking.
If you need a specific MySQL book then this one covers all aspects of the database in great detail. The MySQL syntax isn't a million miles from the Microsoft SQL server syntax so if all you wish to do is the query writing then any book on Microsoft SQL server will be adequate if you can find ones cheaper than this. As for understanding how to back up your databases, this book is an essential aid and for that reason alone I would recommend this book wholeheartedly.
on 13 August 2009
This is probably the best written technical book I have ever seen.
The exceptionally clear technical writing should serve as an example to every other technical author.
The fourth edition,being recently printed, is reasonably up to date, with even .the 'C' examples ( under linux) often working first time, without too many changes, typos,or compatibility problems.
on 6 April 2009
This is the only book I've ever read on MySQL and I've never needed anything else. It's a tutorial and a reference guide; it includes comprehensive coverage of the MySQL APIs for C, Perl and PHP (in my edition; possibly other languages are covered in later editions); it tells you where to get the software.
Even though SQL is a simple language, its structure is different from programming languages, and the tutorial leads you through its concepts and syntax at a gentle pace, but thoroughly. Meanwhile, the reference sections are models of clarity and I come back to them again and again.