新書推薦:
《
中亚民族史
》
售價:NT$
840.0
《
人工智能与智能制造:概念与方法 [美]马苏德·索鲁什 [美]理查德·D.布拉茨
》
售價:NT$
640.0
《
中平:东汉王朝大崩溃(184—189)
》
售價:NT$
245.0
《
基于鲲鹏的分布式图分析算法实战
》
售價:NT$
495.0
《
中国历史研究入门(全二册)
》
售價:NT$
1290.0
《
夺回大脑 如何靠自己走出强迫
》
售價:NT$
299.0
《
夏天,19岁的肖像(青鲤文库)岛田庄司两次入围日本通俗文学奖直木奖的作品 ,同名电影由黄子韬主演!
》
售價:NT$
225.0
《
图解机械工程入门
》
售價:NT$
440.0
|
內容簡介: |
本书首先介绍了MySQL5.7和MariaDB10.1版本的新特性,然后以构建高性能MySQL服务器为核心,从故障诊断与优化、性能调优、备份与恢复、高可用集群架构搭建与管理、读写分离和分布式DB架构搭建与管理、性能和服务监控等方面多角度深入讲解了如何去管理与维护MySQL服务器。书中内容以实战为导向,所有内容均来自于笔者多年实践经验的总结和新知识的拓展,同时也针对运维人员、DBA等相关工作者会遇到的有代表性的疑难问题给出了实用的情景模拟,并给出了解决方案。不论你目前有没有遇到过此类问题,相信对你以后处理相关问题都会有所借鉴。本书适合所有希望构建和管理高性能、高可用性的MySQL数据库系统的开发者和DBA阅读。
|
目錄:
|
目录?Contents推荐序:飞跃的第2版前 言第1章 MariaDB架构与历史 11.1 MariaDB的介绍 11.2 MariaDB和MySQL的兼容性 21.3 MariaDB 10.0新增的功能 31.3.1 更多的存储引擎 41.3.2 速度的提升 51.3.3 扩展和新功能 51.4 如何将MySQL迁移至MariaDB 81.5 使用二进制包安装MariaDB 10.1企业版 101.6 总结 12第2章 MySQL 5.7与MariaDB 10.1的新特性 132.1 性能提升 142.2 安全性的提升 152.2.1 默认开启SSL 152.2.2 不再明文显示用户密码 202.2.3 sql_mode的改变 202.3 InnoDB存储引擎的提升 222.3.1 更改索引名字时不会锁表 222.3.2 在线DDL修改varchar字段属性时不锁表 232.3.3 InnoDBMyisAM存储引擎支持中文全文索引 262.3.4 InnoDB Buffer Pool预热改进 292.3.5 在线调整innodb_Buffer_Pool_Size不用重启mysql进程 312.3.6 回收(收缩)undo log回滚日志物理文件空间 322.3.7 InnoDB提供通用表空间 332.3.8 创建InnoDB独立表空间指定存放路径 342.3.9 迁移单独一张InnoDB表到远程服务器 352.3.10 修改InnoDB redo log事务日志文件大小更人性化 362.3.11 死锁可以打印到错误日志里 372.3.12 支持InnoDB只读事务 372.3.13 支持InnoDB表空间数据碎片整理 382.4 JSON格式的支持 392.4.1 支持用JSON格式存储数据 392.4.2 动态列支持用JSON格式存储数据 412.5 支持虚拟列(函数索引) 442.5.1 MySQL 5.7支持函数索引 442.5.2 MariaDB 10.010.1支持函数索引 452.6 功能提升 462.6.1 支持杀死慢的SQL语句 462.6.2 支持一张表有多个INSERTDELETEUPDATE触发器 482.6.3 引入线程池(Thread Pool)技术 492.6.4 提供审计日志功能 522.6.5 支持explain update 532.6.6 在MySQL 5.7 中按Ctrl+C组合键不会退出客户端 542.6.7 可将错误日志打印到系统日志文件中 542.6.8 支持创建角色 552.6.9 支持TokuDB存储引擎 562.7 优化器改进 592.7.1 针对子查询select采用半连接优化 592.7.2 优化派生子查询 622.7.3 优化排序limit 652.7.4 优化IN条件表达式 662.7.5 优化union all 692.7.6 支持索引下推优化 702.7.7 支持Multi Range Read索引优化 722.7.8 支持Batched Key Access(BKA)索引优化 752.7.9 支持Hash Join索引优化 772.8 半同步复制改进 782.8.1 半同步复制简介 782.8.2 半同步复制的安装配置 792.8.3 参数说明 792.8.4 功能测试 802.8.5 性能测试 842.9 GTID复制改进 872.9.1 GTID复制概述 872.9.2 在MySQL 5.6的GTID模式下同步复制报错不能跳过的解决方法 902.9.3 MySQL 5.7中GTID复制的改进 932.9.4 GTID复制的陷阱 952.9.5 MariaDB 10.1中GTID复制的改进 962.9.6 GTID的使用方式不同 972.10 MySQL 5.65.7从库崩溃安全恢复 982.11 MariaDB 10.010.1从库崩溃安全恢复 992.12 slave从库多线程复制 992.13 slave支持多源复制 1012.14 MySQL 5.7设置同步复制过滤不用重启mysql服务进程 1032.15 小结 104第3章 故障诊断 1053.1 影响MySQL性能的因素 1053.2 系统性能评估标准 1063.2.1 影响Linux服务器性能的因素 1063.2.2 系统性能评估指标 1073.2.3 开源监控和评估工具介绍 1093.3 故障与处理 1123.3.1 连接数过多导致程序连接报错的原因 1123.3.2 记录子查询引起的宕机 1173.3.3 诊断事务量突高的原因 1203.3.4 谨慎设置binlog_format=MIXED 1233.3.5 未设置swap分区导致内存耗尽,主机死机 1273.3.6 MySQL故障切换之事件调度器注意事项 1283.3.7 人工误删除InnoDB ibdata数据文件,如何恢复 1303.3.8 update忘加where条件误操作恢复(模拟Oracle闪回功能) 1323.3.9 delete忘加where条件误操作恢复(模拟Oracle闪回功能) 141第4章 同步复制报错故障处理 1454.1 最常见的3种故障 1454.1.1 在master上删除一条记录时出现的故障 1464.1.2 主键重复 1474.1.3 在master上更新一条记录,而slave上却找不到 1484.2 特殊情况:slave的中继日志relay-log损坏 1494.3 人为失误 1514.4 避免在master上执行大事务 1524.5 slave_exec_mode参数可自动处理同步复制错误 1534.6 如何验证主从数据一致 1544.7 binlog_ignore_db引起的同步复制故障 1564.8 MySQL5.5.1920同步一个Bug 1574.9 恢复slave从机上的某几张表的简要方法 1594.10 如何干净地清除slave同步信息 160第5章 性能调优 1625.1 表设计 1625.2 字段类型的选取 1665.2.1 数值类型 1675.2.2 字符类型 1725.2.3 时间类型 1745.2.4 小技巧:快速修改表结构 1815.2.5 pt-online-schema-change在线更改表结构 1855.2.6 MySQL5.6在线DDL更改表测试 1915.3 采用合适的锁机制 1945.3.1 表锁的演示 1945.3.2 行锁的演示 1975.3.3 InnoDB引擎与MyISAM引擎的性能对比 1995.4 选择合适的事务隔离级别 2015.4.1 事务的概念 2015.4.2 事务的实现 2025.4.3 事务隔离级别介绍 2045.5 SQL优化与合理利用索引 2105.5.1 如何定位执行很慢的SQL语句 2105.5.2 SQL优化案例分析 2115.5.3 合理使用索引 2215.6 my.cnf配置文件调优 2315.6.1 per_thread_buffers优化 2315.6.2 global_buffers优化 2335.6.3 Query Cache在不同环境下的使用 2345.6.4 tuning-primer.sh性能调试工具的使用 2385.6.5 72 GB内存的my.cnf配置文件 2415.6.6 谨慎使用分区表功能 2445.7 MySQL5.6同步复制新特性详解 246第6章 备份与恢复 2566.1 冷备份 2576.2 逻辑备份 2576.2.1 mysqldump增加了一个重要参数 2586.2.2 取代mysqldump的新工具mydumper 2596.2.3 逻辑备份全量、增量备份脚本 2626.3 热备份与恢复 263第7章 高可用MHA架构集群管理 2687.1 MHA架构简介 2687.1.1 master自动监控和故障转移 2707.1.2 手工处理master故障转移 2707.1.3 在线平滑切换 2707.2 MHA配置安装 2707.3 MHA故障切换演示 2777.3.1 场景一:master自动监控和故障转移 2777.3.2 场景二:master手工故障转移 2857.3.3 场景三:在线平滑切换 2857.4 MHA高可用架构总结 290第8章 MySQL架构演进:“一主多从、读写分离” 2938.1 实现读写分离的两种方式 2938.2 主从同步延迟的判断标准 2978.3 HAProxy感知MySQL主从同步延迟 3008.4 读写分离MariaDB MaxScale架构搭建演示 3078.4.1 配置环境及安装介绍 3078.4.2 基于connect方式的测试 3118.4.3 基于statement方式(SQL解析)的测试 3128.4.4 MaxScale延迟检测 3138.5 读写分离OneProxy介绍及架构搭建演示 3158.5.1 OneProxy简介 3168.5.2 OneProxy的功能及安装介绍 3168.5.3 OneProxy读写分离接入限制 320第9章 Codership Galera Cluster 集群架构搭建与管理 3229.1 Codership Galera Cluster的特性和优缺点 3239.2 Codership Galera Cluster的局限性 3239.3 Codership Galera Cluster的工作原理 3249.4 Codership Galera Cluster的配置 3289.4.1 Codership Galera Cluster的配置环境及安装 3289.4.2 功能测试 3329.5 HAProxy结合Galera Cluster实现无单点秒级故障切换 337第10章 OneProxy分库分表的搭建与管理 34510.1 OneProxy 分库分表的搭建 34610.1.1 配置与安装 34610.1.2 前端PHPJava程序接入事项 34910.2 OneProxy分库分表接入限制 34910.3 OneProxy分库分表基本测试 35110.3.1 分库分表的功能测试 35110.3.2 分库分表的二级分区测试 35410.3.3 分库分表的聚合测试 35810.3.4 分库分表的插入测试 35910.3.5 分库分表不支持跨库join的测试 36010.3.6 分库分表不支持分布式事务的测试 36110.3.7 分库分表不支持存储过程的测试 36110.4 搭建OneProxy高可用故障切换HA 36210.5 OneProxy 黑名单SQL防火墙搭建测试 363第11章 Lepus慢日志分析平台搭建与维护 36711.1 Lepus基础组件的安装 36711.2 安装percona-toolkit工具 370
|
內容試閱:
|
前言?Preface为什么要写这本书首先要感谢读者对第1版的认可。随着技术的更新,第1版的内容已逐渐变老,为了与时俱进,所以准备再写一本关于MariaDB 10和MySQL 5.7的数据库图书,把自己学到的新知识做一个系统性总结来呈现给大家。目前市面上针对相关知识进行介绍的书还寥寥无几,大多数读者只能通过阅读英文手册去获取新的知识,希望本书的出版能对大家有所帮助。本书以构建高性能MySQL服务器为核心内容,介绍了MariaDB 10和MySQL 5.7的新特性,并从故障诊断与优化、性能调优、备份与恢复、MySQL高可用集群搭建与管理、MySQL服务器性能和服务监控等角度深入讲解了如何去管理与维护MySQL服务器。书中内容均来自于笔者多年实践经验的总结和新知识的拓展,同时也包含很多实用的情景模拟,并针对运维人员、DBA等相关工作者常遇到的有代表性的疑难问题给出了解决方案。不论你目前有没有遇到过此类问题,相信都会有借鉴意义。如何阅读本书本书的知识结构分四部分:第一部分(第1章至第2章)介绍MySQL5.7MariaDB 10的新特性、注意事项、安装和升级方法。第二部分(第3章至第6章)为故障诊断与优化,涉及生产环境下MySQL故障处理,以及性能调优等内容,包括表设计阶段范式的理解、字段类型的选取、采用表锁还是行锁、MySQL默认的隔离级别与传统SQL Server,以及Oracle数据库默认的隔离级别的区别、SQL语句的优化,以及合理利用索引等。第三部分(第7章至第10章)为架构篇,内容包括当前互联网流行的高可用架构MHA(Master High Availability)、分库分表中间件Oneproxy和读写分离中间件MariaDB MaxScale,以及PerconaMariaDB Galera Cluster集群管理。第四部分(第11章)阐述慢SQL管理平台的搭建与维护,主要介绍集中收集慢日志查询。本书的每个部分都可以单独作为一本迷你书阅读,如果你未接触MySQL5.7MariaDB 10,建议从第一部分开始阅读。本书提供的脚本和相关软件,请在华章网站(www.hzbook.com)的本书页面下载。勘误和支持由于作者的水平有限,编写的时间也很仓促,书中难免会出现一些错误或者不准确的地方,不妥之处恳请读者批评指正。你可以将书中的错误,发送邮件至我的邮箱chunyang_he@139.com或者通过QQ联系我:3783414,我很期待能够听到你们真挚的反馈。致谢在这里感谢沃趣科技公司高级DBA邱文辉提供《MariaDB 10 Hash Join索引优化》一文。感谢机械工业出版社华章公司的编辑杨绣国老师,感谢你的魄力和远见,在这一年多的时间中始终支持我的写作,你的鼓励和帮助引导我顺利完成全部书稿。贺春旸2016年5月于北京
|
|