MySQL资料大全

MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
为了让开发者更好的了解使用MySQL,充分发挥其灵活性的优势。云栖社区组织翻译了GitHub Awesome MySQL 资源,其中不仅涵盖MySQL部署、开发、性能测试等操作中使用的工具包和库,还包括MySQL相关的会议、多媒体等资源。

目录

  •  MySQL
    • 分析
    • 备份
    • 性能测试
    • 聊天工具
    • 配置
    • 连接器
    • 部署
    • 开发
    • GUI
    • HA
    • 代理
    • 复制
    • 模式
    • 服务器
    • 分片
    • 工具包
  • 资源
    • 会议
    • 电子书
    • 多媒体
    • 新闻周刊

分析

性能、结构和数据分析工具

  •     Anemometer - Box SQL慢查询监控器
  •     innodb-ruby - Ruby中的InnoDB文件格式分析器
  •     innotop - innotop是一个MySQL的*克隆品,其功能多样化并兼具灵活性
  •     pstop - MySQL中的一个*应用程序,用于搜集、汇总和显示来自performance_schema中的信息
  •     mysql-statsd - 一个Python进程,用于从MySQL中收集信息,然后将其通过 StatsD发送到Graphite
  •    MySQLTuner-perl - 一个用于使用者快速回顾MySQL的安装过程,然后做出相应的调整以提高性能和稳定性的脚本

备份

备份/还原/恢复工具

  • MyDumper - MySQL中逻辑、并行备份/转存工具
  • MySQLDumper - 基于Web的开源备份工具-对共享虚拟主机很有帮助
  • Percona Xtrabackup - MySQL中的一个基于服务器的开源的热备份实用程序-在备份过程中不锁定你的数据库

性能测试

用于服务器压测的工具

  • iibench-mysql - MySQL/Percona/MariaDB中基于 Java 版本的索引插入性能测试工具
  • Sysbench -  一个模块化、跨平台以及多线程的性能测试工具

聊天工具

集成到聊天室的脚本

配置

 MySQL 配置实例及指导

连接器

多种编程语言的MySQL连接器

  •  Connector/Python - Python平台和开发的标准化数据库驱动程序
  •  go-sql-driver - 一个面向Go 语言的数据库/SQL包的轻量级极速的 MySQL 驱动程序
  • libAttachSQL - libAttachSQL MySQL 服务器的一个轻量级、非阻塞的C语言API
  • MariaDB Java Client - - 针对 Java 应用 MariaDB 客户端库,满足LGPL协议许可
  • MySQL-Python - 用于连接 Python 程序的 MySQL 数据库连接器
  • PHP mysqlnd - MySQL本地驱动,摒弃了过时的 libmysql 基础驱动

部署

MySQL 部署工具

  • MySQL Docker - Docker官方镜像
  • MySQL Sandbox - 可秒级安装一个或多个MySQL服务器的工具,该工具方便、安全且全控制

开发

MySQL相关的开发工具

  • Flywaydb - 数据库与迁移;任何情况下都可轻松可靠地演进数据库版本;Liquibase - 用于数据库的源码控制
  • Propagator 一个用于多维拓扑上集中模式和数据部署的工具

GUI

GUI前端和应用

  • Adminer - 用于单个PHP文件中的数据库管理
  • HeidiSQL - Windows系统中的MySQL GUI前端
  • MySQL Workbench - 为数据库管理员和开发者对数据库设计和建模提供了集成工具环境
  • phpMyAdmin - 一个由PHP语言编写的免费软件工具,目的是在Web上提供对MySQL的管理功能
  • SequelPro - Mac版本的MySQL 的数据库管理应用程序
  • mycli - 一个带自动补全和语法高亮的终端版 MySQL 客户端

HA

高可用性解决方案

  • Galera Cluster - 一个基于同步复制的真正的多主机集群方案
  • MHA -  针对 MySQL 的优秀的高可用管理器及工具
  • MySQL Fabric - 一个用于管理MySQL服务器集群的可扩展框架
  • Percona Replication Manager - MySQL 的异步复制管理代理。支持以文件和 GTID 为基础的复制,同时使用Booth 实现的地理位置分布式集群

代理

MySQL中的代理

  • MaxScale - 开源的、以数据库为中心的代理
  • Mixer - 由GO语言编写的MySQL代理,其目的是为MySQL分片提供一个简单的解决方案
  • MySQL Proxy - 一个处于你的客户端和MySQL服务器之间的简单应用程序,可以用于监控、分析或者转变二者的通信方式
  • ProxySQL - MySQL中的高性能代理
  • MySQL Router -MySQL Router是一个轻量级的中间件,为应用程序和后端MySQL服务器提供透明的路由路径

复制

与复制相关的软件

模式

附加模式

  • common_schema - MySQL的数据库管理员框架,提供了一个具有函数库、视图库和查询脚本的解释器
  • sys - 一个视图、函数和过程的集合,用来帮助 MySQL 管理人员更加深入理解 MySQL 数据库如何使用

服务器

MySQL服务器

  • MariaDB - MariaDB一个由社区开发的MySQL服务器的分支
  • MySQL Server & MySQL Cluster - Oracle官方的 MySQL 服务器和MySQL 集群分布
  • Percona Server - 一个加强版、可替代MySQL的新生服务器
  • WebScaleSQL - WebScaleSQL 的5.6版本,基于 MySQL 5.6 社区版本

分片

分片解决方案和框架

  • vitess - 针对大规模的 web 服务,vitess 同时提供服务和工具以便于 MySQL 数据库的缩放
  • jetpants - jetpants是由一个Tumblr 开发自动化套件,用于管理大规模分片集群

工具包

工具包、通用脚本

  • go-mysql - 一个纯 Go语言的库,用于处理 MySQL 中的网络协议和复制
  • MySQL Utilities - 一系列由Python编写的命令行工具,用于维护和管理单一或多层的MySQL服务器
  • Percona Toolkit - 一个先进的命令行工具集,用于处理 MySQL 服务器和系统中一些任务,这些任务如果采用手动处理的话过于困难或复杂
  • openark kit - 一组实用的工具,用于日常的维护工作,包括一些复杂的或需徒手操作的操作该工具用 Python 语言编写
  • UnDROP - 该工具恢复 InnoDB 表中删除或损坏的数据

资源

本节所述的资源不包括网站、博客、幻灯片、演示视频等

会议

围绕MySQL及其相关议题周期性的、公开的会议

  • FOSDEM - 一个免费的见面会活动,旨在帮助软件开发人员互相熟悉、交流思想与相互协作。每年在Brussels 举办,为MySQL和它的伙伴提供了场地
  • MySQL Central - Oracle年度MySQL大会,同时是 Oracle Open World的一部分
  • Percona Live - MySQL 和 OpenStack 的重要会议
  • SCALE - 一个每年在California南部召开,由 社区举办的Linux 和 开源软件大会。当地MySQL社区会以MySQL Community Day之名举办一次游行活动 

电子书

MySQL相关的电子书及其他资料

  • SQL-exercise - 包含多个SQL练习实例,包括架构描述、采用SQL语法去建立模式、SQL中的常见问题和解决方案。这些实例以 wikibook SQL 练习为基础

媒体

本节主要涵盖公开持续的视频和音频转播,不包括多如牛毛的会议演讲

  • DBHangOps - 由来自MySQL社区成员参加的Goole聚集大会,大会两周举办一次,大会的日常就是探讨一切与 MySQL 的相关事物
  • OurSQL Podcast - MySQL 数据库社区播客

新闻周刊

顾名思义,订阅新闻周刊需要一个 email 地址。下表所列的资源也仅需一个Email 地址就可以搞定


以上为“MySQL资料大全”所有内容,更多精彩敬请期待。


编译自:https://github.com/shlomi-noach/awesome-mysql/blob/gh-pages/index.md
译者:刘崇鑫   校对:王殿进 毛鹤

如果发现原文翻译有误,请邮件通知云栖社区(yqeditor@list.alibaba-inc.com),感谢您的支持。

【相关资料】阿里云RDS MySQL经过多年的积累,不断的进行性能优化,并定制了适合不同行业需求的功能,同时也向官方和社区贡献力量。云栖社区也组织了两场关于MySQL的两场在线培训,相关资料如下:
上一篇:数据结构与算法之冒泡排序优化


下一篇:风云的银光志Silverlight4.0教程之打印报表和图形