MySQL核心內幕

來源:互聯網
上載者:User

MySQL核心內幕

  • 定價 : ¥56.00
  • 會員價 : ¥42.00(75折)

    樣章免費試讀:http://www.china-pub.com/196166

    作者: 祝定澤    張海    黃建昌   
    出版社:清華大學出版社
    ISBN:9787302216964
    上架時間:2009-12-30
    出版日期:2010 年1月
    開本:16開
    頁碼:338
    版次:1-1

    【編輯精選】
    新一輪MySQL熱浪襲來
    翻開最新GA的MySQL源碼
    國內首個開源的MySQL儲存引擎
    跟蹤Sun收購MySQL後的動態變化
    國內首次披露的 MySQL 核心視頻講解
    國內首款開源MySQL儲存引擎Lillian的代碼
    MySQL Bazaar中文分析結果

    【內容簡介】
    本書由Sun中國工程院的MySQL專家講解MySQL核心設計和實現。作者對MySQL分而治之,將複雜的MySQL核心劃分成多個功能子系統,從而化解了理解子系統的各個痛點。
    本書共分12章。第1章介紹MySQL的曆史淵源。第2章介紹MySQL資料庫的架構。第3章深入瞭解MySQL原始碼,第4章解釋關鍵的類和演算法。從第5章開始直到最後,按各子系統進行講解,內容包括串連和網路系統、伺服器線程和資源管理、查詢解析與最佳化器、安全管理系統、儲存引擎介面詳解與實踐、經典儲存引擎、日誌功能及實踐分析和其他子系統。
    配書光碟片中提供了相關的MySQL原始碼。
    本書適合對核心編程設計感興趣的技術人員和開發人員以及在學習、工作中使用MySQL資料庫的各類技術人員閱讀。由於主要內容均涉及到MySQL核心原始碼,所以學習者應當具備C/C++預備知識。
    【目錄】
    第1章 MySQL的前世今生. 1
    1.1 MySQL的曆史 2
    1.2 儲存引擎 4
    1.3 MySQL市場 6
    1.4 後話 8
    第2章 資料庫系統的立體視圖 9
    2.1 資料庫系統架構 10
    2.2 資料庫系統的分類 10
    2.2.1 物件導向型資料庫 10
    2.2.2 關係型資料庫 13
    2.2.3 對象關係型資料庫 14
    2.3 關係型資料庫系統架構 15
    2.3.1 用戶端應用程式 16
    2.3.2 查詢介面 16
    2.3.3 查詢語句處理 17
    2.3.4 查詢最佳化 18
    2.3.5 語句執行 19
    2.3.6 讀寫檔案 19
    2.3.7 模組協作 19
    2.3.8 RDBMS的階層 20

  • .2.4 MySQL資料庫系統 21
    2.4.1 MySQL資料庫系統架構 22
    2.4.2 子系統之間的聯絡 23
    2.4.3 MySQL子系統和代碼 25
    2.5 小結 29
    第3章 暢遊原始碼 31
    3.1 下載MySQL原始碼 32
    3.1.1 Bazaar安裝 32
    3.1.2 訪問MySQL原始碼 33
    3.2 原始碼目錄結構 35
    3.2.1 主要關鍵目錄 36
    3.2.2 開源社區貢獻的代碼 42
    3.2.3 解讀sql/sql_delete.cc 43
    3.3 MySQL核心分析工具 46
    3.3.1 編譯和安裝MySQL 48
    3.3.2 調試MySQL 50
    3.3.3 原始碼檢索工具 56
    3.3.4 Doxyen分析原始碼 57
    3.4 小結 58
    第4章 核心類、庫函數和演算法 59
    4.1 核心類 61
    4.1.1 線程類(THD) 61
    4.1.2 Item類 65
    4.1.3 表描述類- TABLE 68
    4.1.4 FIELD類 69
    4.2 函數庫 72
    4.2.1 記憶體操作函數 73
    4.2.2 檔案系統操作函數 74
    4.2.3 雜湊表操作 76
    4.2.4 字串操作 77
    4.2.5 宏定義 78
    4.3 核心演算法 78
    4.3.1 Bitmaps –位元影像 79
    4.3.2 表串連緩衝工作原理 80
    4.3.3 MySQL排序實現 83
    4.3.4 字元集和校對規則 86
    4.4 小結 88
    第5章 串連和網路系統 89
    5.1 MySQL NET協議 90
    5.1.1 協議和作業系統協議棧 90
    5.2 網路包格式 92
    5.2.1 Null結尾字串和
    帶長度標識字串 93
    5.2.2 網路包頭部格式 94
    5.3 用戶端發送的包 95
    5.3.1 用戶端認證包 95
    5.3.2 命令包(Command) 96
    5.4 伺服器端發送的包 99
    5.4.1 握手初始化包 99
    5.4.2 結果包分類 102
    5.4.3 OK包 102
    5.4.4 ERROR包 105
    5.4.5 結果集包 107
    5.5 小結 114
    第6章 伺服器線程和資源管理 117
    6.1 線程還是進程 118
    6.1.1 線程與進程的比較 119
    6.2 MySQL線程問題和解決方案 120
    6.2.1 標準C函數調用 121
    6.2.2 互斥鎖 122
    6.2.3 線程同步 124
    6.3 用戶端請求的處理 126
    6.3.1 MySQL的啟動過程 127
    6.3.2 執行流 128
    6.4 類、API、變數和結構體 130
    6.5 MySQL記憶體配置 132
    6.5.1 記憶體共用塊 132
    6.5.2 線程記憶體地區(TMA) 133
    6.5.3 MySQL如何?記憶體配置 134
    6.6 小結 137
    第7章 查詢解析與最佳化器 139
    7.1 MySQL解析器 140
    7.1.1 詞法剖析器.. 143
    7.1.2 文法分析器 146
    7.1.3 幾個關鍵類 146
    7.2 查詢最佳化工具 154
    7.2.1 傳統最佳化演算法 154
    7.2.2 MySQL的查詢演算法 155
    7.3 小結 170
    第8章 安全管理系統 171
    8.1 帳號認證 172
    8.1.1 帳號定義 172
    8.1.2 身份審核 173
    8.1.3 具體優先原則 182
    8.2 許可權控制 183
    8.2.1 系統許可權表 184
    8.2.2 許可權審核 186
    8.2.3 權限等級 189
    8.3 安全部署 193
    8.3.1 伺服器系統安全 194
    8.3.2 資料庫系統安全 194
    8.4 小結 198
    第9章 儲存引擎介面詳解與實踐 199
    9.1 MySQL外掛程式式儲存引擎體繫結構 200
    9.1.1 基本流程 200
    9.1.2 從原始碼檔案開始 201
    9.1.3 意想不到的協助 201
    9.1.4 Handlerton 202
    9.1.5 Handler類 204
    9.1.6 Archive儲存引擎的
    簡單分析 208
    9.2 開發我的儲存引擎——
    Lillian(模板剖析) 209
    9.2.1 底層I/O類 209
    9.2.2 Lillian_data類 209
    9.2.3 Lillian_index類 217
    9.3 開發我的儲存引擎——
    Lillian(代碼編寫) 232
    9.3.1 階段一:初始化儲存引擎 232
    9.3.2 階段二:表操作 238
    9.3.3 階段三:讀寫資料 243
    9.3.4 階段四:修改、刪除資料 245
    9.3.5 階段五:索引功能 248
    9.4 小結 261
    第10章 儲存引擎 263
    10.1 MySQL中繼資料檔案——frm 264
    10.2 MyISAM儲存引擎 270
    10.2.1 MyISAM的架構 270
    10.2.2 資料檔案(.MYD) 271
    10.2.3 索引檔案(.MYI) 277
    10.3 InnoDB儲存引擎 288
    10.3.1 InnoDB的宗旨和
    主要功能特性 288
    10.3.2 InnoDB的架構和
    代碼布局 288
    10.3.3 InnoDB 檔案格式 291
    10.3.4 InnoDB 記錄結構 292
    10.3.5 InnoDB頁結構 296
    10.4 小結 300
    第11章 MySQL日誌功能及實現分析 301
    11.1 錯誤記錄檔 302
    11.1.1 錯誤記錄檔功能介紹 302
    11.1.2 錯誤記錄檔初始化 303
    11.1.3 錯誤記錄檔的記錄實現 305
    11.2 普通日誌 307
    11.2.1 普通日誌功能介紹 307
    11.2.2 普通日誌的初始化 310
    11.2.3 普通日誌記錄功能實現 311
    11.3 慢查詢日誌 312
    11.3.1 慢查詢日誌功能概述 312
    11.3.2 慢查詢日誌的初始化 313
    11.3.3 慢查詢日誌的實現 314
    11.4 二進位日誌 317
    11.4.1 二進位日誌功能介紹 317
    11.4.2 二進位日誌的初始化 320
    11.4.3 二進位日誌的實現 321
    11.5 小結 322
    第12章 其他子系統 323
    12.1 複製功能(Replication)子系統 324
    12.1.1 Replication基礎架構
    描述 324
    12.1.2 Replication實現原理
    簡述 325
    12.1.3 Replication複製線程 326
    12.1.4 Replication功能檔案 326
    12.1.5 Replication子系統組成 327
    12.1.6 Replication原理剖析 327
    12.1.7 小結 342
    12.2 錯誤訊息子系統 342
    12.2.1 錯誤訊息的實現原理 342
    12.2.2 錯誤訊息的一致性 344
    12.2.3 不同版本下錯誤訊息的添加方法 345
    12.2.4 小結 345
    附錄一 Bazaar入門指南 347
    附錄二 MySQL源碼分布縱覽 354
    參考文獻... 371 
     

    相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.