Track Awesome Mysql Updates Daily
A curated list of awesome MySQL software, libraries, tools and resources
🏠 Home · 🔍 Search · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 shlomi-noach/awesome-mysql · ⭐ 2K · 🏷️ Databases
Feb 03, 2023
GUI
- ILLA Cloud (⭐4.8k) - Low-code internal tool builder integrated with Mysql, can be used as GUI for Mysql.
Jun 23, 2022
Replication
- data-diff (⭐2.1k) - Command-line tool and Python library to efficiently diff rows across two different databases.
Oct 06, 2021
GUI
- Sequel Ace (⭐5.3k) - a Mac database management application for working with MySQL databases.
Sep 15, 2020
e-books
- Database Systems Lecture Notes - lecture notes on Database Systems (available in pdf, html, odt and markdown) including a Chapter on SQL that covers basic set-up, exercises and problems.
Jul 30, 2020
Backup
- Dumpling (⭐268) - Logical, parallel backup/dumper tool for MySQL/TiDB written in GoLang - support csv format output and integrated as library
Benchmarking
- go-tpc (⭐132) - A golang port of TPCC and TPCH benchmark for MySQL.
Binlog-Replication
- DM (⭐456) - A High-Availability data migration platform which supports migrating data from MySQL/MariaDB to TiDB and merging shard tables
Apr 30, 2020
Development
- Skeema - Declarative pure-SQL schema management system for MySQL and MariaDB, with support for sharding and external online schema change tools
May 31, 2019
Development
- Test database (⭐3.3k) - A sample MySQL database with an integrated test suite, used to test applications and servers
May 24, 2019
GUI
Apr 08, 2019
Binlog-Replication
- Kingbus (⭐856) - A distributed MySQL binlog storage system built on Raft
- mysql-ripple (⭐367) - Ripple, a server that can serve as a middleman in MySQL replication
Jan 26, 2019
Connectors
- mex-mariadb (⭐1) - MIT licensed MariaDB/MySQL Client Library for GNU Octave and Matlab.
Dec 25, 2018
Analysis
- Anemometer (⭐1.4k) - Box SQL slow query monitor.
- innodb-ruby (⭐1.4k) - A parser for InnoDB file formats, in Ruby.
- innotop (⭐698) - a 'top' clone for MySQL with many features and flexibility.
- MySQL Explain Analyzer (⭐73) - A web-based analyzer of
EXPLAIN FORMAT=JSON
output, providing comments, scalability analysis and permalinks for saved samples.
- mysql-statsd (⭐99) - A Python daemon to collect information from MySQL and send it via StatsD to Graphite.
- MySQLTuner-perl - A script that allows you to review a MySQL installation quickly and make adjustments to increase performance and stability.
- Prometheus/mysqld_exporter (⭐1.7k) - Time series database for real-time monitoring and alerting.
- pstop (⭐195) - a top-like program for MySQL, collecting, aggregating and displaying information from performance_schema.
GUI
- Percona Monitoring and Management - An open-source platform for managing and monitoring MySQL performance.
- Adminer - Database management in a single PHP file.
- HeidiSQL - MySQL GUI frontend for Windows.
- mycli (⭐11k) - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.
- MySQL Shell - Advanced client and code editor for MySQL that supports development and administration for the MySQL Server and MySQL InnoDB cluster (AdminAPI) with an interactive JavaScript, Python, or SQL interface.
- MySQL Workbench - provides DBAs and developers an integrated tools environment for database design & modeling; SQL devleopment; database administration.
- Ocelot GUI (⭐54) - GUI client for MySQL or MariaDB, including debugger.
- phpMyAdmin - a free software tool written in PHP, intended to handle the administration of MySQL over the Web.
- pspg (⭐2k) - provides a pager with enhanced visualization and navigation for tabular data. Originally implemented for PostgreSQL, but also supports MySQL.
- SQLyog Community edition (⭐1.8k) - SQLyog Community edition. For Windows, works fine under wine in Mac and Linux
- DBeaver (⭐30k) - A cross-platform SQL and NoSQL database client.
Backup
- MyDumper (⭐1.9k) - 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
- iibench-mysql (⭐45) - Java based version of the Index Insertion Benchmark for MySQL/Percona/MariaDB.
- Sysbench (⭐5k) - a modular, cross-platform and multi-threaded benchmark tool.
- TPCC-MySQL - A port of the popular TPCC benchmark for MySQL.
ChatOps
Configuration
- mysql-compatibility-config (⭐95) - make MySQL configuration behave more like newer (or older) releases of MySQL.
Connectors
- Connector/C - Official C driver for MySQL.
- Connector/CPP - Official C++ driver for MySQL.
- Connector/J - a standardized database driver for the Java platforms and development.
- Connector/Net - a standardized database driver for .Net platforms and development.
- Connector/Node.js - Official Node.js driver for MySQL.
- Connector/Python - a standardized database driver for Python platforms and development.
- DBD::mysql - MySQL driver for the Perl5 Database Interface.
- go-sql-driver (⭐13k) - a lightweight and fast MySQL-Driver for Go's (golang) database/sql package.
- libAttachSQL (⭐32) - libAttachSQL is a lightweight, non-blocking C API for MySQL servers.
- MariaDB Java Client - LGPL-licensed MariaDB Client Library for Java Applications.
- mysqlclient-python (⭐2.2k) - (Old) MySQL database connector for Python.
- node-mysql (⭐18k) - A pure Nodejs Javascript client implementing the MySQL protocol.
- PHP mysqlnd - MySQL native driver for MySQL, deprecating older libmysql based driver.
- PyMySQL (⭐7.2k) - MySQL database connector for Python.
- Ruby Mysql2 gem (⭐2.2k) - MySQL driver for Ruby and Rails projects.
Deployment
- MySQL Docker - Official Docker images.
- dbdeployer - A tool that installs one or more MySQL servers within seconds, easily, securely, and with full control.
Development
- Flywaydb - Database migrations; Evolve your database schema easily and reliably across all your instances
- Liquibase - Source control for your database
- Shift (⭐729) - An application that helps you run schema migrations on MySQL databases
HA
- Galera Cluster - a true Multimaster Cluster based on synchronous replication.
- MHA - Master High Availability Manager and tools for MySQL.
- orchestrator (⭐4.8k) - MySQL replication topology management and High Availability solution.
- Percona Replication Manager (⭐78) - Asynchronous MySQL replication manager agent for Pacemaker. Supports file and GTID based replication, geo-distributed clusters using booth.
- replication-manager (⭐559) - a high availability solution to manage MariaDB 10.x and MySQL & Percona Server 5.7 GTID replication topologies.
Proxy
- MaxScale (⭐1.3k) - open-source, database-centric proxy.
- Mixer (⭐745) - 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 (⭐24) - High performance proxy for MySQL.
- MySQL Router - MySQL Router is part of InnoDB cluster, and is a lightweight middleware that provides transparent routing between your application and back-end MySQL Servers.
Schema
- common_schema (⭐119) - DBA's framework for MySQL, providing a function library, views library and QueryScript interpreter.
- sys (⭐811) - A collection of views, functions and procedures to help MySQL administrators get insight in to MySQL Database usage.
Security
- Acra (⭐1.1k) - SQL database protection suite: strong selective encryption, SQL injections prevention, intrusion detection system.
Server
- MariaDB (⭐4.7k) - Community developed fork of MySQL server.
- MySQL Server & MySQL Cluster (⭐8.7k) - Official Oracle's MySQL server & MySQL Cluster distribution.
- Percona Server - An enhanced, drop-in MySQL replacement.
- TiDB (⭐33k) - A distributed HTAP database compatible with the MySQL protocol.
Sharding
- jetpants (⭐1.1k) - An automation suite for managing large range sharding clusters, by Tumblr.
- vitess (⭐15k) - vitess provides servers and tools which facilitate scaling of MySQL databases for large scale web services.
Toolkits
- gh-ost (⭐11k) - GitHub's online schema migration for MySQL.
- go-mysql (⭐3.9k) - 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.
- 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.
- 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.
- UnDROP - a tool to recover data from dropped or corrupted InnoDB tables.
Conferences
- 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.
- SCALE - A community organized Linux and Open Source conference held annually in Southern California. The local MySQL community runs a track under the name MySQL Community Day.
e-books
- SQL-exercise (⭐1.1k) - contains several SQL exercises, including the schema description figure, SQL code to build schema, questions and solutions in SQL. Based on wikibook SQL Exercises.