Home arrow MySQL arrow Page 3 - A Technical Tour of MySQL

Support Components - MySQL

In this article, Vikram gives us a sneak-peek under the hood of MySQL to see what makes it tick, all the while explaining the various MySQL subsystems and how they interact with each other. This excerpt comes from Chapter two of MySQL: The Complete Reference (McGraw-Hill/Osborne, ISBN 0-07-222477-0, 2004).

TABLE OF CONTENTS:
  1. A Technical Tour of MySQL
  2. An Overview of MySQL Architecture (cont'd)
  3. Support Components
  4. The MySQL Engine
  5. Characteristics in Detail
  6. Extensibility
  7. Symmetric Multiprocessing with MySQL
  8. Security
  9. Replication
  10. Application Programming Interfaces and Add-On Tools
By: McGraw-Hill/Osborne
Rating: starstarstarstarstar / 30
April 20, 2004

print this article
SEARCH DEV SHED

TOOLS YOU CAN USE

advertisement

In addition to the five primary subsystems, the MySQL architecture contains the following two support components:

  • The Process Manager
  • Function Libraries

The Process Manager
This component performs two functions in the system. First, it manages user connections, via modules for network connection management with clients. Second, it synchronizes competing tasks and processes, via modules for multi-threading, thread locking, and performing thread-safe operations.

Function Libraries
This component contains general-purpose routines that are used by all the other subsystems. It includes routines for string manipulation, sorting operations, and such operating-system-specific functions as memory management and file I/O.

Subsystem/Component Interaction and Control Flow
The Query Engine requests that data be read from or written to the Buffer Manager to satisfy a user query. It depends on the Transaction Manager to request the locking of data so that concurrency is ensured. To perform table creation and drop operations, the Query Engine accesses the Storage Manager directly, bypassing the Buffer Manager, to create or delete files in the file system.

The Buffer Manager caches data from the Storage Manager for efficient retrieval by the Query Engine. It depends on the Transaction Manager to check the locking status of the data before it performs any modification operations.

The Transaction Manager depends on the Query Cache and the Storage Manager to place locks on data in memory and in the file system, respectively.

The Recovery Manager uses the Storage Manager to store command/event logs and backups of the data in the file system. It depends on the Transaction Manager to obtain locks on the log files being written. The Recovery Manager also needs to use the Buffer Manager during recovery from crashes.

The Storage Manager depends on the operating system file system for persistent storage and retrieval of data. It depends on the Transaction Manager to obtain locking status information.

Remember: this is chapter two of MySQL: The Complete Reference, by Vikram Vaswani (McGraw-Hill/Osborne, ISBN 0-07-222477-0, 2004). Vikram is the founder of Melonfire, and has had numerous articles featured on Dev Shed. 
Buy this book now.



 
 
>>> More MySQL Articles          >>> More By McGraw-Hill/Osborne
 

blog comments powered by Disqus
   

MYSQL ARTICLES

- Xeround Releases Free Version of MySQL Cloud...
- Oracle Announces New MySQL Specialization
- Constant Contact Chooses SkySQL for MySQL Su...
- Revoke Statement in MySQL
- The Grant Statement in MySQL
- SuccessBricks Announces ClearDB Availability...
- Building a PHP ORM: Deploying a Blog
- TROSYS Launches Free MySQL Manager and Admin...
- Building an ORM in PHP: Domain Modeling
- Building an ORM in PHP
- MySQL Leads Open Source Market, Gets Cluster...
- Oracle Announces Milestone Release for MySQL
- How to Stop SQL Injection Attacks
- New Defragmentation Solution for SQL Server
- Comparison of MyISAM and InnoDB MySQL Databa...


© 2003-2012 by Developer Shed. All rights reserved. DS Cluster 9 - Follow our Sitemap

Dev Shed Tutorial Topics: