作品简介

熟练使用MySQL数据库,是研发工程师和数据库工程师的必备技能之一。本书从程序员的视角介绍了MySQL数据库在实际开发中的核心知识和应用技能。

全书共14章。第1章主要讲解MySQL数据库以及客户端工具的安装;第2~4章主要介绍数据库与表的创建、数据类型与表达式,以及函数、运算符与变量;第5章主要讲解select查询语句、子查询以及连接查询;第6章主要讲解索引和索引类型;第7、8章主要介绍MySQL事务的ACID特性、事务的四种隔离级别、如何使用事务、存储过程和视图概述,以及如何使用存储过程和视图;第9章介绍MySQL用户权限管理以及数据备份与恢复;第10章介绍如何设计数据库,包括关联关系、E-R实体关系模型;第11~13章主要介绍MySQL日志、锁以及分库分表;第14章介绍SQL性能优化与字符集。附录部分包含本书用到的SQL脚本、词汇解释以及高频面试题。

本书适合所有计算机专业的学生、软件开发人员,以及DBA使用,也可作为培训机构MySQL教学的参考书。

黄文毅,架构师,从业近十年,先后就职于上海美团、厦门美图和海西医药等公司,从事Java开发工作,目前就职于某国内大型企业从事大数据和后端研发,对于Java后端开发及MySQL等各类数据库的有着十分丰富的经验。

著有图书:《分布高可用架构之道》《Spring 5企业级开发实战》(与人合著)等图书。

作品目录

  • 前言
  • 本书结构
  • 本书预备知识
  • 读者对象
  • 源代码下载
  • 致谢
  • 第1章 初识MySQL
  • 1.1 安装MySQL
  • 1.2 如何选择MySQL客户端
  • 第2章 数据库与表的创建
  • 2.1 数据库操作
  • 2.2 表操作
  • 第3章 MySQL常用数据类型
  • 3.1 数值数据类型
  • 3.2 日期和时间类型
  • 3.3 字符串数据类型
  • 第4章 运算符、函数与变量
  • 4.1 运算符
  • 4.2 函数
  • 4.3 变量
  • 第5章 select查询
  • 5.1  select简单查询
  • 5.2  where条件查询
  • 5.3 数据排序order by
  • 5.4 数据分组group by
  • 5.5 分组后过滤having
  • 5.6 组合查询union
  • 5.7 子查询
  • 5.8 连接查询
  • 第6章 索引
  • 6.1 认识索引
  • 6.2 索引类型
  • 第7章 MySQL事务
  • 7.1 事务的4大特性
  • 7.2 使用事务
  • 7.3 事务的4种隔离级别
  • 第8章 MySQL视图和存储过程
  • 8.1 视图
  • 8.2 存储过程
  • 第9章 用户权限管理及数据备份与恢复
  • 9.1 用户权限管理
  • 9.2 数据备份
  • 9.3 数据恢复
  • 第10章 数据库设计
  • 10.1 关联关系
  • 10.2  E-R实体关系模型
  • 10.3 数据表设计三范式
  • 10.4 数据库设计流程
  • 10.5 教务管理系统数据库设计案例
  • 第11章 数据库日志
  • 11.1  MySQL的几种日志
  • 11.2 了解错误日志
  • 11.3 了解普通查询日志
  • 11.4 了解慢查询日志
  • 11.5 了解二进制日志
  • 11.6 了解撤销日志
  • 11.7 了解重做日志
  • 11.8 了解中继日志
  • 11.9 主从模式与主从同步
  • 第12章 MySQL锁
  • 12.1  MySQL锁及分类
  • 12.2 共享锁和独占锁
  • 12.3 全局锁
  • 12.4 表级锁
  • 12.5 行锁
  • 12.6 悲观锁和乐观锁
  • 第13章 MySQL分库分表
  • 13.1 分库
  • 13.2 分表
  • 13.3 切分方式
  • 13.4 分组
  • 第14章 SQL性能优化与字符集
  • 14.1  SQL优化工具
  • 14.2 慢SQL优化
  • 14.3 字符集
  • 附录A MySQL数据
  • 附录B 词汇解释
  • 附录C MySQL高频面试题
  • 附录D 练习题
  • 参考文献
展开全部