前言
第一部分 基 礎 篇
第1章 認識MongoDB / 2
1.1 NoSQL簡介 / 2
1.1.1 産生背景 / 2
1.1.2 NoSQL的種類及其特性 / 4
1.1.3 NoSQL特點 / 8
1.1.4 發展現狀 / 8
1.2 初識MongoDB / 9
1.2.1 特點及功能 / 10
1.2.2 適用場閤 / 11
1.3 MongoDB實際應用案例 / 12
1.3.1 國內案例 / 12
1.3.2 國外案例 / 12
1.4 本章小結 / 13
第2章 快速入門 / 14
2.1 體係結構 / 14
2.1.1 數據邏輯結構 / 14
2.1.2 數據存儲結構 / 15
2.1.3 日誌係統 / 17
2.1.4 元數據的存儲 / 18
2.1.5 數據類型 / 19
2.2 MongoDB的安裝和配置 / 22
2.2.1 在Windows平颱下的安裝和配置 / 22
2.2.2 在Linux平颱下的安裝和配置 / 23
2.3 啓動數據庫 / 25
2.3.1 命令行方式 / 25
2.3.2 配置文件方式 / 25
2.3.3 Daemon方式 / 26
2.3.4 mongod參數方式 / 26
2.4 停止數據庫 / 27
2.4.1 Ctrl+C組閤鍵 / 27
2.4.2 shutdownServer()指令 / 28
2.4.3 UNIX係統指令 / 28
2.5 操作數據庫 / 29
2.5.1 連接數據庫 / 29
2.5.2 插入記錄 / 29
2.5.3 查詢記錄 / 31
2.5.4 修改記錄 / 34
2.5.5 刪除記錄 / 34
2.6 常用GUI管理工具 / 34
2.6.1 MongoVUE / 34
2.6.2 RockMongo / 35
2.6.3 MongoHub / 36
2.7 本章小結 / 37
第二部分 高 級 篇
第3章 高級查詢 / 40
3.1 查詢操作符 / 40
3.2 查詢語法 / 46
3.2.1 數組內容的查詢 / 47
3.2.2 內嵌文檔的查詢 / 47
3.2.3 正則錶達式匹配 / 48
3.2.4 $where查詢 / 48
3.3 聯閤查詢 / 49
3.3.1 簡單手工關聯 / 49
3.3.2 DBRef方式關聯 / 50
3.4 遊標和存儲過程 / 51
3.4.1 遊標 / 51
3.4.2 存儲過程 / 52
3.5 本章小結 / 53
第4章 高級更新 / 55
4.1 數據更新命令詳解 / 55
4.1.1 update命令 / 55
4.1.2 save命令 / 56
4.2 數據更新操作符 / 57
4.3 本章小結 / 62
第5章 高級特性 / 63
5.1 Capped Collection集閤 / 63
5.1.1 創建Capped Collection / 63
5.1.2 Capped Collection的用途 / 64
5.1.3 注意事項 / 64
5.2 GridFS規範 / 65
5.2.1 如何實現海量存儲 / 65
5.2.2 命令行工具 / 66
5.3 MapReduce編程模型 / 68
5.3.1 Map進行分組 / 69
5.3.2 Reduce聚閤計算 / 69
5.3.3 Result獲取結果 / 70
5.3.4 Finalize格式化輸齣 / 70
5.3.5 Options定製輸齣 / 71
5.4 本章小結 / 72
第三部分 管 理 篇
第6章 管理工具集 / 74
6.1 數據遷移 / 74
6.1.1 導齣工具mongoexport / 75
6.1.2 導齣工具mongodump / 78
6.1.3 導入工具mongoimport / 79
6.2 數據的備份和恢復 / 81
6.2.1 備份工具mongodump / 81
6.2.2 恢復工具mongorestore / 84
6.3 命令行操作 / 86
6.3.1 通過eval參數執行指定語句 / 86
6.3.2 執行指定文件中的內容 / 87
6.4 本章小結 / 88
第7章 管理命令 / 89
7.1 剋隆collection / 90
7.1.1 遠程剋隆collection / 90
7.1.2 本地剋隆collection / 94
7.2 復製數據庫 / 94
7.2.1 遠程復製數據庫 / 94
7.2.2 本地復製數據庫 / 96
7.3 刷新磁盤 / 97
7.4 捕獲異常 / 98
7.4.1 返迴異常信息 / 98
7.4.2 阻塞客戶端 / 99
7.5 進程控製 / 99
7.5.1 查看活動進程 / 99
7.5.2 結束進程 / 100
7.6 驗證collection的有效性 / 100
7.7 數據壓縮 / 101
7.8 本章小結 / 102
第8章 訪問控製 / 103
8.1 限製特定IP地址訪問 / 104
8.2 設置監聽端口 / 104
8.3 使用用戶名和口令登錄 / 105
8.3.1 建立係統root用戶 / 107
8.3.2 建立指定權限用戶 / 108
8.3.3 刪除指定用戶 / 109
8.4 本章小結 / 110
第四部分 性 能 篇
第9章 索引及優化 / 112
9.1 MongoDB索引概述 / 112
9.2 索引操作 / 113
9.2.1 基礎索引 / 113
9.2.2 靜默方式創建索引 / 115
9.2.3 文檔索引 / 115
9.2.4 組閤索引 / 116
9.2.5 唯一索引 / 116
9.2.6 強製使用索引 / 117
9.2.7 刪除索引 / 119
9.2.8 重建索引 / 119
9.2.9 explain查看執行計劃 / 119
9.3 優化器Profiler / 121
9.3.1 開啓Profiler功能 / 121
9.3.2 查詢Profiler記錄 / 122
9.4 性能優化概述 / 123
9.4.1 性能優化的原則 / 123
9.4.2 影響性能的因素 / 124
9.5 常用的優化方案 / 124
9.5.1 創建索引 / 124
9.5.2 限定返迴結果條數 / 125
9.5.3 隻查詢用到的字段 / 125
9.5.4 采用Capped Collection / 126
9.5.5 采用Server Side Code Execution命令集 / 126
9.5.6 使用hint / 127
9.5.7 采用Profiler / 127
9.6 本章小結 / 128
第10章 性能監控 / 129
10.1 mongosniff工具 / 129
10.2 mongostat工具 / 131
10.3 db.serverStatus命令 / 132
10.4 db.stats命令 / 134
10.5 HTTP監控接口 / 135
10.6 本章小結 / 136
第五部分 架 構 篇
第11章 復製集 / 138
11.1 Replica Sets架構 / 138
11.2 部署Replica Sets / 139
11.3 主從操作日誌 / 144
11.4 主從配置信息 / 146
11.5 管理Replica Sets / 147
11.5.1 主從切換 / 147
11.5.2 讀寫分離 / 149
11.5.3 故障轉移 / 151
11.5.4 增減節點 / 153
11.6 本章小結 / 160
第12章 分片 / 161
12.1 Sharding簡介 / 161
12.1.1 Sharding的特點 / 161
12.1.2 Sharding架構 / 162
12.2 構建一個簡單的Sharding Cluster / 163
12.2.1 啓動Shard Server / 163
12.2.2 啓動Config Server / 164
12.2.3 啓動Route Process / 164
12.2.4 配置Sharding / 164
12.2.5 驗證Sharding / 165
12.3 維護Sharding / 167
12.3.1 列齣所有的Shard Server / 168
12.3.2 查看Sharding信息 / 168
12.3.3 判斷是否是Sharding / 169
12.3.4 對現有的錶執行Sharding / 169
12.3.5 新增Shard Server / 171
12.3.6 移除Shard Server / 172
12.4 本章小結 / 175
第13章 Replica Sets + Sharding方案 / 176
13.1 Replica Sets+Sharding架構 / 176
13.2 搭建一個高可用架構 / 177
13.2.1 創建數據目錄 / 177
13.2.2 配置Replica Sets / 178
13.2.3 配置3颱Config Server / 181
13.2.4 配置3颱Route Process / 181
13.2.5 配置Shard Cluster / 181
13.2.6 驗證Sharding / 182
13.3 本章小結 / 183
第六部分 開 發 篇
第14章 C#開發接口 / 186
14.1 C#快速入門 / 186
14.1.1 下載驅動和開發環境 / 186
14.1.2 訪問控製 / 188
14.1.3 C#對數據庫的基礎操作 / 189
14.2 C#驅動一緻性 / 194
14.3 C#常用操作 / 195
14.3.1 對MongoDB實例的操作 / 195
14.3.2 對用戶的操作 / 198
14.3.3 對collection的操作 / 202
14.3.4 對索引的操作 / 208
14.4 C#高級查詢 / 211
14.4.1 判斷列名是否存在 / 211
14.4.2 比較運算符 / 213
14.4.3 邏輯運算符 / 221
14.4.4 正則錶達式查詢 / 223
14.4.5 跳過查詢 / 224
14.5 用C#操作GridFS / 225
14.5.1 插入數據 / 225
14.5.2 查詢數據 / 226
14.5.3 讀取並保存數據 / 227
14.5.4 刪除數據 / 228
14.6 本章小結 / 229
第15章 Java開發接口 / 230
15.1 Java快速入門 / 230
15.1.1 下載驅動和開發環境 / 230
15.1.2 訪問控製 / 232
15.1.3 Java對數據庫的基礎操作 / 233
15.2 Java驅動一緻性 / 237
15.3 Java常用操作 / 238
15.3.1 對MongoDB實例的操作 / 238
15.3.2 對用戶的操作 / 241
15.3.3 對collection的操作 / 243
15.3.4 對索引的操作 / 250
15.4 Java高級查詢 / 253
15.4.1 通過遊標獲取所有document / 253
15.4.2 比較運算符 / 254
15.4.3 邏輯運算符 / 263
15.4.4 正則錶達式查詢 / 264
15.4.5 跳過查詢 / 265
15.5 用Java操作GridFS / 266
15.5.1 插入數據 / 266
15.5.2 查詢數據 / 267
15.5.3 讀取並保存數據 / 268
15.5.4 刪除數據 / 269
15.6 本章小結 / 270
· · · · · · (
收起)