DBA攻坚指南:左手Oracle,右手MySQL
书籍作者:叶桦 |
ISBN:9787111684336 |
书籍语言:简体中文 |
连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 |
下载次数:7967 |
创建日期:2021-10-07 |
发布日期:2021-10-07 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
内容简介
本书是美创科技资深Oracle、MySQL技术专家呕心沥血之作,积作者多年的经验结晶和实践经验,也是目前市场上为数不多Oracle和MySQL相结合的数据库技术书籍。
书中内容主要分为Oracle和MySQL两大部分。第 一部分介绍Oracle的日常运维,该部分主要由四个章节构成,内容由浅入深逐步展开。包括生产环境搭建,上线前的压力测试,日常运维以及故障处理,迁移升级,SQL的优化技巧等内容;第二部分是MySQL的运维实战,主要介绍MySQL常用的运维操作及实践,包括软件安装、备份恢复、迁移升级、架构设计、监控和性能优化等。书中提供了全面、实用的建议及具体的操作案例,以保证在复杂的核心生产环境中,能帮助读者可靠且高效地运行Oracle和MySQL数据库。
作者简介
叶桦,Oracle OCM,MySQL认证专家,超10年乙方数据库维护经验,美创科技运维服务团队负责人。具备丰富的行业经验与技术积累,所服务的对象包括大型运营商、金融机构、政府机关以及制造业等多个行业客户,对于数据库技术具有深刻的理解。精通Oracle和MySQL数据库内核原理、架构规划和调优诊断,擅长Shell和Python自动化运维开发。
徐浩,美创科技运维部经理,Oracle、MySQL、云数据库高级认证专家。拥有8年以上的数据库领域从业经验,TB级高并发数据库与中大型项目的管理经验。对于分布式高可用架构和性能调优有着丰富的实战经验,擅长故障诊断及数据灾难挽救,服务的行业包括运营商、制造业、金融、医疗、政府等。目前,主要负责Oracle、MySQL、阿里云等技术的研究和运维管理,以及数据库智能运维平台的设计开发等工作。
前言
为什么要写本书
不知不觉间,二十一世纪已过去了五分之一的时间。近二十年来,互联网在全球范围内蓬勃发展,带动整个IT行业快速向前推进,如今已进入万物互联时代。Oracle、IBM、微软等巨头企业基本上垄断了国内早期的数据库市场,不过,随着国力的强大及高等教育的普及,国内IT界已经涌现出了大量的专业人才,Oracle系的达梦DM、MySQL系的巨杉、TiDB等国产数据库纷纷登上历史舞台。用户不再是被动接受,而是可以主动选型,这标志着国内数据库市场正逐步进入百家争鸣的时代。虽然各大开源类数据库百花齐放,然而,在最新的DB-Engines全球数据库排行榜上,Oracle和MySQL依然是世界上最受欢迎的商业和开源类数据库,而且领跑优势还在继续扩大。
Oracle在金融、电信、交通、医疗、制造业、能源等诸多领域的使用非常广泛,其拥有完善的生态体系,多样化的数据库选件,在高可用性、高性能、高安全性、高数据服务能力等方面都得到了用户的广泛认可。
而随着互联网的兴起,MySQL在数据库领域的地位也日益凸显。随着用户群体规模的不断扩大,MySQL已经逐渐渗透到通信、制造、金融、政府和能源等领域。在数字化转型的进程中,企业级的商用数据库Oracle、DB2不再是必选项,MySQL凭借开源、灵活和操作简便等特性,获得了国内外市场和用户的青睐。
Oracle和MySQL在国内市场的占有率高达60%以上,因此国内需要大量具有综合能力的数据库管理人才。市面上绝大多数的数据库相关书籍和资料只介绍了其中一类数据库,且大多只介绍基础原理或只阐述深奥的方法论,质量参差不齐,极少有同时涵盖Oracle和MySQL这两种数据库的书籍。如果有这样一本书,既能兼顾传统的Oracle,又能顺应当前的趋势介绍MySQL,并能详细讲解这两大数据库的运维技巧及最佳实践,那么对于很多公司的IT技术人员和DBA来说,该书将能提供很好的参考价值。
基于上述背景,作为第三方数据库的专业运维团队,我们有着运维数以千计生产环境的经验,自然在创作这样一本书方面具有极大的先天优势。团队多名核心人员多年来积累了上千篇高质量原创技术文章,经过不断筛选和提炼,最终将精华内容凝聚成书。
本书提供的建议全面且实用,为在复杂的核心生产环境中可靠且高效地运行Oracle或MySQL数据库提供帮助。本书既有避免大家走弯路的最佳实践,也有最实用的运维技巧。书中不会直接讲解深奥的理论,而是以案例为载体,一切从实际出发,将晦涩的原理分解到一个个真实、生动的案例中,从现象到本质进行剖析,其中所展现的经验、思路和方法具有极大的参考价值。
读者对象
本书适用于Oracle、MySQL领域的初中级读者,学习本书需要具备一定的关系型数据库基础。本书虽然不会重点讲述什么是SGA、InnoDB,什么是数据文件、日志文件等基本原理,但是会为读者提供相关运维场景的最佳实践。阅读本书,读者可以快速掌握Oracle、MySQL运维最核心的内容、最实用的技巧,少走弯路,从而降低学习成本。本书的读者对象大致可以划分为以下几类:
运维工程师
开发工程师
测试工程师
系统工程师
集成工程师
实施工程师
安全工程师
数据库管理员
数据库架构师
解决方案工程师
如何阅读本书
本书主要分为Oracle和MySQL两大部分。第一部分介绍Oracle的日常运维,该部分由第1~4章构成,内容由浅入深地逐步展开。第1章主要介绍最初的生产环境搭建,以及上线前的压力测试,并有针对性地讲解各环节的注意事项和最佳实践,帮助读者构建出一套稳健的生产环境。第2章主要介绍上线后的日常运维及故障处理方案,通过由点到面的丰富案例,为读者提供有效的解决方法和应对思路。第3章主要介绍数据库的迁移升级,通过实际案例讲解各种主流方法,从而应对不同的停机时间,以及迁移前后如何保证性能和数据一致性。第4章主要介绍SQL的优化技巧,比如如何运用20%的知识处理80%的SQL性能问题。第二部分介绍MySQL的日常运维,该部分由第5~10章构成。第5章主要是深入浅出地介绍MySQL最常使用的几种安装方式,并有针对性地告诉读者一些注意事项及最佳实践。第6章主要讲解如何充分利用备份和恢复的各种手段,规避企业核心数据丢失的风险。此章重点介绍了XtraBackup、Mysqldump等几款集功能、性能、可用性于一体的实用工具,以应对企业各种复杂需求。第7章主要讲解基于跨地域机房数据中心搬迁、硬件设备迭代、业务爆发式增长下现有硬件资源不足等场景的底层数据迁移。本章会兼顾用户停机窗口和成本,提供最佳解决方案。第8章主要围绕传统模式和GTID模式讲解复制拓扑部署的最佳实践及日常运维的生态建设,以及如何使用复制技术构建双活或容灾等高可用方案。第9章主要讲解MySQL 57版本引入的支持多节点写入的分布式高可用架构,此架构基本无复制延迟,并且能保证数据强一致性,支持动态横向扩展以对读写业务进行负载均衡。第10章主要介绍Zabbix代理模式,可将功能强大且易于扩展的Zabbix代理批量自动化部署在要监控的目标上,以便主动监控本地资源和应用程序。最后,结合Grafana等开源软件,最终实现对MySQL数据库及其运行主
目录
前言
第一部分 Oracle实战攻略
第1章 Oracle安装最佳实践2
11 正确安装数据库软件2
111 安装过程中容易忽视的点2
112 常见安装问题的处理7
113 集群安装最佳实践9
12 上线前的压力测试19
121 I/O测试19
122 RDBMS层I/O测试21
123 模拟应用程序层测试25
13 本章小结30
第2章 Oracle故障诊断31
21 日常维护31
211 TX锁处理31
212 高峰期谨慎编译业务对象35
213 数据误删恢复37
22 数据库连接故障诊断38
221 数据库连接缓慢44
222 间接性连接报错49
23 数据库日常案例精析52
231 存储链路引起的性能问题52
232 操作系统内存泄漏的案例56
233 详解log file sync等待62
234 10053跟踪诊断69
24 集群故障诊断75
241 集群软件权限修复75
242 RAC节点驱逐分析77
243 DRM特性引起的RAC节点宕机79
244 row cache lock性能诊断85
25 本章小结89
第3章 数据库迁移升级90
31 如何选择迁移方式91
32 逻辑迁移升级91
321 使用数据泵的注意事项92
322 数据泵常用参数93
323 参数使用案例93
33 逻辑DataGuard滚动升级96
331 生产端前期准备97
332 备端前期准备98
333 将逻辑DG升级至Oracle 12c99
334 第一次主备切换102
335 升级原生产库103
336 升级失败回退措施104
34 XTTS迁移升级技术104
341 环境说明104
342 源端环境准备105
343 目标端环境准备114
344 数据同步116
345 正式迁移117
346 迁移失败回退122
347 迁移备忘录122
35 OGG的迁移升级案例122
351 源端环境准备123
352 目标端环境准备128
353 数据比对安装配置130
354 正式迁移前的准备134
355 正式迁移138
356 迁移失败的回退措施140
36 如何保证数据一致性140
37 迁移前后如何保证性能146
371 数据库重放146
372 SQL性能分析157
38 本章小结163
第4章 SQL性能优化164
41 读懂执行计划164
411 获取执行计划165
412 读懂执行计划171
42 收集统计信息176
43 访问路径190
431 全表扫描190
432 ROWID扫描191
433 索引唯一扫描191
434 索引范围扫描192
435 索引跳跃扫描192
436 全索引扫描193
437 快速全索引扫描195
44 连接方式196
441 嵌套循环连接196
442 哈希连接198
443 排序合并连接199
444 笛卡儿连接201
45 查询转换201
451 视图合并202
452 谓词推入203
453 子查询展开205
454 物化视图查询重写207
46 异常SQL处理209
461 定位问题SQL209
462 SQL健康检查210
463 SQL PROFILE212
464 SQL 计划管理213
47 SQL优化案例集216
471 常用索引优化方法216
472 隐式转换无法使用索引220
473 直方图引起执行计划偏差221
474 驱动表选择优化224
475 联合索引优化228
476 谓词推入优化231
477 大型表格更新删除优化237
478 程序不足SQL来凑240
48 本章小结244
第二部分 MySQL实战之旅
第5章 MySQL安装最佳实践246
51 几种常见的安装方式246
511 操作系统基础配置248
512 RPM包安装与介绍251
513 二进制包安装与介绍255
514 源码编译安装与介绍258
515 安装最佳实践263
52 常用的连接方式277
521 建立MySQL连接277
522 简化MySQL连接279
53 数据库系统账户改密的几种方法285
531 两阶段认证285
532 系统账户密码重置287
54 SSL与RSA实践291
541 创建SSL、RSA证书和密钥291
542 配置加密连接294
55 本章小结297
第6章 MySQL备份与恢复技术298
61 备份与恢复概述298
62 企业级MEB物理备份与恢复299
621 MEB软件介绍299
622 MEB备份与恢复示例301
63 开源级PXB物理备份与恢复317
631 PXB软件介绍317
632 PXB工作原理概述318
633 PXB备份与恢复示例320
64 MySQLDUMP逻辑备份与恢复330
641 MySQLDUMP软件介绍331
642 SQL格式转储与加载332
643 分隔文本格式转储与加载340
65 MySQLPUMP逻辑备份与恢复343
651 MySQLPUMP软件介绍343
652 MySQLPUMP并行处理344
653 MySQLPUMP转储特定对象346
654 MySQLPUMP压缩转储347
66 本章小结348
第7章 MySQL迁移与升级技术349
71 MySQL迁移概述349
72 使用MEB实现零RPO迁移350
721 MEB全量与增量迁移350
722 MEB全量与复制迁移351
723 迁移小结353
73 使用PXB实现零RPO迁移354
731 PXB全量与增量迁移354
732 PXB全量与复制迁移356
733 迁移小结357
74 使用MySQLDUMP迁移357
741 MySQLDUMP全量迁移357
742 MySQLDUMP全量迁移与Binlog增量迁移359
743 MySQLDUMP全量与复制迁移361
744 迁移小结362
75 使用MySQLPUMP迁移363
751 MySQLPUMP全量迁移363
752 MySQLPUMP全量与复制迁移366
753 迁移小结367
76 使用MyDumper迁移367
761 安装MyDumper软件367
762 MyDumper全量迁移368
763 迁移小结372
77 MySQL版本升级实战373
771 MySQL升级概述373
772 确认升级路径373
773 升级前的准备工作373
774 原地升级方式374
775 逻辑升级方式377
78 本章小结378
第8章 MySQL经典复制架构379
81 复制介绍379
811 MySQL复制线程380
812 MySQL复制版本兼容性382
82 基于传统模式部署复制382
83 基于GTID模式部署复制388
831 离线启用GTID模式388
832 在线设置GTID模式390
833 GTID复制模式的限制394
84 多源复制395
85 SBR和RBR的特点398
851 SBR的优势与劣势398
852 RBR的优势与劣势399
86 复制过滤规则400
87 延迟复制406
88 复制报错处理流程407
89 复制切换409
891 复制拓扑手动切换409
892 复制拓扑自动切换414
810 优化复制延迟424
811 本章小结428
第9章 MySQL组复制实践429
91 组复制技术介绍429
911 传统复制429
912 组复制430
92 组复制要求和限制432
921 组复制实例要求432
922 组复制限制434
93 部署单主模式组复制436
931 跨主机部署MGR436
932 同主机部署MGR445
94 单主模式切换成多主模式447
95 故障检测与处理449
951 检测分区449
952 丢失仲裁450
953 解锁分区451
954 重启新复制组452
96 组复制调优453
961 优化组复制恢复453
962 微调组通信线程454
963 消息压缩454
964 流量控制455
97 本章小结457
第10章 MySQL监控与可视化458
101 部署Zabbix Server458
102 部署Zabbix Agent2462
103 创建自定义Keys464
104 创建自定义项与触发器476
105 启用Zabbix告警通知492
106 创建Zabbix自定义模板494
107 自定义资产发现规则496
108 部署Grafana可视化软件498
109 定制MySQL监控大屏499
1010 本章小结510
短评
这本书写的真的很好!对工作很有帮助!
2021-07-14 18:03:09
好书到手,真正的左手oracle右手mysql,大佬们的实战经验精华,最实用的技巧,非常适合运维人员二次深入学习实践
2021-07-14 16:19:50
非常棒的一本书,受益匪浅。
2021-07-14 16:13:42
书写的不错,对我很有帮助
2021-07-14 17:12:24
书的内容非常的好,适合初学者
2021-07-14 16:04:09
书写的非常不错,内容对初学者帮助很大
2021-07-12 13:51:55
资深多年dba产生的杰作,值得dba们好好钻研。研读
2021-07-14 16:27:19
大神的书,值得一看,内容满满!!!!
5星好评
2021-07-14 16:47:34
很不错,性价比很高,Oracle和MySQL比对学习,方便自己确定之后打算深入哪一种,也能对另一种有所了解,对于自己找准方向很有帮助
2021-07-14 16:33:36
一直很期待,终于到手了,满满的技术干货
2021-07-14 16:36:10