Track Awesome Mysql Updates Weekly
A curated list of awesome MySQL software, libraries, tools and resources
🏠 Home · 🔍 Search · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 shlomi-noach/awesome-mysql · ⭐ 2.3K · 🏷️ Databases
Aug 19 - Aug 25, 2024
Analysis
- Dolphie (⭐565) - a modern terminal tool for real-time analytics into MySQL/MariaDB & ProxySQL
Jul 08 - Jul 14, 2024
Connectors
- MyZql (⭐21) - MySQL and MariaDB driver in native Zig.
Deployment
- MariaDB4j (⭐828) - A Java launcher to run MariaDB without installation or external dependencies.
Jun 03 - Jun 09, 2024
Analysis
- Prometheus (⭐54k)/mysqld_exporter (⭐2.1k) - Time series database for real-time monitoring and alerting.
Connectors
- DBD::MariaDB (⭐32) - MariaDB and MySQL driver for the Perl5 Database Interface.
- DBD::mysql (⭐61) - MySQL driver for the Perl5 Database Interface.
- MariaDB Connector/J (⭐329) - LGPL-licensed MariaDB Client Library for Java Applications.
- MySQL C API - Official C driver for MySQL.
- MySQL Connector/C++ (⭐616) - Official C/C++ driver for MySQL.
- MySQL Connector/J (⭐885) - a standardized database driver for the Java platforms and development.
- MySQL Connector/NET (⭐286) - a standardized database driver for .Net platforms and development.
- MySQL Connector/Node.js (⭐150) - Official Node.js driver for MySQL.
- MySQL Connector/Python (⭐867) - a standardized database driver for Python platforms and development.
- PHP mysqlnd - MySQL native driver for PHP.
Deployment
- dbdeployer (⭐704) (archived) - A tool that installs one or more MySQL servers within seconds, easily, securely, and with full control.
Development
- Flywaydb (⭐8k) - Database migrations; Evolve your database schema easily and reliably across all your instances
- Liquibase (⭐4.6k) - Source control for your database
- Skeema (⭐1.3k) - Declarative pure-SQL schema management system for MySQL and MariaDB, with support for sharding and external online schema change tools
- SQLE (⭐1.4k) - SQLE is a SQL audit platform for DBA or developer
GUI
- Adminer (⭐6.2k) - Database management in a single PHP file.
- DBeaver (⭐39k) - A cross-platform SQL and NoSQL database client.
- HeidiSQL (⭐4.7k) - MySQL GUI frontend for Windows.
- MySQL Shell (⭐183) - 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 (⭐878) - provides DBAs and developers an integrated tools environment for database design & modeling; SQL devleopment; database administration.
- Percona Monitoring and Management (⭐591) - An open-source platform for managing and monitoring MySQL performance.
- phpMyAdmin (⭐7.2k) - a free software tool written in PHP, intended to handle the administration of MySQL over the Web.
HA
- Galera Cluster (⭐444) - a true Multimaster Cluster based on synchronous replication.
- mha4mysql-node (⭐400) and mha4mysql-manager (⭐1.5k) (both unmaintained) - Master High Availability Manager and tools for MySQL.
- Orchestrator (⭐5.6k) - MySQL replication topology management and High Availability solution.
Proxy
- MySQL Proxy (⭐419) (deprecated) - A simple program that sits between your client and MySQL server(s) that can monitor, analyze or transform their communication.
Server
- Percona Server (⭐1.1k) - An enhanced, drop-in MySQL replacement.
Sharding
- Jetpants (⭐1.1k) - An automation suite for managing large range sharding clusters, by Tumblr.
- Vitess (⭐18k) - vitess provides servers and tools which facilitate scaling of MySQL databases for large scale web services.
Toolkits
- MySQL Utilities (⭐265) (deprecated) - 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 (⭐1.1k) - 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.
May 27 - Jun 02, 2024
Analysis
- MySQLTuner-perl (⭐8.8k) - A script that allows you to review a MySQL installation quickly and make adjustments to increase performance and stability.
- Wireshark - a protocol analyzer that can decode the MySQL protocol.
Backup
- Dumpling (⭐37k) - Logical, parallel backup/dumper tool for MySQL/TiDB written in GoLang - support csv format output and integrated as library
- MyDumper (⭐2.5k) - Logical, parallel backup/dumper tool for MySQL
- Percona Xtrabackup (⭐1.3k) - an open-source hot backup utility for MySQL - based servers that doesn’t lock your database during the backup.
Benchmarking
- TPCC-MySQL (⭐477) (archived) - A port of the popular TPCC benchmark for MySQL.
Binlog-Replication
- DM (⭐417) - A High-Availability data migration platform which supports migrating data from MySQL/MariaDB to TiDB and merging shard tables
Connectors
- mysqlclient-python (⭐2.4k) - MySQL database connector for Python.
- node-mysql - A pure Nodejs Javascript client implementing the MySQL protocol.
GUI
- SQLyog Community edition (⭐2.2k) - SQLyog Community edition. For Windows, works fine under wine in Mac and Linux
- WebDB (⭐157) – Open Source and Efficient Database IDE. Featuring Easy server connection, Modern ERD, Intelligent data generator, AI assistant, NoSQL structure manager, Time machine and Powerful query editor
Proxy
- ProxySQL (⭐5.9k) - High performance proxy for MySQL.
Toolkits
- go-mysql (⭐4.5k) - A pure go library to handle MySQL network protocol and replication.
- UnDROP (⭐380) - a tool to recover data from dropped or corrupted InnoDB tables.
Sep 25 - Oct 01, 2023
HA
- Percona Replication Manager (⭐3) - Asynchronous MySQL replication manager agent for Pacemaker. Supports file and GTID based replication, geo-distributed clusters using booth.
Jan 30 - Feb 05, 2023
GUI
- ILLA Cloud (⭐11k) - Low-code internal tool builder integrated with Mysql, can be used as GUI for Mysql.
Jun 20 - Jun 26, 2022
Replication
- data-diff (⭐2.9k) - Command-line tool and Python library to efficiently diff rows across two different databases.
Oct 04 - Oct 10, 2021
GUI
- Sequel Ace (⭐6.6k) - a Mac database management application for working with MySQL databases.
Sep 21 - Sep 27, 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.
Aug 03 - Aug 09, 2020
Benchmarking
- go-tpc (⭐176) - A golang port of TPCC and TPCH benchmark for MySQL.
Jun 03 - Jun 09, 2019
Development
- Test database (⭐4k) - A sample MySQL database with an integrated test suite, used to test applications and servers
Apr 15 - Apr 21, 2019
Binlog-Replication
- Kingbus (⭐888) - A distributed MySQL binlog storage system built on Raft
- mysql-ripple (⭐369) (archived) - Ripple, a server that can serve as a middleman in MySQL replication
Jan 28 - Feb 03, 2019
Connectors
- mex-mariadb (⭐2) - MIT licensed MariaDB/MySQL Client Library for GNU Octave and Matlab.
Dec 24 - Dec 30, 2018
Analysis
- Anemometer (⭐1.4k) - Box SQL slow query monitor.
- innodb-ruby (⭐1.6k) - A parser for InnoDB file formats, in Ruby.
- innotop (⭐753) - a 'top' clone for MySQL with many features and flexibility.
- MySQL Explain Analyzer (⭐92) - 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.
- pstop (⭐202) - a top-like program for MySQL, collecting, aggregating and displaying information from performance_schema.
Benchmarking
- iibench-mysql (⭐46) - Java based version of the Index Insertion Benchmark for MySQL/Percona/MariaDB.
- Sysbench (⭐6k) - a modular, cross-platform and multi-threaded benchmark tool.
ChatOps
Configuration
- mysql-compatibility-config (⭐94) - make MySQL configuration behave more like newer (or older) releases of MySQL.
Connectors
- go-sql-driver (⭐14k) - a lightweight and fast MySQL-Driver for Go's (golang) database/sql package.
- libAttachSQL (⭐31) - libAttachSQL is a lightweight, non-blocking C API for MySQL servers.
- PyMySQL (⭐7.6k) - MySQL database connector for Python.
- Ruby Mysql2 gem (⭐2.2k) - MySQL driver for Ruby and Rails projects.
Deployment
- MySQL Docker - Official Docker images.
Development
- Shift (⭐738) - An application that helps you run schema migrations on MySQL databases
GUI
- mycli (⭐11k) - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.
- Ocelot GUI (⭐61) - GUI client for MySQL or MariaDB, including debugger.
- pspg (⭐2.4k) - provides a pager with enhanced visualization and navigation for tabular data. Originally implemented for PostgreSQL, but also supports MySQL.
HA
- replication-manager (⭐646) - a high availability solution to manage MariaDB 10.x and MySQL & Percona Server 5.7 GTID replication topologies.
Proxy
- 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 (⭐128) - DBA's framework for MySQL, providing a function library, views library and QueryScript interpreter.
- sys (⭐826) - A collection of views, functions and procedures to help MySQL administrators get insight in to MySQL Database usage.
Security
- Acra (⭐1.3k) - SQL database protection suite: strong selective encryption, SQL injections prevention, intrusion detection system.
Server
- MariaDB (⭐5.5k) - Community developed fork of MySQL server.
- MySQL Server & MySQL Cluster (⭐11k) - Official Oracle's MySQL server & MySQL Cluster distribution.
- TiDB (⭐37k) - A distributed HTAP database compatible with the MySQL protocol.
Toolkits
- gh-ost (⭐12k) - GitHub's online schema migration for MySQL.
e-books
- SQL-exercise (⭐1.3k) - contains several SQL exercises, including the schema description figure, SQL code to build schema, questions and solutions in SQL. Based on wikibook SQL Exercises.