Skip to content

Latest commit

 

History

History
202 lines (126 loc) · 9.42 KB

mysql_resources.md

File metadata and controls

202 lines (126 loc) · 9.42 KB
title category
MySQL
Languages

MySQL software, libraries and resources.

Contents

Analysis

Performance, structure & data analysis tools

  • Anemometer - Box SQL slow query monitor.
  • innodb-ruby - A parser for InnoDB file formats, in Ruby.
  • innotop - a 'top' clone for MySQL with many features and flexibility.
  • pstop - a top-like program for MySQL, collecting, aggregating and displaying information from performance_schema.
  • mysql-statsd - A Python daemon to collect information from MySQL and send it via StatsD to Graphite.

Backup

Backup/restore/recovery tools

  • MyDumper - Logical, parallel backup/dumper tool for MySQL
  • MySQLDumper - open-source web based backup tool - useful for shared webhosting
  • Percona Xtrabackup - an open-source hot backup utility for MySQL - based servers that doesn’t lock your database during the backup.

Benchmarking

Tools to stress your servers

  • iibench-mysql - Java based version of the Index Insertion Benchmark for MySQL/Percona/MariaDB.
  • Sysbench - a modular, cross-platform and multi-threaded benchmark tool.

ChatOps

Scripts integrated into chat rooms

Configuration

MySQL sample configuration and advisors

Connectors

MySQL connectors for various programming languages

  • Connector/Python - a standardized database driver for Python platforms and development.
  • go-sql-driver - a lightweight and fast MySQL-Driver for Go's (golang) database/sql package.
  • libAttachSQL - libAttachSQL is a lightweight, non-blocking C API for MySQL servers.
  • MariaDB Java Client - LGPL-licensed MariaDB Client Library for Java Applications.
  • MySQL-Python - MySQL database connector for Python programming.
  • PHP mysqlnd - MySQL native driver for MySQL, deprecating older libmysql based driver.

Deployment

MySQL deployment tools

  • MySQL Docker - Official Docker images.
  • MySQL Sandbox - a tool that installs one or more MySQL servers within seconds, easily, securely, and with full control.

Development

Tools to support MySQL-related development

  • Flywaydb - Database migrations; Evolve your database schema easily and reliably across all your instances
  • Liquibase - Source control for your database
  • Propagator - Centralized schema & data deployment on a multi-everything topology

GUI

GUI frontends & applications

  • Adminer - Database management in a single PHP file.
  • HeidiSQL - MySQL GUI frontend for Windows.
  • MySQL Workbench - provides DBAs and developers an integrated tools environment for database design & modeling; SQL devleopment; database administration.
  • phpMyAdmin - a free software tool written in PHP, intended to handle the administration of MySQL over the Web.
  • SequelPro - a Mac database management application for working with MySQL databases.

HA

High availability solutions

  • Galera Cluster - a true Multimaster Cluster based on synchronous replication.
  • MHA - Master High Availability Manager and tools for MySQL
  • MySQL Fabric - an extensible framework for managing farms of MySQL Servers.
  • Percona Replication Manager - Asynchronous MySQL replication manager agent for Pacemaker. Supports file and GTID based replication, geo-distributed clusters using booth.

Proxy

Proxies to MySQL

  • MaxScale - open-source, database-centric proxy.
  • Mixer - a MySQL proxy powered by Go which aims to supply a simple solution for MySQL sharding.
  • MySQL Proxy - A simple program that sits between your client and MySQL server(s) that can monitor, analyze or transform their communication.
  • ProxySQL - High performance proxy for MySQL.

Replication

Replication related software

  • orchestrator - MySQL replication topology management and visualization tool.
  • Tungsten Replicator - A high performance, open source, data replication engine for MySQL.

Schema

Add-on schemas

  • common_schema - DBA's framework for MySQL, providing a function library, views library and QueryScript interpreter.
  • sys - A collection of views, functions and procedures to help MySQL administrators get insight in to MySQL Database usage.

Server

MySQL server flavors

Sharding

Sharding solutions/frameworks

  • vitess - vitess provides servers and tools which facilitate scaling of MySQL databases for large scale web services.
  • jetpants - An automation suite for managing large range sharding clusters, by Tumblr.

Toolkits

Toolkits, general purpose scripts

  • go-mysql - A pure go library to handle MySQL network protocol and replication.
  • MySQL Utilities - a collection of command-line utilities, written in Python, that are used for maintaining and administering MySQL servers, either individually, or within Replication hierarchies.
  • Percona Toolkit - a collection of advanced command-line tools to perform a variety of MySQL server and system tasks that are too difficult or complex to perform manually.
  • openark kit - a set of utilities that solve everyday maintenance tasks, which may be complicated or time consuming to do by hand, written in Python.
  • UnDROP - a tool to recover data from dropped or corrupted InnoDB tables.
  • SQLAlchemy - An ORM that support MySQL for python language.

Resources

At this stage "resources" will not include websites, blogs, slides, presentation videos, etc. in fear of list size

##Conferences

Public, recurring conferences on and around MySQL

  • FOSDEM - a free event for software developers to meet, share ideas and collaborate. Annually, in Brussels. Offers "MySQL & friends" room.
  • MySQL Central - Oracle's annual MySQL conference, as part of Oracle Open World.
  • Percona Live - MySQL & Openstack focused conference.

Media

Public, ongoing video & audio casts. This excludes conference presentations in fear of list size

  • DBHangOps - a bi-weekly google hangout meeting of various members of the MySQL community that simply want to talk shop about MySQL in their day-to-day .
  • OurSQL Podcast - The MySQL database community podcast.

Newsletters

Newsletters require an email address, by definition. List below are newsletters that require nothing but an email address