mysql数据库管理实战 甘长春_MySQL数据库管理实战

第 1章  数据库入门1

1.1  数据库的发展史  1

1.2  数据库中数据存储形态(数据模型)  1

1.2.1  层次(阶层)数据库  2

1.2.2  网状(网络)数据库  2

1.2.3  关系数

第 1章  数据库入门1

1.1  数据库的发展史  1

1.2  数据库中数据存储形态(数据模型)  1

1.2.1  层次(阶层)数据库  2

1.2.2  网状(网络)数据库  2

1.2.3  关系数据库  2

1.2.4  面向对象的数据库  2

1.3  为什么应用开发离不开数据库  3

1.4  SQL介绍  3

1.4.1  SQL简介  3

1.4.2  SQL的特点  3

1.4.3  SQL的基本语句  4

第  2章 MySQL基本管理  5

2.1  MySQL的客户端与服务器端  5

2.1.1  MySQL客户端与服务器端的概念  5

2.1.2  MySQL客户端  5

2.1.3  Navicat for MySQL的安装  5

2.1.4  运行Navicat for MySQL  7

2.1.5  Navicat for MySQL的连接与使用  7

2.2  MySQL服务器的启动与停止  9

2.2.1  SQL的组成部分  9

2.2.2  进入MySQL命令模式  10

2.2.3  创建数据库  10

2.2.4  数据库命名规范及改变当前数据库  11

2.2.5  删除数据库  11

2.2.6  创建数据表  12

2.3  删除表  13

2.4  安全复制表  13

2.5  安全修改表  14

2.5.1  新增字段  14

2.5.2  删除字段  15

2.5.3  修改字段  15

2.5.4  增加主键  16

2.6  MySQL命令行中不能输入中文的解决办法  16

第3章  MySQL账户权限设置  17

3.1  了解MySQL权限系统  17

3.2  MySQL权限操作  19

3.2.1  GRANT命令使用说明  19

3.2.2  权限相关操作  20

3.2.3  权限操作样本  23

3.3  丢失MySQL ROOT密码的解决方法  25

第4章  MySQL数据库表列的数据类型  29

4.1  数值类型  29

4.1.1  整数类型  29

4.1.2  浮点类型  30

4.2  字符串类型  30

4.3  CHAR与VARCHAR类型区别  30

4.4  列类型属性ZEROFILL(填充0)  31

4.5  列类型属性UNSIGEND(无符号)与SIGNED(有符号)  31

4.6  TEXT与BLOB类型的区别  32

4.7  ENUM与SET类型处理  33

4.8  SET类型的处理方式  33

4.9  网站中常用数据类型介绍  34

4.10  DEFAULT(默认)使用技巧  35

第5章  MySQL表结构的维护  36

5.1  表结构的创建  36

5.1.1  MySQL表结构创建语法解释说明  36

5.1.2  MySQL表结构创建实例  40

5.1.3  MySQL表名修改  43

5.2  表结构的维护  43

5.2.1  MySQL添加字段  44

5.2.2  MySQL删除字段  44

5.2.3  MySQL调整字段顺序  44

5.2.4  MySQL删除主键  45

5.2.5  MySQL增加主键  45

5.2.6  MySQL重命名列  45

5.2.7  MySQL改变列类型  46

5.2.8  MySQL添加索引  46

5.2.9  MySQL添加唯一索引  46

5.2.10  MySQL删除索引  47

5.3  MySQL修改库、表及列字符集  47

5.3.1  MySQL修改库字符集  47

5.3.2  MySQL修改表字符集  47

5.3.3  MySQL修改列(字段)字符集  48

5.3.4  MySQL修改字符集的有关注意事项  48

5.3.5  MySQL字符集的查看  48

第6章  MySQL的索引  50

6.1  索引概述  50

6.1.1  关于索引的建议  51

6.1.2  MySQL中使用索引  51

6.2  UNIQUE实际开发中的使用方法  52

6.3  主键(primary key)使用方法  53

6.3.1  主键的作用  53

6.3.2  主键的创建方法  53

6.4  AUTO_INCREMENT自增使用技巧  54

6.4.1  AUTO_INCREMENT的属性  54

6.4.2  使用AUTO_INCREMENT时的注意事项  54

6.4.3  关于MySQL的AUTO_INCREMENT问题分析  55

第7章  MySQL的基本查询  57

7.1  SELECT的语法结构  57

7.1.1  语法结构说明  57

7.1.2  语法解释  58

7.1.3  关于MySQL迭代  59

7.2  SELECT准备  59

7.3  SELECT、DELETE、UPDATE的WHERE子句  63

7.4  MySQL查询、删除、更新WHERE子句AND与OR  65

7.5  MySQL的CONCAT函数  65

7.6  GROUP_CONCAT ()分组拼接函数  66

7.6.1  函数使用  66

7.6.2  关于GROUP_CONCAT函数返回值长度限制说明  67

7.7  MySQL的DISTINCT使用方法  67

7.8  MySQL的IS NULL与IS NOT NULL使用方法  68

7.9  MySQL的IF()与IFNULL()使用方法  68

7.10  MySQL的ORDER BY子句的使用  70

7.10.1  ORDER BY子句第 一种使用方式  70

7.10.2  ORDER BY 子句第二种使用方式  70

7.11  MySQL的LIMIT关键字使用  71

7.12  MySQL的BETWEEN...AND...关键字使用  71

7.13  MySQL的IN关键字使用  72

7.13.1  IN的普通用法  72

7.13.2  IN的子查询用法  72

7.14  MySQL的EXISTS关键字使用  73

7.15  MySQL查询SET数据类型的方法  74

7.15.1  函数FIND_IN_SET介绍  74

7.15.2  将函数FIND_IN_SET运用于SET类型数据查询  74

7.15.3  将函数FIND_IN_SET运用于排名  74

7.15.4  FIND_IN_SET与逻辑运算操作IN的区别  76

7.16  MySQL LIKE与NOT LIKE用法  77

7.16.1  LIKE的通配符  77

7.16.2  NOT LIKE  77

7.17  MySQL REGEXP正则的使用  78

7.17.1  REGEXP的运算符  78

7.17.2  REGEXP的通配符  78

7.17.3  REGEXP实例  79

7.18  MySQL RAND随机函数使用  80

7.19  终端执行SQL的方式  81

第8章  MySQL数据库的字符集设计  83

8.1  MySQL的二进制与非二进制字符串  83

8.1.1  MySQL的二进制字符串及二进制类型  83

8.1.2  MySQL的BINARY、CHAR、VARCHAR的区别  86

8.2  MySQL字符集设置与常见问题处理  88

8.2.1  基本概念  88

8.2.2  MySQL系统变量  88

8.2.3  MySQL字符集支持的两个方面  89

8.2.4  MySQL默认字符集的查看  89

8.2.5  MySQL默认字符集的修改  90

8.2.6  MySQL字符集的相互转换过程  91

8.3  MySQL常用字符集选择  92

8.4  MySQL字符集与校对规则  93

8.4.1  简要说明  93

8.4.2  详细说明  93

8.5  MySQL各字符集下汉字或字母所占字节数  95

8.6  MySQL字符集校对规则实例详解  96

8.7  MySQL数据库、表、字段字符集  97

8.7.1  创建数据库、表、表列指定字符集  98

8.7.2  修改数据库、表、表列的字符集  99

8.7.3  查看数据库、表、表列的字符集  100

8.7.4  查看数据库、表、表列的字符集的排序规则  101

第9章  MySQL的增加、删除和修改操作  103

9.1  MySQL增加、删除和修改操作的严格模式与宽松模式  103

9.1.1  严格与宽松的概念  103

9.1.2  严格模式与宽松模式的开启与关闭  103

9.1.3  严格模式与宽松模式举例  104

9.2  MySQL的增加数据INSERT  105

9.2.1  INSERT语法  105

9.2.2  INSERT语法共性说明  106

9.2.3  MySQL INSERT应用举例  107

9.3  MySQL的更新数据UPDATE  108

9.3.1  UPDATE语法  108

9.3.2  UPDATE实际应用举例  110

9.3.3  UPDATE应用实例总结  113

9.4  MySQL的删除数据DELETE  113

9.5  MySQL的左、右外连接查询  116

9.5.1  左外连接举例  116

9.5.2  右外连接举例  116

第  10章 MySQL的流程控制与函数  118

10.1  MySQL操作符  118

10.1.1  MySQL算术运算符  118

10.1.2  MySQL比较运算符  118

10.1.3  MySQL逻辑运算符  119

10.1.4  MySQL位运算符  120

10.1.5  MySQL操作符的优先级  120

10.1.6  MySQL操作符举例  121

10.2  MySQL中的Boolean类型  125

10.2.1  Boolean说明  125

10.2.2  Boolean总结  125

10.3  MySQL的COALESCE与GREATEST  126

10.3.1  COALESCE()取非NULL(空)值  126

10.3.2  GREATEST()取优选值  126

10.4  MySQL流程控制语句  127

10.4.1  IF语句  127

10.4.2  CASE语句  129

10.4.3  WHILE语句  133

10.4.4  LOOP语句  134

10.4.5  REPEAT语句  135

10.5  MySQL函数  136

10.5.1  MySQL流程控制函数  136

10.5.2  MySQL字符串处理函数  138

10.5.3  MySQL数学函数  147

10.5.4  MySQL日期时间函数  152

10.5.5  MySQL其他函数  165

第  11章 MySQL的日期与时间  168

11.1  MySQL的日期与时间类型  168

11.1.1  YEAR类型  168

11.1.2  TIME类型  170

11.1.3  DATA类型  172

11.1.4  DATATIME类型  173

11.1.5  TIMESTAMP类型  175

11.1.6  MySQL的日期选取  176

11.1.7  MySQL选择日期类型的原则  177

11.1.8  MySQL获得当前日期时间  177

11.2  MySQL日期与时间函数实例  177

11.2.1  STR_TO_DATE()函数  177

11.2.2  DATE_FORMAT()函数  178

11.2.3  TIME_FORMAT()函数  179

11.2.4  UNIX_TIMESTAMP()函数  180

11.2.5  INTERVAL expr TYPE()函数  181

11.2.6  给日期增加一个时间间隔函数DATE_ADD()  182

11.2.7  两个日期相减函数DATEDIFF()  185

11.2.8  两个时间相减函数TIMEDIFF()  185

11.2.9  两个时间相减函数TIMESTAMPDIFF()  186

11.2.10  添加时间间隔函数TIMESTAMPADD()  189

第  12章 MySQL的分组与统计  193

12.1  MySQL COUNT()函数  193

12.1.1  准备工作  193

12.1.2  COUNT(*|n|空值|字段名)  193

12.1.3  DISTINCT与COUNT连用  194

12.1.4  GROUP BY(多个字段)与COUNT分组计数  194

12.1.5  CASE WHEN 语句与COUNT连用  195

12.2  MySQL MIN()、MAX()、AVG()和SUM()函数  196

12.2.1  准备工作  196

12.2.2  MAX()优选值函数  197

12.2.3  MIN()最小值函数  198

12.2.4  AVG()求平均函数  199

12.2.5  SUM()求和函数  200

12.3  MySQL GROUP BY分组  201

12.3.1  准备工作  201

12.3.2  GROUP BY说明  202

12.3.3  GROUP BY举例  202

12.4  MySQL HAVING分组统计结果的筛选  204

12.4.1  MySQL HAVING说明  204

12.4.2  MySQL HAVING示例  205

第  13章 MySQL的多表联合操作  206

13.1  MySQL多表操作基础部分  206

13.1.1  数据库的约束  206

13.1.2  多表查询使用场景  208

13.1.3  一对一、一对多表关系分析  211

13.1.4  多对多表关系分析  212

13.2  MySQL多表操作实例操作  212

13.2.1  笛卡儿积  212

13.2.2  内部连接操作  215

13.2.3  左外连接操作  217

13.2.4  右外连接操作  218

13.2.5  自连接操作  220

13.2.6  多表实例操作  220

第  14章 MySQL工作机制  229

14.1  MySQL多线程分析  229

14.1.1  调度方式实现  229

14.1.2  线程池实现  230

14.1.3  线程池优化  233

14.1.4  线程模式控制  233

14.1.5  InnoDB存储引擎的线程控制机制  234

14.2  MySQL的共享锁与排他锁  237

14.3  MySQL的表级锁、页级锁与行级锁  241

14.3.1  MySQL的表级锁、页级锁与行级锁的简要介绍  241

14.3.2  MySQL的表级锁、页级锁与行级锁总结  245

14.4  MySQL存储引擎和事务  245

14.5  MySQL的事务处理  246

14.5.1  MySQL事务的ACID  246

14.5.2  MySQL的COMMIT与ROLLBACK  247

14.5.3  MySQL的事务保存点SAVEPOINT  250

14.5.4  MySQL接受用户请求、SQL语句执行过程  257

第  15章 MySQL存储引擎  258

15.1  MySQL数据库引擎介绍  258

15.2  MySQL存储引擎的比较  262

15.3  MySQL数据文件存放位置  263

15.4  MySQL数据库引擎更换  264

15.5  MySQL数据库引擎添加与拔出  265

15.6  MySQL数据库引擎的应用场景  265

15.6.1  选择合适的MySQL存储引擎  265

15.6.2  MySQL存储引擎应用场景  267

第  16章 MySQL视图、存储程序  269

16.1  MySQL视图  269

16.1.1  为什么使用视图  269

16.1.2  MySQL创建视图  270

16.1.3  MySQL查看视图  274

16.1.4  MySQL删除视图  275

16.1.5  MySQL修改视图  275

16.2  MySQL存储过程/存储函数  275

16.2.1  MySQL变量的定义  275

16.2.2  MySQL SET与DECLARE声明变量  279

16.2.3  MySQL预处理语句  282

16.2.4  MySQL存储过程的概念详解  286

16.2.5  MySQL结束符的设置  292

16.2.6  MySQL存储过程的BEGIN ... END  293

16.2.7  MySQL IF语句  293

16.2.8  MySQL CASE语句  296

16.2.9  MySQL WHILE语句  300

16.2.10  MySQL LOOP语句  301

16.2.11  MySQL REPEAT语句  303

16.2.12  MySQL ITERATE语句  304

16.2.13  MySQL存储过程BEGIN...END嵌套  305

16.2.14  MySQL SELECT...INTO语句  306

16.2.15  MySQL存储函数  307

16.3  MySQL触发器  312

16.3.1  MySQL触发器的概念  312

16.3.2  MySQL触发器的作用  312

16.3.3  MySQL触发器的优点  313

16.3.4  MySQL触发器的创建  313

16.3.5  MySQL触发器的查看与删除  315

16.3.6  MySQL触发器的执行顺序  315

16.3.7  MySQL触发器实例  316

第  17章 MySQL备份与恢复  324

17.1  MySQL数据库备份的多种操作手段  324

17.1.1  数据库备份的重要性  324

17.1.2  mysqldump常用命令  324

17.1.3  mysqldump备份所有数据库  328

17.1.4  mysqldump备份多个数据库  329

17.1.5  MySQL命令恢复mysqldump备份的数据库  330

17.2  MySQL BINLOG日志管理  331

17.2.1  MySQL BINLOG日志详解  331

17.2.2  MySQL增量备份BINLOG日志  345

第  18章 全解MySQL性能优化  347

18.1  MySQL数据库设计良好架构的必要性  347

18.1.1  应用需求数据架构的概念  347

18.1.2  MySQL常见数据库服务器配置架构  348

18.1.3  MySQL数据库服务器经典配置架构  349

18.2  MySQL字段类型的选择  350

18.3  MySQL数据库索引  351

18.3.1  MySQL索引的概念  351

18.3.2  MySQL索引的优缺点  351

18.3.3  MySQL索引的类型  353

18.3.4  MySQL索引的优化  355

18.4  MySQL查询优化  356

18.4.1  MySQL查询优化应注意的问题  356

18.4.2  MySQL EXPLAN详解  359

18.4.3  MySQL多表查询优化  368

18.4.4  MySQL子查询分析  373

18.4.5  MySQL JOIN语句优化分析  377

18.4.6  MySQL数据导入优化  378

18.4.7  MySQL INSERT性能提高  379

18.4.8  MySQL GROUP BY分组优化  381

18.4.9  MySQL ORDER BY索引优化  385

18.4.10  MySQL OR索引分析  387

18.4.11  MySQL STATUS获得MySQL状态  390

18.4.12  MySQL慢查询SLOW  404

18.4.13  合理使用MySQL锁机制  407

18.4.14  MySQL优先级  411

18.4.15  MySQL MyISAM索引键缓存  413

18.4.16  MySQL查询缓存工作过程  417

18.4.17  MySQL查看查询缓存  420

18.4.18  MySQL查询缓存开启  421

18.4.19  MySQL优化MySQL连接数  427

18.4.20  MySQL数据库损坏的修复  431

你可能感兴趣的:(mysql数据库管理实战,甘长春)