【DBAplus社群】MySQL进阶路:从小工到专家的必读书籍和必备工具

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: 原创 2016-08-17 卢钧轶  作者介绍 卢钧轶,DBAplus社群原创专家,目前就职于Facebook MySQL Infra Team,主要负责大规模MySQL数据库运维。
原创  2016-08-17  卢钧轶 

作者介绍

卢钧轶,DBAplus社群原创专家,目前就职于Facebook MySQL Infra Team,主要负责大规模MySQL数据库运维。在Failover、备份、监控、优化、数据库私有云等相关领域有一定经验和个人理解,曾先后就职于BesTV和大众点评网。个人博客:http://cenalulu.github.io/


一、MySQL入门书籍和方法分享


背景:各大论坛上总是有很多同学咨询想学习数据库,或者是为入行DBA做些准备。几年来作为一个MySQL DBA的成长过程有一些积累和感悟,特此拿出来和大家分享。


申明:本文原来对每一本书都附上了ppurl的下载链接。无奈该网站由于涉及版权原因闭站了。因此,目前暂不提供书籍链接,待找到好的PDF下载源的时候再补上。大家如果有下载需求可以考虑百度搜索。


1 SQL入门


在准备成为MySQL DBA之前,能熟练的编写SQL是一个必要条件。exists 和 join之间的等价转换;基本的行列转换;SQL 循环等的熟练掌握对之后的运维和调优工作都有很大的帮助。


推荐书籍:


  1. SQL Cookbook一本循序渐进的SQL指导手册。每一种业务需求,书中都用MySQL,SQL Server,Oracle三种语法进行解析。可以顺序的作为学习书籍,也可以之后作为工具书籍查阅。

  2. The Art of SQL:将SQL调优模拟成一场战役,进行战术分析。更多的是传授SQL架构设计方面的知识,实际的调优实例不多,翻译很烂,建议看原版。

  3. SQL应用重构

  4. OReilly.MySQL.Stored.Procedure.Programming.Mar.2006.chm学习MySQL 存储过程语法和编写的最好教材。虽然版本比较老,但是大部分的语法都没有变更,比较推荐。


2 MySQL入门&精通


如果你已经熟练掌握了基本的SQL编写技巧,就可以进入对于MySQL产品本身的入门学习了。


推荐书籍:


  1. High Performance MySQL:MySQL界的圣经,目前已经出到第三版。非常详细的介绍了MySQL运维的各个部分,可以通读了解,也可以作为工具书进行查阅。

  2. 深入浅出MySQL数据库开发、优化与管理维护中文原创书籍中比较适合入门的一本。教粗浅的介绍了MySQL的相关特性,比较适合MySQL运维的入门。

  3. MySQL技术内幕innodb 存储引擎很详细的从代码层面分析了Innodb的内部结构,适合深入学习innodb。


3 其他学习资源


MySQL入门除了通过书本学习理论知识以外还有其他各种方式可以进行学习。


  1. Our Episode:一个类似于MySQL电台的节目,每周会定期出一个音频讨论一个MySQL话题。 是学习MySQL&学习英语的好选择。

  2. MySQL Planet几乎涵盖了所有MySQL业界大牛的博客RSS汇总。强烈建议订阅!

  3. MOOC各类公开课程网站都会有免费得MySQL入门课程试听。这里就不一一列举了。


4 运维&数据思想


推荐书籍:


  1. The Art of Capacity Planning作为运维免不了要做容量规划和容量预测。这本书是一个很好的开始。

  2. Beautiful Data: The Stories Behind Elegant Data Solutions对数据的敏感对于数据库运维是一个重要特质。


二、MySQL工具汇总


第二部分我汇总了和MySQL运维开发相关的所有工具,工具包含:性能测试,状态分析,SQL路由等方面,后续将持续更新。


1 工具套件集


  • percona-toolkit

    链接:https://www.percona.com/software/mysql-tools/percona-toolkit

  • oak-toolkit

    链接:http://code.openark.org/forge/openark-kit

  • ps-helper(performance schema 工具函数集)

    链接:https://github.com/MarkLeith/dbahelper


2 MySQL实时状态分析


  • innotop

    链接:https://code.google.com/p/innotop/

  • orzdba

    链接:http://code.taobao.org/p/orzdba/src/trunk/orzdba

  • mytop

    链接:http://jeremy.zawodny.com/mysql/mytop/

  • systemtap工具示例集

    链接:https://sourceware.org/systemtap/examples/


3 MySQL客户端&开发工具


  • MySQL Workbench

    链接:http://www.mysql.com/products/workbench/

  • SQLyog

    链接:https://www.webyog.com/

  • Adminer

    链接:https://www.adminer.org/

  • MyQuery

    链接:https://sourceforge.net/projects/myquery/

  • Hopper(存储过程调试工具)

    链接:http://www.upscene.com/products.hopper.index.php


4 MySQL性能监控


  • mysql-statsd

    链接:https://github.com/db-art/mysql-statsd

  • nethogs

    链接:http://www.oschina.net/p/nethogs/


5 MySQL性能测试工具


  • sysbench

    链接:https://launchpad.net/sysbench

  • tpcc-mysql

    链接:https://code.launchpad.net/~percona-dev/perconatools/tpcc-mysql

  • dbt2

    链接:https://sourceforge.net/projects/osdldbt/files/dbt2/

  • LinkBench

    链接:https://github.com/facebookarchive/linkbench

  • iibench Indexed Insertion Benchmark

    链接:https://github.com/tmcallaghan/iibench-mysql


6 data generator


  • 测试数据生成

    链接:http://www.generatedata.com/

  • 地理数据生成

    链接:http://www.openstreetmap.org/#map=5/51.500/-0.100


7 数据路由中间件


  • mysql-proxy

    链接:http://downloads.mysql.com/archives/proxy/

  • Atlas

    链接:https://github.com/Qihoo360/Atlas

  • mycat

    链接:https://code.google.com/p/opencloudb/

  • MaxScale

    链接:https://github.com/mariadb-corporation/MaxScale

  • GLB

    链接:https://github.com/codership/glb

  • ScaleArc

    链接:http://www.scalearc.com/


8 数据库版本管理


  • liquibase

    链接:http://www.liquibase.org/

9 MySQL Connector


  • libAttachSQL

    链接:http://libattachsql.org/

    About Me


    .........................................................................................................................................................................................................
    本文来自于微信公众号转载文章,若有侵权,请联系小麦苗及时删除,非常感谢原创作者的无私奉献
    原文地址:http://mp.weixin.qq.com/s?__biz=MzI4NTA1MDEwNg==&mid=2650756356&idx=2&sn=28d581db55b558f0c9091e056c60770a&scene=1&srcid=0817mq9z7zFX252wNOHAPslh#rd
    联系我请加QQ好友(642808185),注明添加缘由
    【版权所有,文章允许转载,但须以链接方式注明源地址,否则追究法律责任】
    .........................................................................................................................................................................................................


    拿起手机扫描下边的图片来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。

    img_bb42d6430e33d92a994f31aca2b7f1d7.jpg

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
2月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
153 10
|
5月前
|
canal 关系型数据库 MySQL
MySQL 自动同步开源工具
本文介绍了几种开源工具用于实现 MySQL 数据库的自动同步。
|
9月前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
canal 消息中间件 关系型数据库
Canal作为一款高效、可靠的数据同步工具,凭借其基于MySQL binlog的增量同步机制,在数据同步领域展现了强大的应用价值
【9月更文挑战第1天】Canal作为一款高效、可靠的数据同步工具,凭借其基于MySQL binlog的增量同步机制,在数据同步领域展现了强大的应用价值
1606 4
|
10月前
|
SQL 关系型数据库 MySQL
MySQL 窗口函数详解:分析性查询的强大工具
MySQL 窗口函数从 8.0 版本开始支持,提供了一种灵活的方式处理 SQL 查询中的数据。无需分组即可对行集进行分析,常用于计算排名、累计和、移动平均值等。基本语法包括 `function_name([arguments]) OVER ([PARTITION BY columns] [ORDER BY columns] [frame_clause])`,常见函数有 `ROW_NUMBER()`, `RANK()`, `DENSE_RANK()`, `SUM()`, `AVG()` 等。窗口框架定义了计算聚合值时应包含的行。适用于复杂数据操作和分析报告。
435 11
|
SQL 缓存 关系型数据库
MySQL高级篇——性能分析工具
MySQL的慢查询日志,用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long-query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为 10,意思是运行10秒以上(不含10秒)的语句,认为是超出了我们的最大忍耐时间值。它的主要作用是,帮助我们发现那些执行时间特别长的 SOL 查询,并且有针对性地进行优化,从而提高系统的整体效率。当我们的数据库服务器发生阻塞、运行变慢的时候,检查一下慢查询日志,找到那些慢查询,对解决问题很有帮助。
MySQL高级篇——性能分析工具
|
12月前
|
SQL 分布式计算 关系型数据库
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
292 3
|
安全 关系型数据库 MySQL
Navicat工具设置MySQL权限的操作指南
通过上述步骤,您可以使用Navicat有效地为MySQL数据库设置和管理用户权限,确保数据库的安全性和高效管理。这个过程简化了数据库权限管理,使其既直观又易于操作。
1066 4
|
SQL 关系型数据库 MySQL
推荐一款高颜值的MySQL管理工具:Sequel Pro
推荐一款高颜值的MySQL管理工具:Sequel Pro
381 9
|
SQL 关系型数据库 MySQL
在Linux中,mysql 数据备份工具有哪些?
在Linux中,mysql 数据备份工具有哪些?

推荐镜像

更多