第1章 MongoDB 3.4新特性 ' J- u2 T) z, G$ G
1.1 复制集(Replica Set)
% r( I/ y4 h( B5 y/ r( m1.2 分片集群(Sharded Cluster) ( I( d* K0 a( u/ S, G6 D1 `# ^
第2章 MongoDB 3.6新特性 6 ^0 X; d) `# u( O. j
2.1 复制集(Replica Sets) . ^, y8 k$ W; o2 q
2.2 分片集群(Sharded Clusters) . G* M' Z/ z2 T& u5 n* L& A" z4 V
第3章 运维实战:故障案例分析 , d. ?8 d$ y, ^4 ]
3.1 调整oplog大小引发的从库宕机
) h6 `! N( ~8 N/ |3.2 hotbackup报错 " D! o+ y" b) p- i; c \* r G
3.3 MongoDB最大连接数限制 7 |# R* k5 A# U$ g3 C& Q( z
3.4 MongoDB启动失败
- g5 E2 f; l, H0 I4 k3.5 Mongos异常宕机
* V5 g+ [& h) d& `3.6 sharding集群执行sh.stopBalancer()命令卡住 9 D0 h8 `4 a( i3 s* w! Y+ i/ ^1 d
3.7 Remove shard失败
9 s9 \/ w, l/ `* B& Q3.8 move chunk aborted
" o5 F$ Q5 y7 F3.9 迁移引发的性能抖动
; M- e8 G/ u3 M7 r" s# {) t3.10 Mongos连接数异常
& K2 S1 |' U9 v* y0 P3.11 rs.add时报错operation exceeded time limit
% s0 M' _& Q$ m/ Q# o, l3.12 副本集延迟突然增大到上万秒 4 Z6 e$ z( n1 q2 M+ x
3.13 升级发现infoMessage异常
5 l' [7 K/ t, D3.14 对已存在集合shardcollection失败
/ G# f1 b2 M% d. n4 c. \4 {+ b3.15 operation exceeded time limit
, u& K6 t, S, L, h3 F3.16 强制重新配置副本集 6 f7 R( f% U( h$ @& M% z* q
3.17 create index oom : t% r5 c* p- k3 f5 ^6 Z# G
3.18 rs.remove导致从节点crash 7 K) F, f9 M4 U: a6 S# @
第4章 性能调优 N9 Z& l7 O2 r3 ?" D2 ~4 n
4.1 机器负载高 2 B9 [( Q" U$ Z( E
4.2 快速修改库名 ) Y' J7 Q/ Q2 M) ~% P. k, ~8 ~7 k; I
4.3 dbhash检查一致性 3 U: e+ n! m$ l# b6 S
4.4 使用索引却依旧性能低下
/ \* a; t6 Q7 o9 z5 E# _, d4.5 索引 2 _" w$ ~ W# H) }
4.5.1 单列索引 ' s( `! j( U3 f' c3 V: m
4.5.2 复合索引 7 a5 }" F% D% }4 Y+ A
4.5.3 多键索引 , s4 h6 m2 O/ S" a0 [
4.5.4 文本索引 3 Y6 [( |! C4 g; O4 l
4.5.5 2dsphere索引 5 ~$ s. _+ C/ k' A7 u
4.5.6 2d索引 0 a0 q6 q P- S8 n3 S
4.5.7 Hash索引 & y; K4 ~" ~& @0 p" I- _
4.5.8 一条SQL创建多个索引
/ E% z- Z& L, x4.6 索引属性
( J4 l6 Q: }4 w) u4.6.1 TTL索引 ; b. [3 L4 Q) g, y* Q; O. S
4.6.2 唯一索引 + p1 `0 C6 K. w$ R( X- q$ t. U
4.6.3 部分索引 . H G, m/ ^8 m0 ?% J* N
4.6.4 稀疏索引 * ~5 X8 d1 C* T; b
4.7 在大集合上创建索引
9 x+ V7 [) f- N1 u5 p# L: r4.8 索引交集 - n' J/ x! W; ]" h- k! e
4.9 索引排序
. L( U( W" T# x' k0 {4.10 查询计划
) x7 C& d2 f- r* W4.11 systemprofile 2 `0 }5 g& U3 A- O# P
4.12 Profile操作相关
% Y$ ?% [0 s3 K# B% I第5章 备份与恢复
, O6 V3 R" x( D5.1 逻辑备份 2 B9 d1 I; E: J) Y1 a
5.2 Oplog Replay
( ?; e* I. K7 S9 k* S5.3 物理备份
2 b: r! X. o5 ~第6章 高可用架构集群管理 1 p, v1 m1 ^2 l' }: |7 a
6.1 副本集 W* |/ ]: q! @# x0 d7 c, S+ R% U( D
6.1.1 冗余和数据可用性 q# O/ x2 k* a6 @& q
6.1.2 MongoDB中的副本集
) A& j; S! y$ z5 G2 a( y6.1.3 自动故障转移 - n% j$ g5 [( }* f T D
6.1.4 关于MongoDB的读操作
/ a9 U [4 E/ y/ y+ b* T6.2 副本集成员状态
* s0 s$ g( T. `: I$ C* ]6.3 副本集原理 $ V( T# k0 b. \' ^
6.4 复制集成员 ; ^) y: L7 q* V' U4 n
6.5 复制集成员类型 0 g8 f' F8 C, j
6.6 副本集中的主库
$ ?; D$ x! J7 L- l, ~6.7 副本集中的从库
2 q; r- d" h. a7 r$ J& K% g# a6.7.1 Priority 0从库 3 \4 ]5 A. `8 V& x1 b5 s
6.7.2 hidden从库 ' {: K9 r9 n% k2 R8 C
6.7.3 延迟从库
2 e) J% ?: e' O8 {& ?% [: h6.8 oplog简介
- c) Z+ r: l' P6.9 oplog过滤
' |2 T3 x& E \& }6.10 副本集的数据复制 6 l! q l6 k' O' }5 \
6.11 3节点最小副本集架构 7 M# z4 o! z- k& R8 u6 T# h
6.12 副本集的选举 3 a- I4 G' R1 O* J. a
6.12.1 writeConcern & D* ]+ d. p. k9 x, \- x
6.12.2 Read Preference
5 c( `4 X! d& `' l6.13 副本集环境搭建 " M% s* O( a7 w. I: l/ R H
6.14 配置延迟 9 M8 p$ n# Z; h+ I; D
6.15 从2.6版本升级至3.0版本
& N0 t8 w j; \* c5 E. ]' D6.15.1 升级过程 9 c5 O4 B4 {+ B' P) P( R! Q
6.15.2 关于认证 # ~3 j8 T) J$ y
6.15.3 变更存储引擎
, ?: J3 h, J4 s5 c! _6.15.4 Driver兼容性
7 p y! Y) d0 b) o6.16 从3.2版本升级至3.4版本 ) W+ \$ d3 | B( \6 y- |, W
6.16.1 升级过程 : [( }. P, i" U0 e! |
6.16.2 启用不向下兼容的3.4版本功能
* G1 m% E; H+ P! w$ J" C6.16.3 升级发现infoMessage异常
' m7 p) D: M/ h3 ] Y! z( s6.17 分片
# p# x5 d3 N1 }- _3 u- C& K6.17.1 分片和非分片集合
0 ~+ a$ L: f' n6 a$ s2 ~- b+ T6.17.2 Sharding组建
; K: u" t, c! E ^: W0 Z6.17.3 Shard # ~4 c( e4 h' O/ n: }
6.17.4 Config server : u4 R1 v" c' A: ^4 _1 T
6.17.5 mongos $ g! K3 x. e& e, ]8 `2 p% X
6.17.6 Shard keys 3 d' X4 a3 ]7 G0 R
6.17.7 哈希分片
( x- s/ L! J; V0 L5 d6.17.8 范围分片
$ h7 {) v7 k6 i9 x8 \6 N6.17.9 zone + `$ p$ G* O4 B( l. L6 D* k' {
6.17.10 zone常用命令
Y% c3 C3 `4 d9 @$ H/ } K6.17.11 Chunk " n& E& W+ }8 z* Y" ~
6.17.12 Chunk迁移 " }! H9 P ]" ?1 ?3 `6 ]& m
6.17.13 chunksize
! {: b4 h2 }0 i }# w" a6.17.14 Balancer
2 { {3 E" s) _0 ]& m: I- G6 O6.17.15 Balancer运维 / d# O* c m( B+ o6 ?6 g
6.18 Troubleshoot Sharded Clusters
$ x6 o* r( F" H$ l: \- r* T6.19 在线开启认证
; k$ d4 F. M+ z3 [9 b6 r- t6.20 分片架构搭建 ! ^* q. x' A! a& D/ \
第7章 监控
. _1 f6 M) ?9 P7.1 PMM监控MongoDB " q7 _7 c8 Z* K6 r; @' x6 Q
7.2 Server组件 6 B" `! H( n# m3 D z
7.3 Client组件
+ V ~# H3 a; M* W, x7.3.1 安装Docker / y4 i# u; C% J$ F+ b
7.3.2 创建PMM数据容器
0 T: _+ Z8 Y' d5 C7.3.3 运行PMM容器,并配置监控登录用户名密码
8 y# {; f( m) @+ Y2 o4 L7.3.4 安装客户端
- w5 Z/ p" s3 H6 t2 K第8章 常用命令
javazx.com. U) P2 x0 i7 u7 f. N2 F8 q2 y8 n
8.1 查询
) a9 A/ [$ ~! ]# `1 S( S$ ?8.2 插入
! P% ^/ X2 u# u8.3 修改 - A \# \$ `0 w2 k7 c3 F
8.4 删除
4 }* x: F; W, w+ C2 C& z8.5 分片集群常用命令