Pro MySQL is the first book that exclusively covers intermediate and advanced features of MySQL, the world's most popular open source database server. Whether you are a seasoned MySQL user looking to take your skills to the next level, or youre a database expert searching for a fast-paced introduction to MySQL's advanced features, this book is for you. The first part of this book discusses topics related to design and development. Topics include transaction processing and indexing theory, benchmarking and profiling, and advanced coverage of storage engines and data types. The authors also delve deep into the MySQL source code and system architecture at a level you won't find anywhere else. Essential advanced SQL is also covered, with discussion of subqueries, derived tables, and joins. These concepts are demonstrated in a range of situation-specific examplesfrom dealing with hierarchical data to performing geographic information system (GIS) examples with just MySQL. This section also covers MySQL 5's new enterprise features like stored procedures, triggers, and views. The latter part of this book devotes itself to administration topics. Topics include MySQL installation and upgrading, user administration, database backups, replication, and clustering. You'll also learn about the new data dictionary features available in MySQL 5.
, Michael Kruckenberg
, Michael Kruckenberg
Country of Publication:
27 July 2005
Pro MySQL MICHAEL KRUCKENBERG AND JAY PIPES Pro MySQL Copyright (c) 2005 by Michael Kruckenberg and Jay Pipes All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher. ISBN (pbk): 1-59059-505-X Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1 Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. Lead Editors: Jason Gilmore, Matthew Moodie Technical Reviewer: Chad Russell Editorial Board: Steve Anglin, Dan Appleman, Ewan Buckingham, Gary Cornell, Tony Davis, Jason Gilmore, Jonathan Hassell, Chris Mills, Dominic Shakeshaft, Jim Sumser Associate Publisher: Grace Wong Project Manager: Kylie Johnston Copy Edit Manager: Nicole LeClerc Copy Editors: Marilyn Smith, Susannah Pfalzer Assistant Production Director: Kari Brooks-Copony Production Editor: Linda Marousek Compositor, Artist, and Interior Designer: Diana Van Winkle, Van Winkle Design Group Proofreader: Patrick Vincent, Write Ideas Editorial Consulting Indexer: Ann Rogers Cover Designer: Kurt Krames Manufacturing Manager: Tom Debolski Distributed to the book trade worldwide by Springer-Verlag New York, Inc., 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax 201-348-4505, e-mail firstname.lastname@example.org, or visit http://www.springeronline.com. For information on translations, please contact Apress directly at 2560 Ninth Street, Suite 219, Berkeley, CA 94710. Phone 510-549-5930, fax 510-549-5939, e-mail email@example.com, or visit http://www.apress.com. The information in this book is distributed on an as is basis, without warranty. Although every precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work. The source code for this book is available to readers at http://www.apress.com in the Downloads section. Contents at a Glance Foreword ... xix About the Authors ... xxi About the Technical Reviewer ... xxiii Acknowledgments ... xxv Introduction ... xxvii PART 1 Design and Development CHAPTER 1 Analyzing Business Requirements... 3 CHAPTER 2 Index Concepts ... 39 CHAPTER 3 Transaction Processing ... 69 CHAPTER 4 MySQL System Architecture... 105 CHAPTER 5 Storage Engines and Data Types ... 153 CHAPTER 6 Benchmarking and Profiling... 189 CHAPTER 7 Essential SQL... 235 CHAPTER 8 SQL Scenarios... 299 CHAPTER 9 Stored Procedures ... 349 CHAPTER 10 Functions ... 375 CHAPTER 11 Cursors ... 405 CHAPTER 12 Views ... 419 CHAPTER 13 Triggers ... 443 PART 2 Administration CHAPTER 14 MySQL Installation and Configuration ... 469 CHAPTER 15 User Administration... 497 CHAPTER 16 Security ... 533 CHAPTER 17 Backup and Restoration ... 555 CHAPTER 18 Replication ... 585 CHAPTER 19 Cluster ... 617 CHAPTER 20 Troubleshooting ... 645 CHAPTER 21 MySQL Data Dictionary ... 669 INDEX ... 699 iii
Jay Pipes is the North American community relations manager at MySQL. Coauthor of Pro MySQL (Apress, 2005), Jay has also written articles for Linux Magazine and regularly assists software developers in identifying how to make the most effective use of MySQL. He has given sessions on performance tuning at the MySQL Users Conference, RedHat Summit, NY PHP Conference, OSCON, and Ohio LinuxFest, among others. He lives in Columbus, Ohio, with his wife, Julie, and his four animals. In his abundant free time, when not being pestered by his two needy cats and two noisy dogs, he daydreams in PHP code and ponders the ramifications of __clone().