TA的每日心情 | 开心 1 小时前 |
---|
签到天数: 227 天 [LV.7]常住居民III
管理员
  
- 积分
- 27565
|
Java电子书:MySQL技术内幕:InnoDB存储引擎(第2版) 格式 pdf 电子书 PDF 电子书 Java吧 java8.com- P8 I1 q) B6 I2 A" K7 E
7 ~( W. u$ \7 n9 A/ k% a5 H
/ c: i6 Y, V" a9 y% Y编号:mudaima-P0048【Java吧 java8.com】5 e- i1 s; P1 u3 b- ~$ ~5 z, P8 X6 s
; g2 ` q) A6 A) ?1 F) v% F! @$ Q
* T( H$ ?" M9 y) M" _/ [- I! n& M, Z4 w6 `. P
Java电子书目录:推荐序
7 D3 u" G( `/ r3 ~) |前言
7 @0 \0 D. r0 ^! C9 Z第1章 MySQL体系结构和存储引擎
* d* w4 }: k4 z$ _1.1 定义数据库和实例6 b" f, V; o9 M" m/ e4 _
1.2 MySQL体系结构* b6 l( H" G7 R! B
1.3 MySQL存储引擎+ A6 l+ P* I1 i" G8 |, Z
1.3.1 InnoDB存储引擎9 P+ q5 d) O% u* f' W1 T8 d
1.3.2 MyISAM存储引擎
9 S: r/ K( `3 o1 Y5 z6 v3 `5 m1.3.3 NDB存储引擎% d* ]# q9 r9 O% s3 ^4 y" g$ ~
1.3.4 Memory存储引擎3 a0 K1 {' J- a" Q
1.3.5 Archive存储引擎
) p, M4 }* p. y8 h1.3.6 Federated存储引擎
: t z( d* w' F0 m5 O1.3.7 Maria存储引擎
" l5 Z5 {2 g+ U; Q: i! h1.3.8 其他存储引擎
& A6 v5 _" }& F$ A, ^1.4 各存储引擎之间的比较
2 ]; ~3 J1 D+ n' ^1.5 连接MySQL$ `' ^- ` d1 P6 K6 t/ @
1.5.1 TCP/IP6 H! g1 s: E7 a F) l% P
1.5.2 命名管道和共享内存
* ?9 L v; X r) ^& O- K: n1.5.3 UNIX域套接字
4 [5 Q& D4 f) B5 Q( O* T0 b5 o1.6 小结4 I7 u( e m1 c- l5 d+ C
第2章 InnoDB存储引擎
1 @0 [4 P* T. |, k6 Y4 ]2.1 InnoDB存储引擎概述0 ^3 A, R3 c: B& W; x
2.2 InnoDB存储引擎的版本: T& ?5 w, n2 `9 X+ V
2.3 InnoDB体系架构9 S3 o5 L/ {: M/ U
2.3.1 后台线程6 e# E3 J4 E. U& H
2.3.2 内存
h |: g4 m( i! J/ [. m- w v) j2.4 Checkpoint技术2 i4 Q c4 X' ~% n3 }
2.5 Master Thread工作方式
* o7 o' a, B: r& J1 H2.5.1 InnoDB 1.0.x版本之前的Master Thread1 A1 Q) {. e# Z/ D3 r, ^: O! v# g
2.5.2 InnoDB1.2.x版本之前的Master Thread0 b j3 h# }+ x
2.5.3 InnoDB1.2.x版本的Master Thread
+ [, V3 W* P. J: S! ? {2.6 InnoDB关键特性
: s9 y9 f, a/ h6 E: K2.6.1 插入缓冲
7 i0 S8 S' K# d( z* a# ?( P2.6.2 两次写
" E; f5 t5 [2 M) q' Q2.6.3 自适应哈希索引3 G% v6 r, k7 K5 ^& Q
2.6.4 异步IO; v+ [) e: o) W7 z
2.6.5 刷新邻接页
, O2 }0 V' o. n9 o* b7 l' g2.7 启动、关闭与恢复1 b% z( O; L* q1 H- C
2.8 小结4 u) m$ r l! K$ B' z
第3章 文件
9 a9 Z9 Z! H. x$ j9 M0 @6 Z. J3.1 参数文件! t8 s' X" g0 o, p- K2 L
3.1.1 什么是参数
* S I u8 y$ Y/ o3.1.2 参数类型
( L/ j3 q$ K) L! G; I7 G% V3.2 日志文件6 s# v/ s5 M2 L) d* {5 _: b
3.2.1 错误日志
: o! q3 ]4 Z; N! U; H3.2.2 慢查询日志$ W. c# S8 b( s
3.2.3 查询日志# B8 I& r( I: X
3.2.4 二进制日志
2 h5 Q2 T7 d3 o: Q1 w1 \' W3.3 套接字文件
+ I2 f1 T y( V7 A3 M$ ]" X3.4 pid文件
. ^4 \; {& z9 V7 U3.5 表结构定义文件
( Y+ V9 T7 h: f9 i3.6 InnoDB存储引擎文件0 I( _% r; Z! |: a* Z+ ?- k( L
3.6.1 表空间文件
4 m8 X1 \3 e& ?/ s3.6.2 重做日志文件
# ~( D! ? ]5 u3.7 小结
1 F& M( s$ ?- U. c' Z- [9 E第4章 表
& y0 T/ Y3 n7 [7 [8 y% {4.1 索引组织表# L. z! }' }1 D, C- x) y
4.2 InnoDB逻辑存储结构
; j7 y% i: j/ N; @4 t# P6 v! x4.2.1 表空间
' I w2 H0 ]0 _, {4.2.2 段/ w$ c: N0 m4 A8 f; {
4.2.3 区
7 x6 X3 u( R# ]' p4.2.4 页: C/ R( z) R$ V( Z- F
4.2.5 行: C6 R! j4 \3 h2 j! m( `
4.3 InnoDB行记录格式4 ~( n' F9 `! f7 ]2 ?+ r3 Y
4.3.1 Compact行记录格式* {8 K5 Q: v8 C! F3 Q3 B
4.3.2 Redundant行记录格式
6 Y) m3 ^- e7 j8 |1 m4.3.3 行溢出数据
* p) {! W( W- z7 C4.3.4 Compressed和Dynamic行记录格式
8 a7 A& H5 T; ?) k; x5 X( }4.3.5 CHAR的行结构存储
% M5 G8 C: k r3 F4.4 InnoDB数据页结构
0 m6 q2 Z0 L8 ?* K# }2 R4.4.1 File Header4 S$ A" }) v6 {, N8 c6 X
4.4.2 Page Header$ R `* t. }# W3 C9 G, }( ]' h
4.4.3 Infimum和Supremum Records: q+ w0 [3 u+ R- Z
4.4.4 User Records和Free Space
2 Q) e! q/ G$ V- N, |* A4 N4.4.5 Page Directory9 T( z# p6 @" h" \/ m+ T# m8 A
4.4.6 File Trailer6 j( f0 L- L: S0 K) G' I9 V4 R' }
4.4.7 InnoDB数据页结构示例分析
& A7 O! d0 l& h2 K) [& H4.5 Named File Formats机制+ n* T) h) j5 F7 e& b
4.6 约束
5 f# a6 i6 Q W9 G# [1 n4.6.1 数据完整性
2 H* @4 K! S1 k3 z' R) F- w4.6.2 约束的创建和查找
F0 T) b' \1 }. ] w, l4.6.3 约束和索引的区别
, S6 P& |! V: h' E6 ~* |- v$ s$ W4.6.4 对错误数据的约束
0 j$ M& f6 ^1 R r F2 t4.6.5 ENUM和SET约束: Z* q h7 U. q
4.6.6 触发器与约束
5 a* J. |9 ]+ E# R4.6.7 外键约束
4 B. n& }5 u0 \6 ~' E7 a4 I4.7 视图
3 z0 x* ~; L3 _/ q. a6 _4 K2 ^4.7.1 视图的作用
5 w" C7 [9 u# ^, l. v; y. p4 n4.7.2 物化视图3 n- |$ N m2 P" G/ o N
4.8 分区表% D' f2 ]8 R. F6 W
4.8.1 分区概述7 h* G C; k6 a9 z
4.8.2 分区类型# x' E8 }3 t$ x5 y& a+ `0 W
4.8.3 子分区
. @9 A' l. o7 r" L1 U8 d- N4.8.4 分区中的NULL值
) f7 g4 f5 p+ r Z& Q6 q" O& G7 V4.8.5 分区和性能7 Q! D( ?! f1 {. R) y' |
4.8.6 在表和分区间交换数据3 ^2 F1 o/ Y. e& c% |% O
4.9 小结* ]4 I. U) v' I5 A% _/ x# E
第5章 索引与算法( X* T8 V1 |" F: b6 _- s5 K I$ q
5.1 InnoDB存储引擎索引概述( J" F; v3 e, k% [9 g
5.2 数据结构与算法2 W8 R( `4 R' [3 ]# ]8 [3 o
5.2.1 二分查找法
3 x% b+ R* P# |6 T c5.2.2 二叉查找树和平衡二叉树$ g+ H3 y" m% y) f) W' C/ O
5.3 B+树
F) j- L9 A! a5.3.1 B+树的插入操作5 }1 H5 R. y6 V
5.3.2 B+树的删除操作( Z% a+ E: v0 {
5.4 B+树索引; M% `; [3 d8 F* P4 F: ~
5.4.1 聚集索引
$ X1 Y' H- I+ ^" N7 @5.4.2 辅助索引
6 Q2 p/ C& y+ A! `6 x5.4.3 B+树索引的分裂
. p) C7 p3 k/ D- l; A5.4.4 B+树索引的管理8 ]4 U: G) V6 f6 D( z% X, W" b
5.5 Cardinality值
& J1 u- b9 N+ O" A$ I5.5.1 什么是Cardinality
) i- \ _* A8 V, m1 @0 e8 V7 L* i5.5.2 InnoDB存储引擎的Cardinality统计4 N: K& G0 A9 ^7 b
5.6 B+树索引的使用
\) Q$ \# j6 U6 I. y* \. T5.6.1 不同应用中B+树索引的使用
( l% Y+ z+ X+ R5 @ W5 W' E5.6.2 联合索引! c+ a6 l, s Z) ]; P1 I
5.6.3 覆盖索引) U% G# s0 u+ E6 l6 p Y( Q
5.6.4 优化器选择不使用索引的情况6 n, ^8 }$ D1 C, y
5.6.5 索引提示( s) [( T# J: e
5.6.6 Multi-Range Read优化9 m) z6 x' w- d8 t, q
5.6.7 Index Condition Pushdown(ICP)优化
1 Z& K5 q2 |/ `( M `# a# R' x" l7 z d: m5.7 哈希算法" E' v& o" N% M( e4 ]8 d
5.7.1 哈希表4 g. ` y& H5 o" q
5.7.2 InnoDB存储引擎中的哈希算法( v$ I0 T o @; X+ @- V
5.7.3 自适应哈希索引
; U* o) V+ W+ l- l c U5.8 全文检索' G/ [. p d! F/ R8 w# E
5.8.1 概述9 e: H1 a4 T* |+ F; W
5.8.2 倒排索引' e* R+ t' m! [1 z! ^
5.8.3 InnoDB全文检索
+ a/ H1 ~+ d7 `3 s* }! s5.8.4 全文检索
5 x, B9 p7 _8 L8 B: r1 T- @5.9 小结! g$ y {8 ~- D( G# c' s# N
第6章 锁
/ P; O1 O( c/ ~# x7 I3 ^& T6.1 什么是锁
( F1 o$ A7 _$ n+ x" n/ {6.2 lock与latch
1 _& b0 v- e0 p% [) A6.3 InnoDB存储引擎中的锁
0 n( R% E" s2 h# Q6.3.1 锁的类型
1 c: H2 v2 p5 P# m: a; j. K9 A6.3.2 一致性非锁定读* Y6 x$ ^% e$ h2 l
6.3.3 一致性锁定读
* ?; v! a# z2 |6 `7 `6 k0 d6.3.4 自增长与锁
4 f1 N+ G' Q P2 x6.3.5 外键和锁1 s! s* R4 G* ~2 }2 s! \& ?
6.4 锁的算法; S4 U' w) Q6 j0 u
6.4.1 行锁的3种算法
' x* j; M: Y. m6.4.2 解决Phantom Problem
6 O W9 u% R, e2 f/ N/ P/ o$ o6.5 锁问题
% l" @: I3 `4 Z/ d6.5.1 脏读6 Y# t5 H ?: d" X
6.5.2 不可重复读! D1 V. I) f) O: S: o
6.5.3 丢失更新
, e9 [ W! {; o6.6 阻塞
9 Z( _, y2 ~; x" w, z6.7 死锁
' o0 e$ f! }: R6.7.1 死锁的概念
3 }9 V/ K5 M! v5 c/ s6.7.2 死锁概率
- X9 t5 \& [2 X% R6.7.3 死锁的示例
) L* T* B+ K1 Y% ~6.8 锁升级9 L0 w# x- P4 R- {8 z4 `
6.9 小结# A$ l: D: s% N# I0 i& \
第7章 事务
* Y( l7 L& X) p7.1 认识事务
: S l) m( X8 M7.1.1 概述
% w" f$ X" u( q7.1.2 分类
0 I* @0 m. s% K/ d7 a7.2 事务的实现( ^+ J7 R$ t* }
7.2.1 redo$ c+ A& a# I5 T+ z: c4 M
7.2.2 undo
- D# H6 B4 a0 b, O/ h0 u7 ~* O0 Q5 c) {7.2.3 purge! ~9 g' F" X* B, s$ U3 j) d
7.2.4 group commit
9 U3 ]8 i: d; y- ], R7.3 事务控制语句
" d1 e5 Q4 _, F3 \1 H `7.4 隐式提交的SQL语句
~. J" Q/ R7 D7.5 对于事务操作的统计$ c3 J* ?8 C4 ]+ v- N1 c! V8 ~, r
7.6 事务的隔离级别5 S0 {1 Y' y F& b8 Z; Q, x1 G
7.7 分布式事务* e- f( `/ y- H% B2 @# y, t& }
7.7.1 MySQL数据库分布式事务
+ N* ^, b0 Y. D, c' N" B7.7.2 内部XA事务
1 K0 U5 t( p9 Z' B3 V' G7.8 不好的事务习惯5 j) D4 n- I3 R0 _: d, | _
7.8.1 在循环中提交
, w% l$ ]0 B* Y7.8.2 使用自动提交7 E. w& o3 x& I6 |/ x) D
7.8.3 使用自动回滚
, O ~) C% ?! W9 _4 _7.9 长事务3 N$ P3 u6 _, ^0 I- G( {% [+ m( P
7.10 小结 w& k/ ^5 I$ E5 d5 a
第8章 备份与恢复! M. e5 Q+ a. V, W7 \2 I7 w
8.1 备份与恢复概述
1 p! }, g/ F6 Q {7 W: s- b% `8.2 冷备
1 ?8 D' x" R; w: ?4 @- [& {8.3 逻辑备份
5 O) m! ?3 J' W( S! W' ^! d( p8.3.1 mysqldump U! e, x* T/ U3 D
8.3.2 SELECT...INTO OUTFILE$ T0 _( l7 z- N0 f
8.3.3 逻辑备份的恢复
* U* }2 Z% Z; o8 U8.3.4 LOAD DATA INFILE
2 s% ~) r( L G! e$ n8 P# G8.3.5 mysqlimport
# r! S2 J1 r+ N! U8.4 二进制日志备份与恢复# Q" t; f2 O# _ {
8.5 热备
' F( y* j# v$ [* ~# X( U# u4 J) Y& s8.5.1 ibbackup' {0 M% ]4 e7 N( m* |2 N6 ^# R" P' f
8.5.2 XtraBackup$ u. G& {9 v7 m3 ^0 E
8.5.3 XtraBackup实现增量备份
; t* y4 i6 E) m& z E+ n8.6 快照备份
/ } v5 S0 |% M6 k. F7 {4 \. n) ]8.7 复制 java8.com$ J; F. U$ f; V0 D* r- h& q# J7 G( l+ Q
8.7.1 复制的工作原理- a8 y" d9 C; \. m- p( i
8.7.2 快照+复制的备份架构- c" _# W# U& {7 o% u+ {" G: A' p' o3 G
8.8 小结
( }, O2 v( _) r# A第9章 性能调优* E- A" b8 Z8 l5 M( K
9.1 选择合适的CPU
7 B W6 Y8 l/ B3 Z7 e0 J* X+ r( z! {9.2 内存的重要性
* n4 D% M. Y2 b! w" x" W1 s% C# ~9.3 硬盘对数据库性能的影响
n& M; W' N) q; P* H& r3 a9.3.1 传统机械硬盘
/ `& k- Q/ M3 ]# p5 b9.3.2 固态硬盘
$ i1 e' y3 X+ X9 g, `: x$ B9.4 合理地设置RAID- J4 t6 Y0 k) h: |3 X
9.4.1 RAID类型( g8 U; G/ E% u- u! d
9.4.2 RAID Write Back功能, J5 ^1 L9 p: ]2 A2 o" k
9.4.3 RAID配置工具; _# z- m/ {2 N5 {9 Q, J! ^
9.5 操作系统的选择. z" S, O- D: J7 v
9.6 不同的文件系统对数据库性能的影响
; M: a3 b c/ t) w9.7 选择合适的基准测试工具
9 t2 S/ O' F9 k1 Y3 ~9.7.1 sysbench$ ]4 D4 A U/ m s9 ~5 s& t& ?* X; j
9.7.2 mysql-tpcc
4 E8 w. x* ~5 m" @1 u$ \9.8 小结
0 _7 D% C0 g/ W1 W第10章 InnoDB存储引擎源代码的编译和调试
0 O! O7 Y8 [( m10.1 获取InnoDB存储引擎源代码; o3 n9 R* ] N3 A! |% \# ]4 Q
10.2 InnoDB源代码结构# ^ J* S$ l8 U- K3 }
10.3 MySQL 5.1版本编译和调试InnoDB源代码* o& y, v% F3 ?8 Q c: a
10.3.1 Windows下的调试
0 v) ~3 f/ ^# Z& w0 J5 e: [10.3.2 Linux下的调试8 ]: C& U3 M* p5 z
10.4 cmake方式编译和调试InnoDB存储引擎* P; r3 P! C, v1 X4 b
10.5 小结
T4 Z, }4 d. q$ `5 V) l7 }
百度云盘下载地址:
) D5 V, N7 D* z1 b8 O( q3 S游客,本内容需要消耗 4积分 才能浏览 (无需花钱,回答问题即可获取积分)兑换
& c: h7 d3 } i" ?+ }8 W, ?提取码: f6qf" S( m& i+ h! w# r" m. r0 }
5 O. \; A7 [7 f8 @* S2 ^$ S6 \
, b9 E8 {% s/ l2 W1 ?+ ?( N% A" `7 k% v. e
|
|