Mysql High Availability(English, Paperback, Kindahl Mats)
Quick Overview
Product Price Comparison
Server bottlenecks and failures are a fact of life in any database deployment, but they don't have to bring everything to a halt. MySQL has several features that can help you protect your system from outages, whether it's running on hardware, virtual machines, or in the cloud. MySQL High Availability explains how to use these replication, cluster, and monitoring features in a wide range of real-life situations. Written by engineers who designed many of the tools covered inside, this book reveals undocumented or hard-to-find aspects of MySQL reliability and high availability -- knowledge that’s essential for any organization using this database system. Explore the binary log, a file for replication that helps in disaster recovery and troubleshooting Get techniques for improving response time and handling large data sets Monitor database activity and performance, as well as major operating system parameters Keep track of what masters and slaves are doing, and deal with failures and restarts, corruption, and other incidents Automate key tasks with code from an open source library written by the authors Learn techniques for using MySQL in virtualized environments, such as Amazon Web Services Use MySQL Cluster to achieve high availability "MySQL replication is widely deployed but has never been adequately explained. This book changes that." -- Mark Callaghan, MySQL contributor and leader of MySQL engineering efforts at a few of the world's largest Internet companies About the Author Dr. Charles A Bell is a Senior Software Engineer at Oracle. He is currently the lead developer for backup and a member of the MySQL Backup and Replication team. He lives in a small town in rural Virginia with his loving wife. He received his Doctor of Philosophy in Engineering from Virginia Commonwealth University in 2005. His research interests include database systems, versioning systems, semantic web, and agile software development. Dr. Mats Kindahl is a senior software developer working on the MySQL server. He is the main architect and implementor of MySQL's row-based replication and is responsible for strategic development of replication, reengineering, and the plugin architecture. Before starting at MySQL, he did research in formal methods, program analysis, and distributed systems, the area where he earned his doctoral degree in computer science. He has also spent many years developing C/C++ compilers and knows more programming languages than he has fingers. Dr. Lars Thalmann is the development manager for MySQL replication and backup. He is responsible for the strategy and development of these features and leads the corresponding engineering teams. Thalmann has worked with MySQL development since 2001, when he was a software developer working on MySQL Cluster. More recently, he has driven the creation and development of the MySQL backup feature, has guided the evolution of MySQL replication since 2004, and has been a key player in the development of MySQL Cluster replication. Thalmann holds a doctorate in Computer Science from Uppsala University, Sweden. Table of Contents Replication Chapter 1 Introduction What’s This Replication Stuff Anyway? So, Backups Are Not Needed Then? What’s with All the Monitoring? Is There Anything Else I Can Read? Conclusion Chapter 2 MySQL Replication Fundamentals Basic Steps in Replication A Brief Introduction to the Binary Log Performing Common Tasks with Replication Conclusion Chapter 3 The Binary Log Structure of the Binary Log Logging Statements Logging Transactions Binary Log Management The mysqlbinlog Utility Binary Log Options and Variables Conclusion Chapter 4 Replication for High Availability Redundancy Planning Procedures Conclusion Chapter 5 MySQL Replication for Scale-Out Scaling Out Reads, Not Writes The Value of Asynchronous Replication Managing the Replication Topology Hierarchal Replication Specialized Slaves Data Sharding Managing Consistency of Data Consistency in a Hierarchal Deployment Conclusion Chapter 6 Advanced Replication Replication Architecture Basics Running Replication over the Internet Finer-Grained Control over Replication Options for Handling Broken Connections How the Slave Processes Events Slave Safety and Recovery Multisource Replication Row-Based Replication Conclusion Monitoring and Disaster Recovery Chapter 7 Getting Started with Monitoring Ways of Monitoring Benefits of Monitoring System Components to Monitor Monitoring Solutions Linux and Unix Monitoring Mac OS X Monitoring Microsoft Windows Monitoring Monitoring as Preventive Maintenance Conclusion Chapter 8 Monitoring MySQL What Is Performance? MySQL Server Monitoring Database Performance Best Practices for Improving Performance Conclusion Chapter 9 Storage Engine Monitoring MyISAM InnoDB Conclusion Chapter 10 Replication Monitoring Getting Started Server Setup Inclusive and Exclusive Replication Replication Threads Monitoring the Master Monitoring Slaves Replication Monitoring with MySQL Administrator Other Items to Consider Conclusion Chapter 11 Replication Troubleshooting What Can Go Wrong Tools for Troubleshooting Replication Best Practices Reporting Replication Bugs Conclusion Chapter 12 Protecting Your Investment What Is Information Assurance? Information Integrity, Disaster Recovery, and the Role of Backups Backup Utilities and OS-Level Solutions Backup and MySQL Replication Automating Backups Conclusion Chapter 13 MySQL Enterprise Getting Started with MySQL Enterprise MySQL Enterprise Components Using MySQL Enterprise Conclusion High Availability Environments Chapter 14 Cloud Computing Solutions What Is Cloud Computing? Cloud Computing Use Cases Cloud Computing Benefits Cloud Computing Vendors AWS MySQL in the Cloud Open Source Cloud Computing Conclusion Chapter 15 MySQL Cluster What Is MySQL Cluster? Architecture of MySQL Cluster Example Configuration Achieving High Availability Achieving High Performance Conclusion Appendix Replication Tips and Tricks My Slave Stopped. Now What? Examining the Binary Log with Verbose Using Replication to Repopulate a Table Using MySQL Proxy to Perform Multimaster Replication Using a Default Storage Engine MySQL Cluster Multisource Replication Multichannel Replication with Failover Using the Current Database to Filter More Columns on Slave Than Master Fewer Columns on Slave Than Master Replicate Selected Rows to Slave Replication Heartbeat Ignoring Servers in Circular Replication Feature Preview: Time-Delayed Replication Feature Preview: Scriptable Replication Feature Preview: The Oracle Algorithm Colophon