You are previewing Expert MySQL.
O'Reilly logo
Expert MySQL

Book Description

Since the enormous number of features made available with MySQL release 5.0, MySQL has been gaining steam as a viable alternative to database behemoths like Oracle and IBM DB2. MySQL users now have the ability to extend MySQL with new SQL commands, optimize query execution, and embed MySQL within low-resource environments like embedded devices and kiosks.

Expert MySQL, by Dr. Charles A. Bell, is the first book to examine these opportunities in detail, showing you how to wield maximum control over this powerful open source database. You'll learn how to create your own custom storage handlers, ensuring maximum flexibility and speed within your specialized applications. You'll also gain valuable insight into MySQLs architecture and learn how to tweak its behavior through custom changes to the source code.

Table of Contents

  1. Title Page
  2. Contents at a Glance
  3. Contents
  4. About the Author
  5. Acknowledgments
  6. Introduction
    1. How This Book Is Organized
    2. Using the Book for Teaching Database Systems Internals
    3. Let's Get Started!
  7. PART 1: Getting Started with MySQL Development
    1. CHAPTER 1: MySQL and the Open Source Revolution
      1. What Is Open Source Software?
      2. Developing with MySQL
      3. A Real-World Example: TiVo
      4. Summary
    2. CHAPTER 2: The Anatomy of a Database System
      1. Database System Architectures
      2. Types of Database Systems
      3. Relational Database System Architecture
      4. The MySQL Database System
      5. Summary
    3. CHAPTER 3: A Tour of the MySQL Source Code
      1. Getting Started
      2. The MySQL Source Code
      3. Coding Guidelines
      4. Building the System for the First Time
      5. Summary
    4. CHAPTER 4: Test-Driven MySQL Development
      1. Background
      2. MySQL Testing
      3. Summary
  8. PART 2: Extending MySQL
    1. CHAPTER 5: Debugging
      1. Debugging Explained
      2. Debugging Techniques
      3. Debugging MySQL
      4. Summary
    2. CHAPTER 6: Embedded MySQL
      1. Building Embedded Applications
      2. Embedding MySQL
      3. The MySQL C API
      4. Building Embedded MySQL Applications
      5. Summary
    3. CHAPTER 7: Building Your Own Storage Engine
      1. MySQL Pluggable Storage Engine Overview
      2. The Spartan Storage Engine
      3. Summary
    4. CHAPTER 8: Adding Functions and Commands to MySQL
      1. Adding User-Defined Functions
      2. Adding Native Functions
      3. Adding SQL Commands
      4. Adding to the Information Schema
      5. Summary
  9. PART 3: Advanced Database Internals
    1. CHAPTER 9: Database System Internals
      1. Query Execution
      2. Exploring MySQL Internals
      3. The Database System Internals Experiment
      4. Summary
    2. CHAPTER 10: Internal Query Representation
      1. The Query Tree
      2. Implementing DBXP Query Trees in MySQL
      3. Summary
    3. CHAPTER 11: Query Optimization
      1. Types of Query Optimizers
      2. Heuristic Optimization Revisited
      3. The DBXP Query Optimizer
      4. Summary
    4. CHAPTER 12: Query Execution
      1. Query Execution Revisited
      2. DBXP Query Execution
      3. Summary
  10. Appendix
    1. Bibliography
    2. Sample Database
    3. Chapter Exercise Notes
  11. Index