30回答

0收藏

深入浅出MySQL 数据库开发 优化与管理维护 第3版 PDF 电子书 X0211

电子书 电子书 1839 人阅读 | 30 人回复 | 2024-04-08

Java电子书:深入浅出MySQL 数据库开发 优化与管理维护 第3版 PDF 电子书 Java吧 java8.com, C# \+ w$ X7 g6 b' k

2 d& J$ t3 H5 z8 A5 |作者:翟振兴张恒岩崔春华黄荣董骐铭出版社:人民邮电出版社出版时间:2023年02月
+ o. Z* [9 W( q5 h2 t* p0 [2 p1 X) K
编号:166-Java吧资源免费-X0211【Java吧 java8.com】
& g) x2 ^7 y7 y# b/ t# H2 ?5 J% v! z& |  h: P: R+ P; Z4 G

+ a. m. O' N" }- ~/ n- g2 a
3 ?( V: O( Q: u5 _# n, J
目录:
' z- o1 G7 \' o& I% @% y
第 一部分 基础篇/ f0 \( o1 @+ z3 i* W9 [  r

5 f, o9 m% I6 w1 G2 b+ f8 y2 |' m第 1章 MySQL的安装与配置 2
5 \8 n* n) _, {" K/ }3 ~" J4 t& a6 w5 ^7 c. M! p3 i
1.1 MySQL的下载 2
* X3 m5 W* o( w0 q  v! H! r9 _* x; q9 @9 h4 i) o
1.1.1 在Windows平台下下载MySQL 3
. T0 }7 B' K! M8 n4 E9 T2 D, l
8 X! \3 v! r4 ]# ?1.1.2 在Linux平台下下载MySQL 3
$ i2 ]5 W' l: G, t/ M- G# l0 M5 }" r) i: J7 m* R; _/ D, i
1.2 MySQL的安装 5
9 f" ?9 S2 K" Y( g3 g
; E% u2 p7 p% Z4 G. d. N; z( U1.2.1 在Windows平台下安装MySQL 5
1 S" v& i- d4 C6 c0 V
& K" O4 j# b* h, q2 o) M1.2.2 在Linux平台下安装MySQL 8: @. j' K9 M+ K3 }5 K4 N
3 E* u# P; ]6 T9 `! l; _. F/ I
1.3 MySQL的配置 121 |  u. ~0 C4 y' E0 Z
( a0 {" U( L$ U1 W# w/ C( Z
1.3.1 Windows平台下配置MySQL 12
1 H5 G" J) K; [( q% o
2 t: s; O' Z; f! E, t1.3.2 Linux平台下配置MySQL 13
' l! B* b8 e' a  l3 ]& A  l1 W
1 q- q0 v+ d; _4 T: C  B1.4 启动和关闭MySQL服务 13
# c* F" `  Y7 d* i+ l, \; E0 {, X8 i' _9 w; }0 S8 h
1.4.1 在Windows平台下启动和关闭MySQL服务 134 M5 }5 w9 o! B* B0 s$ W" [  C9 T
% m# t  N3 R; X6 D, v
1.4.2 在Linux平台下启动和关闭MySQL服务 13; G% }. {0 R$ g* S& W

7 K3 Z* z0 I3 Z8 }+ n: s  B1.5 小结 14
; e; Y9 a1 Q$ q- i
* e/ m/ I+ u- u7 v第 2章 SQL基础 158 W/ Q- f  d) T/ a6 n

, S9 d% G2 a& `. P4 N2.1 SQL简介 158 u% O" N& \* Z) P" B  K

& v& u9 |% V* n  }- t! D2.2 (My)SQL使用入门 15' J% @6 @, r  U+ u

1 X9 k( z) c4 T# E2.2.1 SQL分类 15
* E8 z2 I1 W3 c  L$ M' m- l: G
& O( U. L3 z4 x, p+ Y$ @* B, b2.2.2 DDL语句 166 n+ Y% B5 Y$ S' }+ W' _

: e$ u4 P7 F5 N4 B. E0 \8 L2.2.3 DML语句 23
, x5 l) i0 ?7 A& ?+ H! R! w0 d3 ^  s3 J8 }) H+ z+ D
2.2.4 DCL语句 33
8 ?% i/ i4 P/ z/ H. x. \+ U, \+ n( J; y* F" D
2.3 帮助的使用 34* D' i3 p2 a7 }5 s# y+ y' p

0 [4 V# k1 q  l4 @$ s2.3.1 按照层次看帮助 346 N& B- K7 F; l+ e& L+ O" E

' P8 I; F* s7 T5 _, V2.3.2 快速查阅帮助 35/ O& T7 _+ J& B3 D7 t0 H+ i
: s0 F5 t& j  q; J
2.4 查询元数据信息 36# T0 ~& H% ?8 ]6 [

9 R' t9 q; b0 {  }9 ]2.5 小结 37
$ k% e% n1 J& n
: s: Z: r4 o4 |9 Q+ k8 \4 l# ~0 z  w第3章 MySQL支持的数据类型 38
1 `, [: ?5 u1 @! w  C) B/ b% F) V9 s+ d: L9 E& B# D7 \
3.1 数值类型 38  n) `! M" f4 I" ^  o
1 k) ^5 z6 P8 o4 J; z
3.2 日期时间类型 43
8 C& f: B& v1 M8 F& B! v7 @4 T& O# y% F
3.3 字符串类型 49
% p- M. q: ?% o) ?" ]) G3 {" ]1 ^$ ]9 Z+ X5 o) S
3.3.1 CHAR和VARCHAR类型 50
2 o1 T2 \' a' I4 C1 o
6 J) a7 D! d& \+ D) A4 m3 q! s3.3.2 BINARY和VARBINARY类型 51
. V1 [" H- l- V
& e6 R6 n4 M% H6 P, u, c0 j& N3.3.3 ENUM类型 513 u: i  b7 ?. x7 O- c; m( ~& B

5 g/ f7 J+ F( t0 U8 N1 ]3.3.4 SET类型 52  f: \4 U9 i% k

1 F$ R( E: `; u! V$ T% J2 m- B3.4 JSON类型 52
" [7 q1 H8 C7 C9 b( g
0 C  W; D" h, q; l% b/ F6 t3.5 小结 54
, ]/ W( r6 c! R: T* D; G
' q! _# G6 L7 B& E3 K. w9 `# j5 {第4章 MySQL中的运算符 55
; P  {* x$ j5 _/ j  t' _, E8 x1 s5 p! x8 v8 h
4.1 算术运算符 55
) N& S" Q/ Z# I4 |4 P" H
* u7 K8 k6 R& w4.2 比较运算符 56$ J+ v5 p1 R) p0 V: O# \
4 r# `  X/ m2 _: V
4.3 逻辑运算符 59
& C& q+ e5 _" }5 s- q. T) U# J3 S6 O# E4 c  {/ ^: s! Y
4.4 位运算符 60
- n( p/ {, g3 A( P9 W( i9 ^( F( n, H) {% W$ k, n
4.5 运算符的优先级 61
/ T: G. L8 N  N% V5 y" h  q; h" R3 h8 ~/ `/ ]2 J; P4 F9 a0 M1 e
4.6 小结 62
0 ]1 F1 @+ E9 U9 h/ }5 b2 Z2 \6 S1 N
% Q/ @( x1 |; X5 e第5章 常用函数 63# Z  X) c% B0 k. P! ?
3 t1 I" k6 i) k' M& }
5.1 字符串函数 63$ q, L9 u# c4 G. J/ `; s7 z. e
  o8 I; D2 R5 Y! ~+ Y" j  v2 y0 m( g
5.2 数值函数 66! c. N$ f& ], H$ `$ f9 E' E9 \7 l

9 g9 W* r. Y& \+ d: R2 ]& T, D5.3 日期和时间函数 680 B' j' {% N9 e  Z7 R$ b" A

4 {9 p/ y+ w0 g( h  h8 r5.4 流程函数 71
/ s0 W$ b+ }' R0 {9 y  E4 U4 p
$ M0 \1 e5 w1 ~% X% c: ]5 t3 y5.5 JSON函数 73
; |# V5 m( u! V! M- J! r0 {
$ m' a$ W  ~& m5.5.1 创建JSON函数 747 z" {& h2 E% x! b0 G1 Z1 T7 r* J
6 P0 g" [& M) C5 f6 {9 b0 ]
5.5.2 查询JSON函数 75
  t) ^% M  W4 P4 a% ?- ~$ c' A6 y& Z7 x5 n" }! s5 y" i
5.5.3 修改JSON的函数 79$ X# S! q1 x5 b
) ?! ?+ {/ Q& C9 V( f. q1 o
5.5.4 查询JSON元数据函数 81
. @7 |5 m1 D" h1 D' @3 ?, _* h9 d* h) b
5.5.5 JSON工具函数 83& A9 f" Z; _+ C) R+ ^9 m

. x9 s" \- M0 L' R1 K) o5.6 窗口函数 86* m" e' e9 r7 h/ F  p+ W

# c. F9 G/ D- X5 w! r3 Y5.6.1 ROW_NUMBER() 87
+ v( v5 w& T7 v
5 \, d) J" m+ l- U% Z- g: L! x& S: _5.6.2 RANK()/DENSE_RANK() 89
0 L' l6 |+ ?) X( V+ g* p3 G0 U# M
4 i" W; D3 T- b7 c5.6.3 PERCENT_RANK()/CUME_DIST() 89; o+ P$ {/ }. E+ S9 |
- T' _. k" ]  Q% O4 ?
5.6.4 NFILE(N) 90
5 i" w( `& X. D7 z8 O
8 G* z0 |- Z9 j: p' K3 |5.6.5 NTH_VALUE(expr,N) 91
  p4 I9 W" l+ c- m- |  h1 w) x+ R* M
5.6.6 LAG(expr,N)/LEAD(expr,N) 913 G  G0 z" ]9 ?% S  }" a/ \
. O  T# O4 J0 t  P
5.6.7 FIRST_VALUE(expr)/LAST_VALUE(expr) 92
, F5 i! _2 L0 s% M$ Q5 h
1 b3 \& R1 ]' o9 V1 J5.6.8 聚合函数作为窗口函数 93
* i, D" x8 {1 O5 p* o: g0 \$ B
' ^8 ]( W& X. J7 W; Y5.7 其他常用函数 932 K9 r7 @" z; N) r& Z( |) \  l
6 x+ G/ B8 e/ j' P% i, g  ^
5.8 小结 95
  ^! O* Y9 U9 T! \' P$ ?& y4 x+ K9 g9 A' Z) Q$ R# ?' ^" t
第二部分 开发篇
5 @6 ?8 o3 N, i$ ~- g7 H: }% d( B0 b& e
第6章 表类型(存储引擎)的选择 98
2 f( c& S( w1 e6 Q+ p9 S; |7 B
3 W2 t- C! Q0 W  [/ {6 P& T6.1 MySQL存储引擎概述 98+ O# S* p! ]" J+ N7 I! @" D

3 {0 s  H, ^3 o1 A& J6.2 各种存储引擎的特性 100
( `% F, s/ L7 u8 [. K* N; f4 h' O: K. ]; f
6.2.1 MyISAM 1011 M- v3 ^; [) f

, s" v" M5 S6 R; f0 I6.2.2 InnoDB 102
3 K8 |% [9 u- c. {9 B2 E: C3 l
6 M0 v  g4 D! Q7 E" Q1 Q6.2.3 MEMORY 108
% f+ M: k* f, ^" ?
1 I. C4 B7 a# J) q+ Y$ x- e7 p) G6.2.4 MERGE 109
. e8 A" a! I& p& t! L# i$ v. T2 i8 t& q2 e
6.2.5 TokuDB 111
7 M& ^9 g9 b# |. e6 F
. a  p2 k8 }" j" T" f6 G* @6.3 如何选择合适的存储引擎 1129 P- ?2 b5 L/ Q7 d% C5 ]/ l
! I& C5 d' n& \; ]1 j4 k: y
6.4 小结 113
: o. R- a7 r2 g2 r1 j( v% T3 ]5 t5 F+ I4 \+ Y2 e* x
第7章 选择合适的数据类型 114: v5 |/ ]7 r; |) r# _- `

# S0 z) p' r' p7 C7.1 CHAR与VARCHAR 114
/ D, Q0 R$ v$ {, q2 U5 S) Q3 r& y. d" m$ @  u
7.2 TEXT与BLOB 115
5 g8 V( m7 r+ O& M8 m/ M1 P& N0 s1 p8 V) m- C0 G
7.3 浮点数与定点数 118( U7 y3 K4 l6 i; k

5 I" k7 B% _1 K, K; {8 k! h2 x7.4 日期类型选择 1200 k( G+ j4 c+ B

" |0 ^5 E% Y2 M1 S7.5 小结 1207 X* h$ Q* J! }7 u1 E$ w( L

6 N) c3 o5 O/ \* z7 e& [第8章 字符集 121
1 ^: P9 E7 {) g! v/ G* ?
5 Y* y5 _  T* C8 l' R; q8.1 字符集概述 121
: ]0 }0 ?9 q  Z* S# G9 @' q9 J# P/ L; l$ Y: ~
8.2 Unicode简述 121
) N7 w% p! w* L3 W* r
- E3 t5 M2 v# |! @- m8.3 汉字及一些常见字符集 123
9 C2 E7 ^0 c$ U) P- ~
1 `  |7 N' m; @7 R8 y$ ~8.4 怎样选择合适的字符集 124
# X3 Y3 @- A% I. z" ?8 V# ^7 ]7 p9 Q! N5 Y% s) ^$ j
8.5 MySQL支持的字符集简介 125
" @& c" \: R' T/ d
& N; U" e, h  p% A" M- _8.6 MySQL字符集的设置 126
- Q# y- L+ t& |! i- N4 f* L: J+ K- r4 s3 R7 O* Q7 W% O
8.6.1 服务器字符集和排序规则 1268 J  g" N, F! i0 n+ t
% v: r+ R$ }* q( B- B
8.6.2 数据库字符集和排序规则 1274 Z( G2 Q( d7 `! ?

5 f3 }* H) D7 r% y7 d8.6.3 表字符集和排序规则 127
% H& b5 R- q) j; `* O2 }6 q; S9 S7 O3 h& I. r+ ^! M
8.6.4 列字符集和排序规则 128$ D7 z! Z& D( V8 t) o, a+ l6 X% q

0 ~1 _) x# q5 `, p. u: u8.6.5 连接字符集和排序规则 128
9 d& W# G% x0 t& B8 I& y: u/ z, L' F9 m3 z0 g+ M4 H
8.7 字符集的修改步骤 129
4 N/ O; r* a  [: b
, x' w0 q  ~/ Y, l: ?8.8 小结 1297 y2 ~# R" P- ~9 w! {! q

' M& }- r# L& u, V+ x第9章 索引的设计和使用 130% b4 e4 n2 ?" A2 [2 W4 Z

1 o, R. ?* p5 P+ s4 \8 C& y9.1 索引概述 130( x) n1 Q% B4 x$ K; a$ d, @
' b$ c9 l7 ~* j- W* s# ~
9.2 设计索引的原则 131
0 y" d8 `) s7 e, D* \# b  V6 T" S, p
9.3 索引设计的误区 132
9 a3 @0 _8 Y' o& u
7 H' {# x0 }& k3 O" q. v" V" r9.4 索引设计的一般步骤 1320 z8 y4 K$ y" K& D$ p( s
& V. }7 |* G' r- B# E3 S; }$ f  a
9.5 BTREE索引与HASH索引 133
: f2 g- D3 h9 U2 f2 y; {9 y$ G8 R, U$ M" j5 y9 R
9.6 索引在MySQL 8.0中的改进 134
$ w* {1 g; X0 M8 I% Z, e8 d' Z! `8 A, W
9.6.1 不可见索引 134' M, B+ l/ R' K6 h+ T
# G5 z5 O+ p* }4 M6 b" C
9.6.2 倒序索引 135
. I2 v3 o+ J" b- D) r  X9 \6 B' q0 ~% e1 X# `! K0 E' U! g  Q& y8 Z- `- L7 Q
9.7 小结 136
! `+ h& ~: _0 M: ^: o, ]! Q% X, i
第 10章 开发常用数据库对象 137+ D5 x" M9 X: U" I1 Y. b9 \- E% g
8 l" J0 J/ u6 w- }' S6 y! N" ^/ l# c
10.1 视图 137
5 i" r1 M* d8 K
: ^& i- {3 O3 Z2 v10.1.1 什么是视图 137
. c9 Y% c& \% u% E
* s0 w1 T; q7 W( h5 j10.1.2 视图操作 1370 x/ m9 B8 l8 u  w7 w9 v% J( \
: y! n  o( e* Y: x# X6 L
10.1.3 创建或者修改视图 1375 ^9 n& f7 p3 n' E+ ]' k& D& j

; f* x' P, k- t6 c% [! X" h: k10.1.4 删除视图 139
+ H2 ^; w9 r$ W' F. k: G, M7 t. \! r' I
10.1.5 查看视图 139
$ e9 t9 ~/ r; Q7 y7 H$ C7 }) b
) e: o% E% ]+ I10.2 存储过程和函数 140
+ p6 d8 _- Y+ ?1 b9 l  B2 G) K0 J3 B0 E& @  X- \
10.2.1 什么是存储过程和函数 141  n2 ~+ L+ k9 u8 h
: p2 P* P( l' |, J
10.2.2 存储过程和函数的相关操作 141
5 D( f; J$ h# U, c/ C  _: N
" }: s) N: O+ p4 d10.2.3 创建、修改存储过程或者函数 141
! i2 d* I: L) c/ y+ r2 A3 W9 N$ \+ I0 x7 k
10.2.4 删除存储过程或者函数 1445 k* U% D0 E! Z- R
+ [& ], q* I2 i( H
10.2.5 查看存储过程或者函数 144/ b5 L3 Y+ q( {  Q# q

6 \$ f8 s8 \2 F0 c10.2.6 变量的使用 146
$ O" {$ ~) U6 A# c5 R1 I8 F' J% n2 z5 z# z
10.2.7 定义条件和处理 146
& ^4 l3 z. F7 W/ ?
* L. c$ C( z8 n' z/ m10.2.8 光标的使用 148
" E- |: C. o) ]7 P$ V; m+ C, i; u
0 `9 j) P. T: J' L- C* w10.2.9 流程控制 1494 G1 U* e( n/ C/ z' g

, ?9 j3 |& v- O; c7 x" a3 F) U2 v10.2.10 事件调度器 1520 n: o" @) Z$ `0 }+ f0 T& f
7 I% q/ q6 u3 h" n, w% s
10.3 触发器 155
# v( [4 B; R+ m& l8 K+ @5 g9 p2 V' h
10.3.1 创建触发器 1553 q0 q* f  c6 W7 H
! ~% j/ ^* R8 L. |1 G0 K) r
10.3.2 删除触发器 157
+ X. v" h& O: y; p0 \
0 f  G% S! e1 B  l% \6 h10.3.3 查看触发器 157" h! K* z+ A0 g) [* ]' v6 o
7 v3 p# Q8 ^8 v$ y
10.3.4 触发器的使用 1585 k; h* l4 k; z: O- i! G
5 C3 o3 e, d% s# u
10.4 小结 159& k2 c3 u; u3 j( J
0 U8 N0 i) E% D% W
第 11章 事务控制和锁定语句 160
, K+ D8 h2 F( @% a
( H: y) p* _) A$ N' I9 b* ~8 W11.1 LOCK TABLES和UNLOCK TABLES 160  N, E1 [2 M9 `) m) I+ d

+ `6 q; Z6 ]  n7 e. p11.2 事务控制 161
0 C4 P  o5 m9 D7 W- F7 o' l0 a2 ~1 x$ _% y- r& ]3 J' i
11.3 分布式事务的使用 166! z" E* i- [# ^  A) J
  u3 G+ v! S0 J% T
11.3.1 分布式事务的原理 166
1 E4 _/ j) ^& N6 e* c& h2 ]+ m* r3 B3 ?8 i; b& S; R. a2 z
11.3.2 分布式事务的语法 166
2 F4 b& V3 e5 p- `% }4 s% E+ M6 x( Q( O7 o; N
11.3.3 存在的问题 168' P0 U! h3 z1 n/ j

6 @- ^8 j4 V7 z2 i* X; X  E11.4 小结 1715 o- B: K; A! Q4 F
1 m) ~/ S9 h. I) t; ^
第 12章 SQL中的安全问题 172
# W8 D7 S' i" t1 Y2 b: U, l& \% z: ^2 N" i- y
12.1 SQL注入简介 1723 [4 K) h: i; W# ]
# ~# O6 f( Q4 A' g
12.2 应用开发中可以采取的应对措施 1730 _! _: C: f& w4 A
- \' ~7 m7 v8 F' B
12.2.1 PrepareStatement+Bind-Variable 173% }% S3 a, {0 o6 `) J  J

# q& K& S# F: h/ u6 P8 m12.2.2 使用应用程序提供的转换函数 174  T8 q" ?2 h$ V1 x5 r; S

% v; @3 q# x6 C5 _12.2.3 自己定义函数进行校验 174/ l- t8 I1 h( A+ K# Z

3 J9 M8 T1 X4 L- d$ l12.3 小结 175
1 @% g4 z2 ]( {" N1 s2 F5 m. `$ D
1 u# h9 _/ X( O  i/ g8 h- c2 ?第 13章 SQL Mode及相关问题 176
. x6 V1 C  t- j' {( k7 d' Q% W6 _. A9 g# g" G
13.1 MySQL SQL Mode简介 1760 h  g2 F9 B/ c3 Z8 V& B! F2 n
1 Y) z- I" G* V5 x$ }
13.2 SQL Mode的常见功能 178
/ |7 p3 R2 v) ^3 i8 i4 f
6 h+ T6 A! p: o; w$ F13.3 常用的SQL Mode 1803 B4 D3 Q* ~9 C8 T3 G3 g
4 e! V5 v/ H) d3 _- |
13.4 SQL Mode在迁移中如何使用 182- J7 C4 B# m8 Z$ u# J
7 n& v# r/ X7 ^- W( F* d) r; p
13.5 小结 183& J. U  ]" }: j# ~& x! M: N' J
' D$ l- ]8 f' N% J
第 14章 MySQL分区 184
6 w, ~, `0 q( \8 N9 L& \* y& k9 \! C% M+ L+ O, n; e9 x' S
14.1 分区概述 184
8 I$ \* `( _( ^' V( s8 F, U/ r9 N" J9 `$ P! y( o
14.2 分区类型 185
- Z4 x3 [/ B4 W3 `: T: k3 _) @( `( w# `
2 f8 R- p4 ]1 ~% h7 V14.2.1 RANGE分区 1870 y1 B, A: S) K  r! q7 H

* J. Z1 x4 ?8 b# n6 a  ^. y14.2.2 LIST 分区 188
; M' ^! T/ o% Z% T& j) x- }& L( v6 z7 D; Y* {4 m' s. F4 K: S
14.2.3 COLUMNS 分区 189
  Y& S" L: n. w" C, \! N! W. O
+ [: S+ ]- ?, d" }9 ~, c/ m14.2.4 HASH分区 192
: `* u" b: C6 Q7 R- z4 A# p+ V/ n6 Z2 x0 _; [/ z" l3 l
14.2.5 KEY分区 195' o( Q7 [3 c0 t) j( I- e7 o

* x9 N' l% q" V% m$ o14.2.6 子分区 196* G" c" {8 j* ?1 h+ c
( p/ L6 M/ a* [  |) r
14.2.7 MySQL分区处理NULL值的方式 197& m* W7 f0 L9 |: W( X& E

. B) u0 |1 S# i! A1 w  v4 X14.3 分区管理 1999 u6 m5 n' t+ i* |5 r  H! w( p+ S& o
: @8 u' A' S+ d# ]% X/ S
14.3.1 RANGE与LIST分区管理 1993 O; G& Q* d' t3 R7 W( p" a% i+ {
% e1 p! K1 \' o; h' d
14.3.2 HASH与KEY分区管理 205
# ]$ H" T( U. Q9 \' T
  s, ]% V: i+ i& L* [1 I( T  O14.3.3 交换分区 206
+ T! z( @( u' Z7 A5 K" D5 ]
, C& Z, ^- w4 e5 S  ~% Q) x7 z, p14.4 小结 208# q1 _6 M1 }3 |2 L, g+ \2 Y) V( d
# J, Q4 O8 A8 b. h$ ]
第三部分 优化篇
0 d) U* {2 G2 t+ a# t  \8 K5 d, a! c9 N2 S: f- J
第 15章 SQL优化 210
2 ], @* W6 ~, C" B9 X: @  ~. ^
$ b. N9 T3 O0 o8 _0 k6 T15.1 优化SQL语句的一般步骤 210  q$ y! q& y0 y
/ c" J4 \& |+ D# u' I
15.1.1 通过show status命令了解各种SQL的执行频率 210
+ Y7 s( ]  w" D1 H( J" Z
" @" R1 W, T. i& H& j( s15.1.2 定位执行效率较低的SQL语句 211
: K$ c7 E2 M. p3 p: G) C2 P* ~# b2 U* b+ w
15.1.3 通过EXPLAIN分析低效SQL的执行计划 211
, V! A4 \. u2 e; {4 A0 R
- d# I) k8 S' f# K4 \15.1.4 通过show profile分析SQL 216
% L* B) K) F% Z
& V& \! w: x: i- [" D% u( ?15.1.5 通过trace分析优化器如何选择执行计划 219
6 a  i, y1 ^" v9 N9 s# o3 ?" U: y' x7 I$ }  K8 j" G
15.1.6 确定问题并采取相应的优化措施 220
7 y- u" `$ n0 h$ w5 `1 W. q- r
8 ]& D. r4 i8 ~9 h15.2 索引问题 220# ?0 z- ~1 t( k6 ?& ?" X1 {# @+ l
  }5 Q4 @: W- h! A! N- _4 @# g8 ~/ ^
15.2.1 索引的存储分类 220! Y; c2 k% n+ Z
* }7 N( h% `- x: r  O- M+ [! c
15.2.2 MySQL如何使用索引 2224 a6 z' K2 A6 `! L
1 |) s* G" i  c; C/ j- t
15.2.3 查看索引使用情况 2316 J: ]. t4 l  Y" f- [

6 e& c4 Z6 k( v& x) l15.3 两个简单实用的优化方法 2315 k7 f& k, ^6 @2 L# p; Z8 F

& j" g) \: J) n3 V5 b% J15.3.1 定期分析表和检查表 2327 v) F# N. D4 T" Z
0 |7 F2 e/ l* v5 ^+ ~& X9 X
15.3.2 定期优化表 233
' U+ ]% J9 \9 S$ R' I' {9 R* y& k
4 c6 P9 n# f$ y* s0 i9 g* ^15.4 常用SQL的优化 233
' e! V/ ?9 y6 j, a% n/ B
  }' W$ D7 m  j0 W$ P5 y15.4.1 大批量插入数据 234
1 M( |- H' A, P4 T, Z
0 X2 O* `# ]0 e, y15.4.2 优化INSERT语句 235+ B  Q8 E; a. b# h4 e
0 m! ~5 ]. M1 ]
15.4.3 优化ORDER BY语句 2357 F6 Q% Q; s, n0 h4 c$ Z1 I

" W3 u' x3 Z! T7 h  b: {3 L3 b8 y15.4.4 优化GROUP BY语句 239
: I7 g$ z; P; Z5 _8 q
* B$ V& O2 M& ^5 G1 S7 T15.4.5 优化JOIN操作 239+ h% Y% G* j: s/ V

  e; d7 V* n& [5 g15.4.6 优化嵌套查询 2437 ~1 J8 v1 _# U$ V- E

( h) H1 C3 ^  K* k% |$ L15.4.7 MySQL如何优化OR条件 245" R% l- K- G) ?3 A

7 u+ T( _. r4 x( M% r6 y' i) [. l15.4.8 优化分页查询 246
% V$ l7 p" i/ z1 e0 t
1 Z& z% @: A4 K# }$ v# C1 d2 Y15.4.9 使用SQL提示 248
+ N* M: R' A- q3 _, g+ N  p6 r- H; {8 n1 ]" u8 `/ E0 g" g1 K
15.5 直方图 2500 g3 _- u  I8 E6 j8 ]* [: _/ m
6 S: ?0 Q% k' A6 b5 X; g! o
15.5.1 什么是直方图 250* w3 J+ F: A0 c% |& ?5 A; i0 h
1 @2 x- U- [: U# R' {
15.5.2 直方图的分类 2519 \; e; ^& X; ^" i, M4 A- e" [2 s  u
8 Y2 d3 s# e& W% J8 Z" X
15.5.3 直方图实例应用 252
8 _- R: m6 D* |$ C# S0 g, p: h0 ^/ U( Q! F- y" I
15.5.4 直方图小结 256) @( z: T$ d. V" [
& V0 ]1 f$ K8 [$ \- W/ \
15.6 使用查询重写 256
' [* R( e* h: v  Z4 _7 F& L$ U4 w; }8 }
) s/ e& o' L, a: E4 [5 H15.7 常用SQL技巧 259
$ M" g) g, V+ v. W1 i, ^: a
" H) E' s5 W1 _9 h" Z15.7.1 正则表达式的使用 259
* z" N/ V6 [# P& ]9 R2 X3 H, Z1 G3 Z$ L  ~6 f0 g: h, G
15.7.2 巧用RAND()提取随机行 261
* X/ Q- A4 i* _' B6 C, g0 J: _' J# A
15.7.3 利用GROUP BY的WITH ROLLUP子句 2624 c; N, ^8 v6 ~, G" n8 J
- s& |0 ]# z5 t* J0 N' y
15.7.4 用BIT GROUP FUNCTIONS做统计 263
: K! n% A! A3 x8 f6 M7 D
- V8 F; j. p) Q  U  I4 v15.7.5 数据库名、表名大小写问题 265
8 x: C; N' k/ |. F9 L" d
0 w' C9 o( u  y* `15.7.6 使用外键需要注意的问题 265" S& n$ M5 A3 J/ c! s: W
  F" [9 \+ Y8 `- q1 b1 h$ S! s+ ?: q
15.8 小结 2669 h3 ?! z' V; d4 s  \3 l  N# T0 i. @
$ |# r! H3 _: f9 p2 K
第 16章 锁问题 267
. s. F8 A  T  B6 y
7 t. W6 w7 B$ T0 @# s/ O  v- [- J16.1 MySQL锁概述 267
& n6 t# \" N: u. P3 y# E* Q$ [0 I2 y$ y( V; k
16.2 MyISAM表锁 268: O  o- T# j" `

& @3 h; V+ F- u+ S9 Y6 y- `5 q/ ]16.2.1 查询表级锁争用情况 2685 l* G9 N' a5 n8 _8 ^* V0 @: s2 ]
5 H* V: D/ n& t
16.2.2 MySQL表级锁的锁模式 268
0 Z+ }: _" @+ H
* B+ _: U6 L- x$ W; c4 m1 Q# H16.2.3 如何加表锁 269
* h3 m0 V' \1 G
; L6 U, j3 U$ D! c) P16.2.4 并发插入(Concurrent Inserts) 271" g2 A  W3 m0 O3 A/ K1 d& R% J" s/ N

% L6 Y3 |0 N. `0 \6 p16.2.5 MyISAM的锁调度 272
8 T  d6 {/ e, k, V8 j4 f) n3 o/ _
- m- j: B+ W8 t; N16.3 InnoDB锁问题 273
( B7 l6 a9 `& q3 {6 p) p
% S8 u% j) U1 z# t16.3.1 背景知识 273# g" t$ l0 C  \8 N9 ^

8 }" f2 j, R, k, e% f+ m  n# W+ s16.3.2 获取InnoDB行锁争用情况 275) }6 k0 u6 j/ Q0 ]+ L0 p' c
0 k5 H9 k. v4 \# w/ X- }0 ~, F
16.3.3 InnoDB的行锁模式及加锁方法 276
5 f$ j0 p8 W0 ]+ M4 T8 @8 i2 I
+ v, G' ~7 l; `# s. r" ?16.3.4 InnoDB行锁实现方式 279
9 U5 n5 _/ \: @" ]; {$ Z
; Y  v3 v7 w; q8 P* ^+ \- A! w16.3.5 Next-Key锁 283* d2 t! }& ?( d! ~

2 s7 r8 s* P) r2 T16.3.6 恢复和复制的需要,对InnoDB锁机制的影响 284
4 ]7 e9 N0 }' v. f. N, M, p' X4 R* z; `
16.3.7 InnoDB在不同隔离级别下的一致性读及锁的差异 287  w/ @% l/ Z2 F/ R) _5 h! v" X$ s0 h

' R( J2 s% b1 h0 o* w16.3.8 什么时候使用表锁 288# ?% l! s- l  |! b9 B
5 U% ~( p$ G* }  `$ \5 H
16.3.9 关于死锁 289
3 ?+ P# h$ X  \! `
6 f9 ^7 z+ G9 Z16.4 小结 2944 J7 m! l1 d+ l/ T

8 |1 P) x# s8 f第 17章 优化MySQL Server 296
4 ~) d8 }' A! [" b/ }- X5 N+ x7 ?9 w6 N/ m7 j  R3 s/ [
17.1 MySQL体系结构概览 296, g1 m1 R9 u4 v2 J

+ t( {' D- x7 N7 s2 {% b17.2 MySQL内存管理及优化 2986 d8 @; o3 l; g

: h" t. f7 K- ?4 u17.2.1 内存优化原则 298
+ T2 V! c" o4 X8 w- `7 P1 m) r5 H
17.2.2 MyISAM内存优化 298. F) r) O0 c# l) h* O
$ r3 @) R+ Y7 y; d
17.2.3 InnoDB内存优化 3014 u7 y: p/ b3 Y* |  i: R, g4 q
- v" f4 {) k3 p7 I3 `7 J
17.2.4 调整用户服务线程排序缓存区 305
9 ]! i6 ?, T# t6 C! n9 e* W/ V
, A1 w0 T, W( ~# s. _* ]9 X17.3 InnoDB log机制及优化 3059 y" @* i  J9 l7 M5 ?

, ~# K3 A- a$ x$ Q3 A. {17.3.1 InnoDB重做日志 305" C2 U+ P6 S" z1 a3 Z
* W! f" s# d6 X  U5 ?; ~7 O
17.3.2 innodb_flush_log_at_trx_commit的设置 306
8 ~* X$ e) V) u$ \; v. Y: q
" o0 d  O8 g3 z* @7 X; f17.3.3 设置log file size,控制检查点 3070 d8 ~" B" n5 `, }  b
4 Y  s* T, j$ q0 f
17.3.4 调整innodb_log_buffer_size 308
  F: o( g$ G' b; C
$ B( b3 t$ ]4 G6 s8 Y8 J% E. Z' r17.4 调整MySQL并发相关的参数 3080 j3 a& e6 |$ b3 v

: }5 u% I* ^0 M17.4.1 调整max_connections,提高并发连接 308
: @+ c/ ?4 G& P9 L' C# S, N. S; w9 f9 L5 W- d' n+ n' d
17.4.2 调整back_log 309
1 k! d2 H: c' b+ A& ?1 j
( D( w; ^- ]6 N17.4.3 调整table_open_cache 309
3 \/ |: H, ~  c( }7 F
  O% W0 z: W" G$ X; F17.4.4 调整thread_cache_size 309
6 ^6 R2 E  v; |2 J0 K$ p
! y$ D' x; g- h% m* @17.4.5 innodb_lock_wait_timeout的设置 309
( }. H; `5 L; G
/ H2 x" a8 {- I3 b17.5 持久化全局变量 309  y; a, b6 u: P7 z& `
5 u2 h/ D8 h& a( E9 p( D: v/ Q3 X$ Z
17.6 使用资源组 310
' q1 }1 G2 z7 U  R; }& h( K$ ~0 q: M7 i% Z6 W: u4 q
17.7 小结 3123 z8 N' u8 G5 j. @! B' V

& B( S$ D5 P- S2 {# ^6 I+ \第 18章 磁盘I/O问题 313! ]3 e3 ~$ k/ i( O& \$ ?4 E: y
8 k  B8 l- G* [
18.1 使用固态硬盘 313  n% @! F9 j% M" S+ S; x3 E
8 s4 S# Y; Q* j0 m* g" S
18.2 使用磁盘阵列 314* B* U/ T1 K7 Y6 f7 R- a
2 S# \1 T# M4 c' y
18.2.1 常见RAID级别及其特性 314  S, ?9 }0 u# N1 v- m
' \" w: q7 d: C
18.2.2 如何选择RAID级别 3159 S8 x7 f; g. S

8 r$ o3 Z' [; @  i0 ]6 N18.3 虚拟文件卷或软RAID 3157 |$ D" k* ]) U* |# g  L
7 e: }6 V4 M5 H4 a* s9 g4 @
18.4 使用Symbolic Links分布I/O 315
. _( u% x* B* }5 A  L/ x' M9 p# a2 p$ H9 I0 v
18.5 禁止操作系统更新文件的atime属性 3162 s$ s' E* X) O. E
! [+ L: E6 ?9 U3 ]3 N1 R0 ?3 n  v1 l+ y2 N
18.6 调整I/O调度算法 316
0 r- w6 ~  Q7 {1 s: `
5 {! g) _. a" p18.7 RAID卡电池充放电问题 3185 T! Y6 q1 H+ G( G" S9 H
  y+ D$ ?- y& }% J
18.7.1 什么是RAID卡电池充放电 318
1 T( D$ D  q/ i7 l! O4 @0 W/ v$ J- ^' i
18.7.2 RAID卡缓存策略 319
9 |- q' Z1 Y  r6 y# Z5 B3 o2 C/ V
" H/ d% ~: S* L! Q  m18.7.3 如何应对RAID卡电池充放电带来的I/O性能波动 321
  r1 _# T) \; T! l' g
) b8 ?9 Q. {) R+ J18.8 NUMA架构优化 322( Q1 @  }4 _2 r) O
% E/ O) F8 j. Q0 X
18.9 小结 325& r: J# L% O+ g5 U' c, [

" B% f% ?0 ]+ D5 K- A& _第 19章 应用优化 326& \$ \) O9 C$ q: w

; q6 G/ I% J3 k, ?; \/ t5 a. x19.1 优化数据表的设计 326
! v3 R' z2 X+ v  V0 n
5 q  [% S: q  Y0 g4 N4 Q. M19.1.1 优化表的数据类型 326
! ^- f6 _1 i' Z  S* B5 o6 v  }2 |- \0 Y2 M
19.1.2 通过拆分提高表的访问效率 328
1 b, }- a& e' P
; y" c! u8 A/ k5 r7 h; y19.1.3 逆规范化 329
( P- |/ O! v0 s8 @
9 f6 r# q" }' w1 B6 G$ X19.2 数据库应用优化 330
8 @% v. m" Z3 K- X. f) w) E& P  y; \; n* G+ V0 P* l; B* U- k7 u
19.2.1 使用连接池 330# z. l, ^2 @4 V. l9 e( q: {

# a/ q+ _$ o. l! @$ N19.2.2 减少对MySQL的访问 330+ T! M% F0 ?3 v: Q

- t) t5 \+ I& I' I  l8 i$ `19.2.3 负载均衡 331
/ I2 u+ c& Z  t" i& l& }# N! \% ?0 t) t. m: m& H  I
19.3 小结 331
* \# Y- K6 I: b; I3 T( V8 F' Y6 Z0 A6 N9 V. s
第 20章 PS/SYS数据库 332$ @* j4 o) f, _1 q

3 v: R6 S3 M# s1 v* {: x+ K! E20.1 Performance Schema库 3322 M# L; `0 i5 g  H
. ?/ w; f* x4 B* s& c% {' v
20.1.1 如何开启PS库 332* I/ b) R) v& o' K5 U1 V+ ?
6 }" W( K, r+ U: F) j! X/ t
20.1.2 PS库的表 333* O! z5 u3 g1 `/ [2 ?) D0 v

4 F- T( H. s( q20.2 SYS 库 3359 h5 l4 _+ m1 \6 h9 L
8 f, k- Q* j2 _- B; A
20.2.1 SYS库的对象 3358 H5 _) x/ A+ T: R
" x3 G+ P" q; O
20.2.2 SYS对象的实际应用 3360 Q" E* ^, G2 X

6 g7 W! w* \0 Z' j: i2 q. f7 ?20.3 小结 340
; K+ ?- Z  v$ w$ y
) W4 k" V& O, J第 21章 故障诊断 341
8 V3 h3 G. `! t0 F/ J6 U1 {; y( u% ^
21.1 故障诊断和处理的原则 341' R+ [0 m6 {8 \. M- S5 a6 E& ]! m

/ f9 D* A8 S7 g8 G21.2 故障处理一般流程 343  B( D+ n0 D  a% H: H
+ _) o! ^# p, i' P
21.2.1 故障发现 343! G8 u9 ]' Y0 p+ i0 C( A
# `2 H3 K- p! V
21.2.2 故障定位 345
3 H$ U9 x2 g4 V+ I) i5 U: Q
1 Z: q- p1 ^% R. p21.2.3 故障解决 346+ {+ d0 [& i% b# e: B* N( k
$ a$ N; H, c1 U2 Z
21.3 典型故障案例 349
* p# S, B4 N2 T" y. b5 _% u. P' C" ~, k
& \9 a6 I/ `+ {% t* L9 N21.3.1 案例1 3495 J6 j6 f& K# s! T
7 f: f* Z- D- J1 I. Z
21.3.2 案例2 3535 L. V; X- ]& u2 p9 Q
8 N/ `" o. X" A9 p- o
21.4 小结 356- W( f) t: w2 w0 g3 Y0 B8 e

' v- `! B+ }# Y/ M: \" d第四部分 管理维护篇% ^9 f* z" ?% d6 p  R
- {6 q) t' T1 f% x+ ~" Y+ U; e
第 22章 MySQL高级安装和升级 358. D& U* T9 H  }3 [
$ V; W4 W5 V; b; U( t, K
22.1 Linux/UNIX平台下的安装 3588 K2 ]: U3 Z! E9 [
! L1 {9 x0 Z5 F+ e
22.1.1 安装包比较 358
! Y7 |: ?& G' e6 Q* R! c9 k
' j' d( m0 }8 R6 q8 x9 j( W22.1.2 安装二进制包 359
, B* P4 v7 B; W& W% k' f! z& ^9 N
9 M, a& }0 v3 ?  H: R7 b22.1.3 安装源码包 359
/ a% k6 @; R/ k$ Y; Z
/ f3 s: [) u  I5 @22.1.4 参数设置方法 360
  B7 q7 ]* |8 j0 o- Q
/ v/ [1 M. i3 Q; `: D22.2 升级MySQL 361
& v3 w1 u  N8 @1 x6 l- c7 o0 ~& O8 c$ P
22.3 小结 363
2 z: r4 P6 j  H7 N
1 q; L: Y* }+ t$ u* D2 a$ Z第 23章 MySQL中的常用工具 364
0 D4 c! Y% p% M; q+ }' i& Y& G
4 m0 S3 T% k" g7 D0 U$ }23.1 MySQL官方工具 364
# m# H: w7 l0 F$ c0 r& s- E
+ ]! i# s- l- k) q0 g4 q: o4 P23.1.1 mysql(客户端连接工具) 364- p7 t, L& J' K4 ~; W7 }+ E& T

' F% S! `1 |8 Z  G23.1.2 mysqladmin(MySQL管理工具) 371
9 k! ~# A1 V& d8 ^7 I' u" G7 @
5 ^) C( k, \  [" K$ Z2 _+ }* D8 N23.1.3 mysqlbinlog(日志管理工具) 3719 U" q* k) S$ H% |& X" ^8 @  T( f
0 C0 ~% X; f9 j4 y) |
23.1.4 mysqlcheck(表维护工具) 378. ?4 k/ I: B) l1 B! @
$ W, A' k% b3 D  L/ ?7 g
23.1.5 mysqldump(数据导出工具) 380$ K* J6 C3 n2 ^5 |- P4 B* |* L/ `
; v% m# m: H# K; \
23.1.6 mysqlpump(并行的数据导出工具) 384) e. t$ M' E+ z$ Q
7 F( j5 x- J8 n5 r! c/ E9 p
23.1.7 mysqlimport(数据导入工具) 385- L; p. Z7 D' J- m, V; Q9 [

$ N& Y" b) l! o' ?# I23.1.8 mysqlshow(数据库对象查看工具) 385
" H# M3 L1 x# L9 t6 \5 y- C. q* T/ P/ a: H% k& G3 R1 J
23.1.9 perror(错误代码查看工具) 387& H8 t0 Z1 N$ u5 j3 c

. b5 }- b% ]$ V23.1.10 MySQL Shell 387, y% Z3 y& n! }9 C2 F% l8 l
7 T5 Y+ f; N9 i
23.2 Percona工具包 390
5 w# v3 l, Z! P  B, V1 ^+ t0 S2 k! N( u3 ^. S5 @8 |
23.2.1 pt-archiver(数据归档工具) 391
6 ~) K. A* i0 f4 ?/ j7 ~
/ g( f# K9 W4 K" H( f+ X9 o23.2.2 pt-config-diff(参数对比工具) 393; q4 N: H6 p9 G* b

& w7 n' j. e5 i9 h$ A* s, R) C7 ?23.2.3 pt-duplicate-key-checker(检查冗余索引工具) 3942 M3 Q. ^- n2 x/ u
" h; H. d2 ?% O
23.2.4 pt-find(查找工具) 395
9 y( b* }, H# C* q% S$ b9 s3 Y6 M# ?" y5 p. V+ F
23.2.5 pt-heartbeat(监控主从延迟工具) 395/ |7 i5 j+ f# r( ]% b" U, [+ D4 n

4 P3 E, Y! }2 G( c8 C7 |23.2.6 pt-kill(杀死会话工具) 397- j5 r2 [& M8 J4 r
! V- S# I6 \. N; ?
23.2.7 pt-online-schema-change(在线修改表结构工具) 397
# f+ e7 a0 e' D, f: ]) @7 s9 Y7 H: ^; F5 C( x
23.2.8 pt-query-digest(SQL分析工具) 399
* T4 k' R6 I! U9 d6 f  p. ?2 O9 l4 b; m8 N# D3 T
23.2.9 pt-table-checksum(数据检验工具) 401
; O0 c% h# U. @  a% i; d' Y( m1 O6 [3 ?
23.2.10 pt-table-sync(数据同步工具) 402
7 a) a# t8 W* Y8 N) @
# l7 E6 E! {7 u. D- P  b23.3 小结 403! Z! k; [% ^  q

/ R# n$ @6 u4 |" {4 a第 24章 MySQL日志 404
3 K5 X# G- \8 r" Q5 V
# o" I; t3 l) ~/ k24.1 错误日志 404
% X+ N% N9 }) Z( ?9 R6 j, a& ^4 U5 Z5 N. I+ V4 g; ~2 S
24.2 二进制日志 405  W) V, [9 b" q! }) f* z3 m
$ Z9 M+ [+ b  z( d9 B* l
24.2.1 日志的位置和格式 405: ]% X1 R# W, S

7 g, _- q  U( |6 S! c* p24.2.2 日志的读取 406
$ u( o3 S/ k8 L1 k1 [( {$ }2 J2 [' V7 s
24.2.3 日志的删除 407# q9 e1 R$ A" N
( @3 r# [; ?$ r% ^$ Q; E4 N
24.2.4 日志的事件 411
, x! \/ y- L1 m& T+ l
% f* U% a# r  d; k2 _: B1 f24.2.5 日志闪回 412
1 Z8 V' f* j# ~1 B( O6 p( h' K
) U6 q9 K) Q* M  U# j7 ~24.3 查询日志 415
2 }& w5 p: N0 m* B4 e
7 i9 T! r/ w+ {$ s' |+ s24.3.1 日志的位置和格式 415: H# C/ V$ }4 E6 W: y0 _
3 Y  Q( r5 p: ~. J+ d
24.3.2 日志的读取 4162 O  J) A7 ^5 U4 ?" r
, N! f# V# C/ N  L" A. l. r5 Q5 M& f
24.4 慢查询日志 416
7 }+ s6 @3 D' X4 I7 B# a/ e$ ^, Z7 |/ E7 V) F" [
24.4.1 文件位置和格式 4160 B  J' P8 P% ]3 D* l: O; }  r

6 {  R- S2 p' W  ^. o2 D24.4.2 日志的读取 417
; {) T8 o% |2 t- M
3 ]5 b0 R5 x, T* Y7 r8 \- t24.4.3 Anemometer简介 4191 f8 }2 B- R/ ?; n' f$ F

- D7 d; c& t8 j& g3 N# r! @24.5 小结 421) w0 S& j4 z) z; D; x
. D7 D% {: B$ S
第 25章 备份与恢复 422
6 @; ~5 r5 V2 x" t
  z* G; o6 R/ u5 p  K" b25.1 备份/恢复策略 4226 W# y* }# }% t% f5 o
+ N7 f9 V. ^5 r6 l
25.2 逻辑备份和恢复 422
" N- c8 l! m; O# h+ x7 E# l( N* |8 `+ k; G
25.2.1 备份 423
) t6 y* A. |. V6 J! r" N
( R* @7 I5 @- y5 p! Y* p$ C25.2.2 完全恢复 425
, r! ?, m$ i! E( ~" q
# D" `) U4 p& k' @1 T) t25.2.3 基于时间点恢复 427) A0 Z# Y7 h" v% t

/ T- i) _" n5 {' ^25.2.4 基于位置恢复 427. g! e7 ^( h" g" z" C2 ^, A* }$ ^

, U% A6 J" G/ K) \1 b2 C  w25.2.5 并行恢复 427
8 e! Y6 w' E& u) E( m
5 c$ X# k  t+ w; u, s( s: \, S+ Q25.3 物理备份和恢复 428
. b/ W2 g4 l% y0 v: ?, l2 Y- p" W: y! ^! _# G- y( b8 v% w# M" \
25.3.1 冷备份和热备份 428
2 i1 N# l2 ]( s8 U2 e9 x$ E! f) c8 Q; ~
25.3.2 MyISAM存储引擎的热备份 429) `  F0 C- R# I4 o& m8 q

- X. U& c  ]9 Q, n6 q4 s: F25.3.3 InnoDB存储引擎的热备份 429. v$ v- c; k3 k
( |3 _! z" x5 t4 j$ @" C
25.4 表的导入和导出 4388 M+ c. y, _' \( ^2 Y

* s6 a- [; x8 c7 w% J! r25.4.1 导出 438
. Q6 @2 T# E4 ~6 ~/ {, ^
8 w1 _  U$ ?3 S8 {' a25.4.2 导入 442* W- ~6 t$ V: [) C* \, T0 a

+ P/ Q1 N' l7 ~5 Z25.5 小结 445
/ m2 w: X8 K+ c: p! d; R' G- o% ?/ E0 c0 A+ H
第 26章 MySQL权限与安全 446
% d$ C+ L9 Y- c% N- ^# ]3 M4 U
* ~9 X( p' b2 B26.1 MySQL权限管理 4460 H$ h, U) A$ t# ]

; \1 m. k: u# |7 J0 [3 x7 U7 U0 v26.1.1 权限系统的工作原理 446
& m! w& l1 U! F1 D) q
* q. L" o3 {+ S3 D: ?26.1.2 权限表的存取 446
1 O) G' j0 t" N" R# O0 a( Z6 O4 a$ v' Z1 z/ }* K9 A6 y+ }
26.1.3 账号管理 4493 S0 ]! w( r9 Z$ I/ k  k* ]# v
0 @$ T4 q, E4 l, g5 M
26.2 MySQL安全问题 461/ _' y9 X5 h7 @1 w8 I
" W' E! z0 w1 D
26.2.1 操作系统相关的安全问题 461
7 R1 n# w3 g- q( i" h4 |
1 D% d2 W1 |& N! O$ j9 S26.2.2 数据库相关的安全问题 4632 c9 R9 [3 V. p9 Z5 U" `

8 G) D9 |8 k+ |  p3 R. `26.3 其他安全设置选项 471$ o1 Z" x% K) b+ T: Z  t
, E. I  b/ e* D( Y" P" t8 e8 \
26.3.1 密码插件 471
# O, F( v0 i1 v9 f! Y3 `! Q& ?5 x1 Y3 J3 O$ [2 i, H; P' _
26.3.2 safe-user-create 472
* {; u8 f( X$ Q! j9 x
8 K4 x+ X+ m" `9 a8 S8 P9 k, T  b26.3.3 表空间加密 4731 Z4 _- I: n" \9 ?2 K" w

" V! i9 A* E& Q# @5 H& U% v" E26.3.4 skip-grant-tables 4746 q( c% v% p  Q. x
$ e/ z  n! R4 j2 D, N) ~
26.3.5 skip-networking 474
7 t6 B2 o7 C8 G# p8 F; g* l- Q; Z9 ?* d; c6 ?1 A$ j5 _+ ~( B
26.3.6 skip-show-database 475
& w7 j; _5 U* q) |: J/ z! |/ q& @2 ]- ?4 k7 }
26.4 小结 475& t* e) [$ {# H; X/ v+ J

6 S/ L% f+ x3 m- R& u第 27章 MySQL监控 476
: I- P: Z9 n$ P. U1 @  T2 r. O; q% o0 s4 y( z& q
27.1 如何选择一个监控方案 476
  [/ k- C5 U+ u! v$ ^/ W
* |5 [. @) U! L: y# ~  C0 t27.1.1 选择何种监控方式 476
. b8 h0 p+ I( E" }' R
5 j4 ^* J6 M3 K% I/ ~$ M27.1.2 如何选择适合自己的监控工具 477
6 P+ l7 ], _' Y3 N% ?# d, Y2 D7 ]' |: P: P1 \
27.2 常用的网络监控工具 477
" W  r8 B6 }2 h) v: P1 s- b3 C3 D. Z  o! E4 T9 s+ D
27.2.1 Open-Falcon简介 4773 y: h5 ]2 a; Z; U5 l

; @+ c5 a# Z) n# s27.2.2 Nagios简介 479. @1 c% T) V( Z
! n" O( m: V% E' o- S
27.2.3 Zabbix简介 4802 R$ j$ \0 G0 }+ b. V" Z, C' I

9 X# J( X! d, S* k1 a& B27.2.4 几种常见开源软件比较 481# {. G' O/ o+ U5 b( M" W) U4 u

$ ^" t$ U% O+ |! S8 X27.3 Zabbix 部署 481
! E4 |$ C9 t0 R8 e0 l* A. a1 A4 t: i8 _4 _( [* A
27.3.1 Zabbix Server软件安装 482
; _+ S/ k: ~2 P( A3 y! \. g, Z: m
" n" o9 R* V% L2 [  h27.3.2 Zabbix Server配置与启动 482
3 M& s$ m# x0 k0 j/ h
! P, k6 o) Y# z- ?: }2 A27.3.3 配置Zabbix Web服务端 483
, u8 E! S3 q1 P2 ]$ H) P- {- c* [- P" J% o1 ~: n1 i% b
27.3.4 Zabbix Agent安装和配置 4856 Y' L+ T3 Q+ }8 X
, q6 K% O- j2 i( h7 Q3 V
27.3.5 PMP插件介绍和部署 4863 L, N2 z& X( F5 m
4 O7 {4 h. X1 p. I3 S0 u3 E: ^" ?9 V( |
27.3.6 Zabbix Web端操作 4896 Z/ V1 t" S5 ~2 _+ y: L# ?2 Y5 T. w3 E

, v8 {8 J. |& Z. Q  D27.4 性能医生orzdba 491
$ W# y$ }, ]- B0 ~! u% p: H9 ~, g: [' n9 l+ e! N% J: M) t* x
27.4.1 orzdba安装 491
- {: O$ o1 R' ?3 R+ J1 M- ^  B+ R) J
27.4.2 orzdba使用 492
1 u; H0 @9 z, C; y& K4 m, ]
" {' K' \# y5 P6 r27.5 小结 492
% |: w* F# w9 k/ E5 o% ]+ g5 k0 w  u+ C- Z4 l% d5 K  E
第 28章 MySQL常见问题和应用技巧 493+ P2 K3 j( A8 N9 H- K! \9 X& M- _
9 n' Z8 q! C& D7 n  i
28.1 忘记MySQL的root密码 493
, u: ?) a' ~& u' M9 \2 p# ~6 D3 w4 \) T4 Q/ N* J; k
28.2 数据目录磁盘空间不足的问题 494
+ y! a& E  f# W, K3 j/ o
$ k. l+ a) ]2 U! m" X4 d8 [, ~/ n' y28.3 mysql.sock丢失后如何连接数据库 495. v  @* G) B1 r

3 J. c( Y3 z" f28.4 从mysqldump文件抽取需要恢复的表 496: J( B% k, v4 z
( g0 q, `" N/ }* d" ^' A
28.5 使用innobackupex备份恢复单表 497: j3 {* D3 L' N+ m

* t' d1 O, Q' U6 w( \28.6 分析BINLOG,找出写的热点表 498
9 r+ l7 Y* d6 r9 g  c3 E
. \; b: j: `* T8 N; u0 e  |) b) L; A5 Y28.7 在线DDL 499
% l: e0 n+ H# U1 ^1 W3 o% W  l$ [9 T) C& ?& ?% n0 k8 ~3 d+ z
28.8 小结 502: Y1 T7 g* p2 z, `* b- d4 k
# ~3 Y6 Q; W! A
第 29章 自动化运维系统的开发 503
# E2 a: `* o$ M7 x" t3 _$ Q
0 \( S3 Q9 A3 A29.1 MySQL自动化运维背景 503. b  A) M+ U5 e" j
. @( W' C. Z- A2 G6 f
29.2 CMDB系统搭建 504  t1 [3 k) p, W1 |& y& h7 g

+ [& x( ~. d/ i: T3 U29.2.1 CMDB数据库 504
0 D6 `: P( U: O) X
& I4 i; A* z, h: p29.2.2 批量管理系统 505
! U. \( q* P5 ?: U0 {+ _9 S1 t
29.2.3 后台API 511
2 R" p/ X! m+ O" T) \
! Q. ?  t7 s+ F7 a1 r3 O29.3 任务调度系统 515! O- y2 z9 p/ b6 ]2 k0 R7 H

$ l0 Z+ c; v1 z! m29.3.1 Celery安装 515
% n( Z2 L+ ]/ O! f# D4 }
" X$ }* u7 x# M- ^5 s7 W" ^( M& M+ G29.3.2 Celery任务部署 5165 P# p* Z6 o. r% W' ^/ y9 A

* n. v) m3 Y/ G( x' P, Q4 @29.3.3 Flower监控 5182 u& Z- M5 T! V6 z# C' F6 W
% K& K) O: O7 e2 q
29.4 客户端搭建 519: \5 M6 a* J: V/ N) n# R+ h
6 {1 W" {2 d6 L0 i+ l1 D) Z
29.4.1 Vue.js简介 519
, |' n" P8 s; C5 e, x, l, Z' [5 \) G* J. [3 S
29.4.2 Vue项目搭建 5203 w. r: P! e5 Q7 x+ c

5 y) c5 A5 X0 G; w2 u29.5 自动化运维平台实战 525& u+ u) }: ^6 w

& E$ ?- Y$ _2 M) O0 Y7 a29.5.1 搭建CMDB 525
- B# [7 u6 j* z
1 L1 g* Y0 V' V# b* D7 l" F29.5.2 搭建任务调度平台 528" X" o2 M) y; h) L8 _
& C7 F' k6 \- w' @
29.5.3 搭建客户端 529$ u0 t/ O+ f% p* V

: h% g& s4 ~5 T* z29.5.4 项目演示 532
( s" t. M- n9 c% R8 d
/ r+ y5 ^" w( P' `  O: N' f$ Y29.6 小结 532+ V# k. D5 g& M5 l8 m/ a

/ `( S9 o4 v6 H2 ?第五部分 架构篇( }! k3 Z+ I/ E3 ?
! e* b# P" M, v* k: P7 }: Q
第30章 MySQL复制 534+ p5 q5 Z- q% F! j- a1 T+ L; |

& e8 X' M" F: {/ ^( z30.1 复制概述 534, n! j$ K0 g% X- @

$ ~2 Y- B7 H, I: o% E6 Z30.1.1 复制中的各类文件 536" [6 ?; v2 ?: C' X0 }% d; @
' }% C/ M2 |0 m# t6 {
30.1.2 3种复制方式 537
5 s" T/ g- [* U% e  U
7 ]( }# F% r, Y6 t% @. t30.1.3 复制的4种常见架构 540# x) F, B* P( `" T7 Z

; T; ?8 h# u& K, H30.2 复制搭建 543
. ]- h0 b% K" U" D# K+ l+ i; Z" u- _, ?; F7 |5 n! o. f
30.2.1 异步复制 543* C, u# H% a$ b4 U  T
2 z- r* J. i( X) s9 z! t& ~& R& M
30.2.2 多线程复制 547, U6 g$ A, e7 L& Z/ A

. ~! \* i/ u2 I" t0 W! P3 C30.2.3 增强半同步复制 5530 i$ O! |! z2 d1 P
0 L! N# R* C6 U5 q9 s. S, S* [
30.3 GTID(Global Transaction Identifier) 558
( Z& R8 g6 g+ x3 B  s6 p
1 }6 L) I9 e4 {% J30.3.1 格式与存储 558
+ b. S$ `. m5 [; T' d" _2 T1 I) e9 m7 o4 ~: p0 b* o1 r! L
30.3.2 gtid_purged 561# a$ T( q, g) p

5 l9 S! f+ M9 a6 h( D) C8 X30.3.3 复制搭建 565
+ E0 s8 }9 z) H$ s; A& t( i  O. L3 f& f1 [! o+ a" o- N% ~
30.3.4 主从切换 571
- F+ h, q# U6 O1 {
! Z3 ?% U, i; `# S+ I* a30.3.5 常见问题 572
2 O0 m0 w2 M# ?8 [/ `# q- n$ Q! v$ K- F% |; P. Y
30.4 主要复制启动选项 576
& n$ {# C4 l: u# |
) A( D, y0 N6 _  ?" z/ A" ~. Y30.4.1 log-slave-updates 576
% K# V- D- O' s$ {& J1 a( _: x2 k6 C
+ @" Q0 l1 v- I0 }" z; Q0 R( X30.4.2 read-only/super_read_only 5766 V( W7 S; Y8 s! T9 c

- g/ n3 B, r8 Z# ~30.4.3 指定复制的数据库或者表 577
" P- m. |0 D: A/ V9 m3 t' ?( p* f% z+ |" U2 h5 J3 u8 i  @; ~
30.4.4 slave-skip-errors 5799 H# x! g4 d6 }; f- I6 ~
, k6 E2 p) P7 h# p: m% m. |- d
30.5 日常管理维护 5793 u3 n" F8 I/ o, P/ s+ s

4 v4 I/ E( i6 j" ?9 `/ c5 i( p30.5.1 查看从库复制状态和进度 579
2 h" J$ A: E; a' r5 |; w- Q& X* F& ^
30.5.2 主从复制问题集锦 580  _! M+ C4 ~" h

$ F3 G& i, f4 H& h5 X, R; w( a30.5.3 多主复制时的自增长变量冲突问题 582
5 y! Q4 c: ^% ?$ x# \2 W3 C$ ^. [& c: q. o: N) A
30.5.4 如何提高复制的性能 584
5 C: Z# k+ {0 C5 S3 h
* A6 W0 _+ M+ O' n& `30.6 小结 588
* h9 i2 @2 b$ Y, Y5 [" a* k
; F* S( U8 }  i' m4 W, a. M8 l第31章 高可用架构 589
$ \) J2 s4 K/ J9 X2 e0 c+ d- [$ N7 B* @7 Q; G! c& C8 A
31.1 MHA架构 589
2 B; b0 l3 r# \- ?1 {& u/ g. |4 Q
7 x5 `5 D9 G; \! O. b4 K" k31.1.1 安装部署MHA 5910 R( L% T6 z3 L1 O

, x8 O2 G) s7 v/ E: M31.1.2 应用连接配置 598
/ [* {; |& t5 s
+ Q+ m4 I% g2 z5 U+ V& ?7 ~0 e31.1.3 自动failover 605
% `9 t6 d* b0 w* A+ w5 Q/ n
  a$ @) ~% {! g$ V31.1.4 网络问题触发的failover操作 614
& A* p! ?2 r6 i. b' L: ?3 `: q( V6 Y% X! }5 m( H" \, V: U# c
31.1.5 手动failover 614
& }; A# S8 e" {2 P
9 \1 @! B; Y: N31.1.6 在线进行切换 615
- B9 J- K# G4 `! i  C( A; {5 R! I! ^# W! f
31.1.7 修复宕掉的Master 617
  N2 k+ v6 A3 B2 Q9 W# @' v* i; l8 s: [5 l$ @. u
31.2 MGR架构 617
$ c8 r1 a1 M) w1 y# ?+ Y* O/ M( O# n* j' L8 R2 V6 a
31.2.1 安装部署MGR 618
2 G4 j( `+ P$ `' g- f5 s0 o: R  |& T& M0 g* r# h6 P/ T4 n9 z
31.2.2 监控 625+ C) r5 w: y  @* _6 r) Q  W
' t8 @: a& b# a- \. ~. u
31.2.3 primary成员切换 626/ k3 S) j3 r( h+ E& F& b
% v. s6 V7 l- T/ p/ h* n
31.2.4 重要特性 628- T+ R- W. Y* V: y" E* E/ m; G
. E) _# ]5 D; i. U1 ]' `4 M
31.2.5 常见问题 6292 q. q/ @# t. W( C9 J
4 Q+ t( i2 u& f; ]( `3 K% e2 s+ t
31.3 InnoDB Cluster 636
& e* d; a! n2 v% |8 \
5 ^: L% g6 {6 v- M) |31.3.1 安装部署 637
, K% q5 v, q  g' D$ U" x3 @7 w; t4 s. O. _9 S
31.3.2 初始化MySQL Router 642% J( [0 L" l  F

8 @+ d1 h' I& z/ ]2 B, M7 S31.3.3 集群Metadata 643
2 Z; Y" ~2 C; o' _* B
- K, b3 |8 @8 |31.3.4 集群成员角色切换 644
' s- \2 J  y( z; m' e$ }; S
( U8 y7 l$ \4 S! R2 L% I; y1 f( E31.3.5 集群删除/增加节点 646) W" z0 p/ J. d4 V: w; p9 a1 a( Y
6 D' B$ }( M/ X. Y2 f$ O2 c' X
31.3.6 重新加入节点 648
  _! u& `$ [0 V' r( p  S/ I' d4 q9 G* F
31.4 小结 649' w/ r' X' q: ], ?
, k9 u3 R. z5 w$ F2 c! l9 H
第32章 MySQL中间件 650
$ Z, C6 w' g& b) r/ g" I( i- d
+ l. J5 k5 e: O& H32.1 MySQL Router 6503 H* s2 m1 W( g1 G2 l, E/ [
" q7 i7 u( i4 ]& b9 B6 |
32.1.1 MySQL Router的安装 651
. b: p) R0 o7 c) W( @: ?& d& x4 |- s- ~  F% ]3 v
32.1.2 MySQL Router的初始化 653, d: q3 j; Q+ u& \/ C+ q' P
4 `( Y& `2 D9 Y* I3 u/ R
32.1.3 MySQL Router策略验证 656
: p% I' Y8 Q& r3 ]4 ^& |" g( R/ j# i
0 e" s& J9 E! ~' o+ C7 Q32.2 Cetus架构 658 java8.com
" U) p$ Y* Y: }! N( X& z9 ]. I* A0 ?. U: D9 G. [
32.2.1 Cetus的安装配置 6590 Q0 r+ J7 I4 _0 z: T' M
/ E& ^/ F+ m( ^% b$ W; }: o! p
32.2.2 Cetus的使用 670
8 k& _1 ^7 d* o
. S2 F2 \. f: t5 N32.2.3 Cetus日志文件 674
8 K6 n! Z+ V8 c0 x
9 a; I+ f' O6 [# D! H32.2.4 Cetus的后端管理 675
! S4 ?6 j2 [1 M* j; Q( U3 [" A9 L6 y' O! J+ a
32.2.5 Cetus的路由策略 678/ j5 h" D2 g+ z: t# l" \
( {$ R3 Y) @) u8 P. O$ F8 {
32.2.6 常见问题 681
0 z6 n. n( x, c6 H! P) d* N( S/ l; f7 C. \( S: H5 l0 V7 ]
32.3 小结 682$ Z- W: p! E, E4 I$ @  [# ^( g

' Q+ Y4 z0 L/ L/ `/ v$ K5 M* n. `

. v6 g" Z9 n! g: X! w
百度云盘下载地址(完全免费-绝无套路):
游客,如果您要查看本帖隐藏内容请回复
. R+ r! [' O9 M3 C
, X8 M/ n# g1 c& G$ A
( z; g$ x% i8 e) p$ ^8 T# r6 ^
2 U! v/ c  u9 i4 q, @

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
关注下面的标签,发现更多相似文章
分享到:

回答|共 30 个

聊聊娱乐圈那些事

发表于 2024-4-8 14:29:25 | 显示全部楼层

免费资源 真的无套路

尘峡觅乐徒纯

发表于 2024-4-8 15:11:17 | 显示全部楼层

我来白漂了 多谢

委座

发表于 2024-4-8 15:51:55 | 显示全部楼层

不错,好资源

翁长奎

发表于 2024-4-8 16:33:25 | 显示全部楼层

java吧 真给力

知行与执行

发表于 2024-4-8 17:15:17 | 显示全部楼层

我来白漂了 多谢

福中堂

发表于 2024-4-8 17:57:24 | 显示全部楼层

不错,好资源

东随坤缘

发表于 2024-4-8 18:38:03 | 显示全部楼层

真的免费下载 难得

091217

发表于 2024-4-8 18:42:54 | 显示全部楼层

深入浅出MySQL 数据库开发 优化与管理维护 第3版 PDF 电子书 X0211 [修

悠然心

发表于 2024-4-8 19:25:48 | 显示全部楼层

我又来了 白漂开始
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则