书籍详情
MySQL 8 Cookbook(中文版)
作者:[美] Karthik Appigatla 著
出版社:电子工业出版社
出版时间:2018-11-01
ISBN:9787121350108
定价:¥115.00
购买这本书可以去
内容简介
MySQL 8.0 的发布是MySQL 发展历史上的一个重要里程碑,也是开源数据库领域内的一个大事件。针对这个版本,MySQL 官方团队做了太多的工作,从查询优化到集群架构,从参数调整到特性支持,MySQL 都有了革命性的变化。《MySQL 8 Cookbook(中文版)》基于MySQL 8.0,以基础知识为入手点,以讲解技术特性为目标,以案例作为理论的补充,详细介绍了MySQL 的方方面面,提供了超过150 个高性能数据库查询与管理技巧,是MySQL 入门者和管理者的必读之作。
作者简介
Karthik Appigatla是一位备受尊敬的数据库架构师,他在性能调优领域闻名于世。他为世界各地的许多公司提供设计咨询、性能调优、数据库架构设计和培训服务。在过去十年中,他曾供职于雅虎、Pythian和Percona等公司。目前,他任职于LinkedIn,在那里他发明了一种新的分析查询方法,并于2017年在都柏林的SRECon上发表了关于这个新发明的演讲。 译者简介 周彦伟,Oracle ACE Director(MySQL),中国计算机行业协会开源数据库专业委员会会长,中国MySQL用户组(ACMUG)主席,曾在去哪儿网、人人网等互联网公司工作多年,专注于MySQL数据库的技术和推广,著有《MySQL运维内参》,该书被业内从业者视为MySQL面试宝典。2018年创办极数云舟,提供MySQL技术产品和顾问服务。 孟治华,美国波士顿大学计算机专业硕士,拥有14年以上的数据库相关项目经验,曾多年在美国为Walmart、CVS Health等世界500强公司提供数据仓库和商业智能项目咨询服务。回国后积极参与ACMUG等知名开源社区活动,并致力于开源数据库知识的推广和传播。 王学芳,中国矿业大学(北京)计算机技术专业在读研究生,对数据库很感兴趣,一直关注MySQL社区的发展动态、技术革新等内容。
目录
第1章 安装或升级到MySQL 8 1
1.1 引言 1
1.2 使用YUM / APT安装MySQL 2
1.3 使用RPM或DEB文件安装MySQL 8.0 9
1.4 使用通用二进制文件在Linux系统上安装MySQL 12
1.5 启动或停止MySQL 8的运行 16
1.6 卸载MySQL 8 20
1.7 用systemd管理MySQL服务器 22
1.8 从MySQL 8.0降级 24
1.9 升级到MySQL 8.0 29
1.10 安装MySQL工具集 35
第2章 使用MySQL 37
2.1 引言 38
2.2 使用命令行客户端连接到MySQL 38
2.3 创建数据库 40
2.4 创建表 44
2.5 插入、更新和删除行 49
2.6 加载示例数据 52
2.7 查询数据 55
2.8 对结果排序 63
2.9 对结果分组(聚合函数) 64
2.10 创建用户 68
2.11 授予和撤销用户的访问权限 70
2.12 查询数据并保存到文件和表中 78
2.13 将数据加载到表中 81
2.14 表关联 82
2.15 存储过程 90
2.16 函数 95
2.17 触发器 98
2.18 视图 100
2.19 事件 102
2.20 获取有关数据库和表的信息 104
第3章 使用MySQL(进阶) 110
3.1 引言 110
3.2 使用JSON 110
3.3 公用表表达式(CTE) 116
3.4 生成列(generated column) 122
3.5 窗口函数 124
第4章 配置MySQL 129
4.1 引言 129
4.2 使用配置文件 130
4.3 使用全局变量和会话变量 131
4.4 在启动脚本中使用参数 132
4.5 配置参数 132
4.6 更改数据目录 135
第5章 事务 137
5.1 引言 137
5.2 执行事务 138
5.3 使用保存点 140
5.4 隔离级别 142
5.5 锁 147
第6章 二进制日志 153
6.1 引言 153
6.2 使用二进制日志 154
6.3 二进制日志的格式 159
6.4 从二进制日志中提取语句 161
6.5 忽略要写入二进制日志的数据库 173
6.6 迁移二进制日志 174
第7章 备份 177
7.1 引言 177
7.2 使用mysqldump进行备份 178
7.3 使用mysqlpump进行备份 182
7.4 使用mydumper进行备份 185
7.5 使用普通文件进行备份 191
7.6 使用XtraBackup进行备份 192
7.7 锁定实例进行备份 195
7.8 使用二进制日志进行备份 195
第8章 恢复数据 197
8.1 引言 197
8.2 从mysqldump和mysqlpump中恢复 197
8.3 使用myloader从mydumper中恢复 198
8.4 从普通文件备份中恢复 200
8.5 执行时间点恢复 201
第9章 复制 204
9.1 引言 204
9.2 准备复制 205
9.3 设置主主复制 212
9.4 设置多源复制 213
9.5 设置复制筛选器 220
9.6 将从库由主从复制切换到链式复制 222
9.7 将从库由链式复制切换到主从复制 227
9.8 设置延迟复制 231
9.9 设置GTID复制 234
9.10 设置半同步复制 238
第10章 表维护 243
10.1 引言 243
10.2 安装Percona工具包 244
10.3 修改表结构 246
10.4 在数据库之间移动表 248
10.5 使用在线模式更改工具修改表 250
10.6 归档表 255
10.7 克隆表 257
10.8 分区修剪和指定 269
10.9 管理分区 273
10.10 分区信息 276
10.11 有效地管理生存时间和软删除行 281
第11章 管理表空间 289
11.1 引言 289
11.2 更改InnoDB REDO日志文件的数量或大小 292
11.3 调整InnoDB系统的表空间大小 294
11.4 在数据目录之外创建独立表空间 298
11.5 将独立表空间复制到另一个实例 299
11.6 管理UNDO表空间 307
11.7 管理通用表空间 311
11.8 压缩InnoDB表 315
第12章 日志管理 320
12.1 引言 320
12.2 管理错误日志 320
12.3 管理通用查询日志和慢查询日志 328
12.4 管理二进制日志 335
第13章 性能调优 338
13.1 引言 338
13.2 explain计划 339
13.3 基准查询和服务器 345
13.4 添加索引 347
13.5 不可见索引 353
13.6 降序索引 355
13.7 使用pt-query-digest分析慢查询 358
13.8 优化数据类型 364
13.9 删除重复和冗余索引 366
13.10 检查索引的使用情况 374
13.11 控制查询优化器 375
13.12 使用索引提示(hint) 389
13.13 使用生成列为JSON建立索引 392
13.14 使用资源组 395
13.15 使用performance_schema 398
13.16 使用sys schema 405
第14章 安全 413
14.1 引言 413
14.2 安全安装 413
14.3 限定网络和用户 417
14.4 使用mysql_config_editor进行无密码认证 418
14.5 重置root密码 421
14.6 使用X509设置加密连接 425
14.7 设置SSL复制 428
1.1 引言 1
1.2 使用YUM / APT安装MySQL 2
1.3 使用RPM或DEB文件安装MySQL 8.0 9
1.4 使用通用二进制文件在Linux系统上安装MySQL 12
1.5 启动或停止MySQL 8的运行 16
1.6 卸载MySQL 8 20
1.7 用systemd管理MySQL服务器 22
1.8 从MySQL 8.0降级 24
1.9 升级到MySQL 8.0 29
1.10 安装MySQL工具集 35
第2章 使用MySQL 37
2.1 引言 38
2.2 使用命令行客户端连接到MySQL 38
2.3 创建数据库 40
2.4 创建表 44
2.5 插入、更新和删除行 49
2.6 加载示例数据 52
2.7 查询数据 55
2.8 对结果排序 63
2.9 对结果分组(聚合函数) 64
2.10 创建用户 68
2.11 授予和撤销用户的访问权限 70
2.12 查询数据并保存到文件和表中 78
2.13 将数据加载到表中 81
2.14 表关联 82
2.15 存储过程 90
2.16 函数 95
2.17 触发器 98
2.18 视图 100
2.19 事件 102
2.20 获取有关数据库和表的信息 104
第3章 使用MySQL(进阶) 110
3.1 引言 110
3.2 使用JSON 110
3.3 公用表表达式(CTE) 116
3.4 生成列(generated column) 122
3.5 窗口函数 124
第4章 配置MySQL 129
4.1 引言 129
4.2 使用配置文件 130
4.3 使用全局变量和会话变量 131
4.4 在启动脚本中使用参数 132
4.5 配置参数 132
4.6 更改数据目录 135
第5章 事务 137
5.1 引言 137
5.2 执行事务 138
5.3 使用保存点 140
5.4 隔离级别 142
5.5 锁 147
第6章 二进制日志 153
6.1 引言 153
6.2 使用二进制日志 154
6.3 二进制日志的格式 159
6.4 从二进制日志中提取语句 161
6.5 忽略要写入二进制日志的数据库 173
6.6 迁移二进制日志 174
第7章 备份 177
7.1 引言 177
7.2 使用mysqldump进行备份 178
7.3 使用mysqlpump进行备份 182
7.4 使用mydumper进行备份 185
7.5 使用普通文件进行备份 191
7.6 使用XtraBackup进行备份 192
7.7 锁定实例进行备份 195
7.8 使用二进制日志进行备份 195
第8章 恢复数据 197
8.1 引言 197
8.2 从mysqldump和mysqlpump中恢复 197
8.3 使用myloader从mydumper中恢复 198
8.4 从普通文件备份中恢复 200
8.5 执行时间点恢复 201
第9章 复制 204
9.1 引言 204
9.2 准备复制 205
9.3 设置主主复制 212
9.4 设置多源复制 213
9.5 设置复制筛选器 220
9.6 将从库由主从复制切换到链式复制 222
9.7 将从库由链式复制切换到主从复制 227
9.8 设置延迟复制 231
9.9 设置GTID复制 234
9.10 设置半同步复制 238
第10章 表维护 243
10.1 引言 243
10.2 安装Percona工具包 244
10.3 修改表结构 246
10.4 在数据库之间移动表 248
10.5 使用在线模式更改工具修改表 250
10.6 归档表 255
10.7 克隆表 257
10.8 分区修剪和指定 269
10.9 管理分区 273
10.10 分区信息 276
10.11 有效地管理生存时间和软删除行 281
第11章 管理表空间 289
11.1 引言 289
11.2 更改InnoDB REDO日志文件的数量或大小 292
11.3 调整InnoDB系统的表空间大小 294
11.4 在数据目录之外创建独立表空间 298
11.5 将独立表空间复制到另一个实例 299
11.6 管理UNDO表空间 307
11.7 管理通用表空间 311
11.8 压缩InnoDB表 315
第12章 日志管理 320
12.1 引言 320
12.2 管理错误日志 320
12.3 管理通用查询日志和慢查询日志 328
12.4 管理二进制日志 335
第13章 性能调优 338
13.1 引言 338
13.2 explain计划 339
13.3 基准查询和服务器 345
13.4 添加索引 347
13.5 不可见索引 353
13.6 降序索引 355
13.7 使用pt-query-digest分析慢查询 358
13.8 优化数据类型 364
13.9 删除重复和冗余索引 366
13.10 检查索引的使用情况 374
13.11 控制查询优化器 375
13.12 使用索引提示(hint) 389
13.13 使用生成列为JSON建立索引 392
13.14 使用资源组 395
13.15 使用performance_schema 398
13.16 使用sys schema 405
第14章 安全 413
14.1 引言 413
14.2 安全安装 413
14.3 限定网络和用户 417
14.4 使用mysql_config_editor进行无密码认证 418
14.5 重置root密码 421
14.6 使用X509设置加密连接 425
14.7 设置SSL复制 428
猜您喜欢