مشخصات کتاب
-
sasba pachev
-
2007
-
انگلیسی
-
27067
-
897
-
0
Understanding MySQL Internals
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
1. MySQL History and Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
MySQL History 1
MySQL Architecture 4
2. Nuts and Bolts of Working with the MySQL Source Code . . . . . . . . . . . . . . . . 19
Unix Shell 19
BitKeeper 19
Preparing the System to Build MySQL from BitKeeper Tree 22
Building MySQL from BitKeeper Tree 24
Building from Source Distribution 25
Installing MySQL into a System Directory 26
Source Code Directory Layout 27
Preparing the System to Run MySQL in a Debugger 28
Debugger-Guided Source Tour 29
Basics of Working with gdb 30
Finding Things in the Source 33
Interesting Breakpoints and Variables 34
Making a Source Modification 36
Coding Guidelines 37
Keeping Your BitKeeper Repository Up to Date 39
Submitting a Patch 40
3. Core Classes, Structures, Variables, and APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
THD 41
NET 46
TABLE 48
Field 51
Utility API Calls 54
Preprocessor Macros 57
Global Variables 59
4. Client/Server Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Protocol Overview 62
Packet Format 62
Relationship Between MySQL Protocol and OS Layer 63
Authenticating Handshake 64
Command Packet 69
Server Responses 74
5. Configuration Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Configuration Variables Tutorial 80
Interesting Aspects of Specific Configuration Variables 88
6. Thread-Based Request Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Threads Versus Processes 107
Implementation of Request Handling 109
Thread Programming Issues 113
7. The Storage Engine Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
The handler Class 120
Adding a Custom Storage Engine to MySQL 136
8. Concurrent Access and Locking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Table Lock Manager 162
9. Parser and Optimizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Parser 167
Optimizer 170
MySQL High Availability
نویسنده: Charles Bell, Mats Kindahl, and Lars Thalmann
زبان: انگلیسی