Errata for High Performance MySQL

The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".

The following errata were submitted by our customers and approved as valid errors by the author or editor.

In the paragraph "12,773" (and "12,771") queries are mentioned, referring to the profile on page 72. There it says 78,069 queries.

Note from the Author or Editor:This is a misunderstanding, not a typo. If it needs to be clarified, it should be changed to:
What if item #1 in the profile we showed earlier had instead been composed of two queries...

Jens Dietze

Jul 23, 2013

May 08, 2015

Printed

Page 150
Figure 5-2, and top paragraph of page 151

The lowermost leaf page in the diagram has a break between the two "Basinger, Viven" entries, indicating there are many entries between them, but the top paragraph of page 151 refers to those entries as the "last two entries" and at least implies that they are adjacent entries.
The graphic should be amended such that the break is between "Barrymore, Julia" and the leftmost "Basinger, Vivien", so as to be less potentially confusing.

Joel Bradshaw

Feb 11, 2013

May 08, 2015

Printed

Page 179
last paragraph

Indexed fields are wrong - it says "We can extend this index to cover (artist, title, prod_id) - but this should be (actor, title, prod_id)

Graeme Kelly

Sep 19, 2013

May 08, 2015

PDF

Page 343
Config file

The book recommends 'log_slow_queries'.
Result: "[Warning] '--log_slow_queries' is deprecated and will be removed in a future release. Please use ''--slow_query_log'/'--slow_query_log_file'' instead."
Changing it to 'slow_query_log' as suggested eliminates the warning for me.

Note from the Author or Editor:Please add a footnote after "good starting point" in the first para. The footnote should read:
Please note that newer versions of MySQL remove, deprecate, and change some options; check the docs for details.

Justin Honold

Aug 01, 2012

May 08, 2015

Printed

Page 451
Mysql Command

Trailing comma before semi-colon to end statement.
...IDENTIFIED BY 'p4ssword',;
should be
...IDENTIFIED BY 'p4ssword';

Jamie Kahgee

Sep 09, 2013

May 08, 2015

Printed

Page 458
2nd code block

The recommended options for use in replication on an InnoDB database includes the line "innodb_flush_logs_at_trx_commit=1 #Flush every log write".
This should be innodb_flush_log_at_trx_commit as documented on MySQL.
http://dev.mysql.com/doc/refman/5.1/en/innodb-parameters.html

DippieTheHam

Sep 28, 2012

May 08, 2015

PDF

Page 490
step 6 in detailed steps

The command "CHANGE MASTER TO MASTER_HOST=''" will throw the error: "Incorrect arguments to MASTER_HOST" for MySQL versions after 5.5. This is by design, and documented on the MySQL online documentation. For 5.5 versions starting 5.5.16, it is recommended to use 'reset slave all' to perform this step. For 5.5 earlier than 5.5.16, there's another way to perform this (see link). So, there are three ways to perform step 6 depending on the version running.
link: http://dev.mysql.com/doc/refman/5.5/en/reset-slave.html

Note from the Author or Editor:I suggest that we change the 3rd para to
The devil is in the details, however. Several scenarios are possible, depending on your replication topology. For example, the steps are slightly different in a master-master topology than in a master-replica setup, and future server versions will likely behave differently.

Gert van Dijk

Oct 15, 2012

May 08, 2015

Printed

Page 517
4th paragraph ("This process..."), 2nd sentence

"In particular, Tungsten Replicator was the first to offer parallel replication apply for MySQL." Seems like some words are missing. Should it be "In particular, Tungsten Replicator was the first product to offer parallel replication to apply for MySQL certification"? Or "...was the first product to offer parallel processing in replication for MySQL."?

Note from the Author or Editor:Change it to:
In particular, Tungsten Replicator was the first product to offer parallel replication apply for MySQL

Anonymous

Jun 20, 2012

May 08, 2015

Safari Books Online

547
1st paragraph after "Scaling by Consolidation"

There is a statement that MySQL efficiency will level off beyond 128MB (megabyte) of RAM. Is this correct or should it be GB?

Note from the Author or Editor:In "Scaling by Consolidation", change
to level off. A similar thing happens beyond 128 MB of memory, and MySQL can’t even
to
to level off. A similar thing happens beyond 128 GB of memory, and MySQL can’t even

Adrian Rudnik

Sep 06, 2012

May 08, 2015

Safari Books Online

9999
3rd paragraph of page - URL for page in Detailed description

URL for the page is:
http://proquest.safaribooksonline.com/book/databases/mysql/9781449332471/6dot-query-performance-optimization/id3662101?uicode=califa
Chapter 06
Section: Limitations of the MySQL Query Optimizer
Sub-section: Correlated Subqueries
1st sentence of 2nd paragraph of the sub-section says:
It�s tempting to think that MySQL will execute this query from the inside out, by finding a list of actor_id values and substituting them into the IN() list.
It should say:
It�s tempting to think that MySQL will execute this query from the inside out, by finding a list of [film_id] values and substituting them into the IN() list.

Note from the Author or Editor:The exact wording of the text should be
It’s tempting to think that MySQL will execute this query from the inside out, by finding a list of film_id values and substituting them into the IN() list.

pob

May 28, 2014

May 08, 2015

PDF, ePub, Mobi, Safari Books Online

Page 9999
SQL after 3rd paragraph of sub-section

URL for the page is:
http://proquest.safaribooksonline.com/book/databases/mysql/9781449332471/4dot-optimizing-schema-and-data-types/id3233727?uicode=califa
Chapter 04
Section: Normalization and Denormalization
Sub-section: Pros and Cons of a Denormalized Schema
The error is a one-letter typo in the following SQL:
mysql> SELECT message_text, user_name
-> FROM message
-> INNER JOIN user ON message.user_id=user.id
-> WHERE user.account_type='premiumv
-> ORDER BY message.published DESC LIMIT 10;
Change 'premiumv to 'premium' in the 4th line of the SQL above