{"id":365,"url":"https://github.com/shlomi-noach/awesome-mysql","last_synced_at":"2025-05-14T02:04:50.272Z","repository":{"id":28754552,"uuid":"32276625","full_name":"shlomi-noach/awesome-mysql","owner":"shlomi-noach","description":"A curated list of awesome MySQL software, libraries, tools and resources","archived":false,"fork":false,"pushed_at":"2025-03-20T05:55:12.000Z","size":183,"stargazers_count":2438,"open_issues_count":15,"forks_count":380,"subscribers_count":120,"default_branch":"master","last_synced_at":"2025-05-12T23:49:46.295Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shlomi-noach.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-03-15T18:26:45.000Z","updated_at":"2025-05-12T13:02:34.000Z","dependencies_parsed_at":"2024-01-11T20:44:49.577Z","dependency_job_id":"3b4178cd-9686-407b-944e-12a7523694e1","html_url":"https://github.com/shlomi-noach/awesome-mysql","commit_stats":{"total_commits":137,"total_committers":31,"mean_commits":4.419354838709677,"dds":0.5109489051094891,"last_synced_commit":"eb8819f717f1a19858fc6e01c26636656df3e167"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shlomi-noach%2Fawesome-mysql","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shlomi-noach%2Fawesome-mysql/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shlomi-noach%2Fawesome-mysql/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shlomi-noach%2Fawesome-mysql/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shlomi-noach","download_url":"https://codeload.github.com/shlomi-noach/awesome-mysql/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254052669,"owners_count":22006716,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-01-05T20:12:52.981Z","updated_at":"2025-05-14T02:04:50.251Z","avatar_url":"https://github.com/shlomi-noach.png","language":null,"funding_links":[],"categories":["Databases","Technical","Database Drivers","Uncategorized","Relevant Awesome Lists","Others","学习资源","Related awesome lists","CSS","Live Site:   [searchAwesome](https://search-awesome.vercel.app/)",":paperclip: Other references \u003ca name=\"other-references\"\u003e\u003c/a\u003e","PIX Databases","Other Awesome Lists","工具, 服务","Related Awesome Lists","数据库","Python","Other Lists","Awesome","Don't forget to give a :star: to make the project popular","Database-Specific Resources","Themed Directories","Basic Concepts","🗃️ SQL \u0026 Databases","Database"],"sub_categories":["awesome-*","Uncategorized","GitHub Organizations","Tutorials",":capital_abcd: Organizational Practices \u003ca name=\"organizational-practices\"\u003e\u003c/a\u003e","Utilities","Misc","TeX Lists","Vite","MySQL","Updated in the last 6 months","Resources","Go"],"readme":"# awesome-mysql\n\nA curated list of awesome MySQL free and opensource software, libraries and resources. [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)\n\nThis list accepts and encourages pull requests. See [CONTRIBUTING](https://github.com/shlomi-noach/awesome-mysql/blob/master/CONTRIBUTING.md)\n\n### Contents\n\n- [Awesome MySQL](#awesome-mysql)\n    - [Analysis](#analysis)\n    - [Backup](#backup)\n    - [Benchmarking](#benchmarking)\n    - [Binlog Replication](#binlog-replication)\n    - [ChatOps](#chatops)\n    - [Configuration](#configuration)\n    - [Connectors](#connectors)\n    - [Deployment](#deployment)\n    - [Development](#development)\n    - [GUI](#gui)\n    - [HA](#ha)\n    - [Proxy](#proxy)\n    - [Replication](#replication)\n    - [Schema](#schema)\n    - [Security](#security)\n    - [Server](#server)\n    - [Sharding](#sharding)\n    - [Toolkits](#toolkits)\n\n- [Resources](#resources)\n    - [E-Books](#e-books)\n    - [Media](#media)\n    - [Newsletters](#newsletters)\n\n\n## Analysis\n\n*Performance, structure \u0026 data analysis tools*\n\n- [Anemometer](https://github.com/box/Anemometer) - Box SQL slow query monitor.\n- [innodb-ruby](https://github.com/jeremycole/innodb_ruby) - A parser for InnoDB file formats, in Ruby.\n- [innotop](https://github.com/innotop/innotop) - a 'top' clone for MySQL with many features and flexibility.\n- [MySQL Explain Analyzer](https://github.com/Preetam/explain-analyzer) - A web-based analyzer of `EXPLAIN FORMAT=JSON` output, providing comments, scalability analysis and permalinks for saved samples.\n- [mysql-statsd](https://github.com/db-art/mysql-statsd) - A Python daemon to collect information from MySQL and send it via StatsD to Graphite.\n- [MySQLTuner-perl](https://github.com/major/MySQLTuner-perl) - A script that allows you to review a MySQL installation quickly and make adjustments to increase performance and stability.\n- [Prometheus](https://github.com/prometheus/prometheus)/[mysqld_exporter](https://github.com/prometheus/mysqld_exporter) - Time series database for real-time monitoring and alerting.\n- [pstop](https://github.com/sjmudd/ps-top) - a top-like program for MySQL, collecting, aggregating and displaying information from performance_schema.\n- [Wireshark](https://gitlab.com/wireshark/wireshark/) - a protocol analyzer that can decode the MySQL protocol.\n- [Dolphie](https://github.com/charles-001/dolphie) - a modern terminal tool for real-time analytics into MySQL/MariaDB \u0026 ProxySQL\n\n## Backup\n\n*Backup/restore/recovery tools*\n\n- [Dumpling](https://github.com/pingcap/tidb/tree/master/dumpling) - Logical, parallel backup/dumper tool for MySQL/TiDB written in GoLang - support csv format output and integrated as library\n- [MyDumper](https://github.com/mydumper/mydumper) - Logical, parallel backup/dumper tool for MySQL\n- [Percona Xtrabackup](https://github.com/percona/percona-xtrabackup) - an open-source hot backup utility for MySQL - based servers that doesn’t lock your database during the backup.\n\n## Benchmarking\n\n*Tools to stress your servers*\n\n- [go-tpc](https://github.com/pingcap/go-tpc) - A golang port of [TPCC](http://www.tpc.org/tpcc/) and [TPCH](http://www.tpc.org/tpch/) benchmark for MySQL.\n- [iibench-mysql](https://github.com/tmcallaghan/iibench-mysql) - Java based version of the Index Insertion Benchmark for MySQL/Percona/MariaDB.\n- [Sysbench](https://github.com/akopytov/sysbench) - a modular, cross-platform and multi-threaded benchmark tool.\n- [TPCC-MySQL](https://github.com/Percona-Lab/tpcc-mysql) (archived) - A port of the popular [TPCC](http://www.tpc.org/tpcc/) benchmark for MySQL.\n\n## Binlog-Replication\n\n- [DM](https://github.com/pingcap/tiflow) - A High-Availability data migration platform which supports migrating data from MySQL/MariaDB to TiDB and merging shard tables\n- [Kingbus](https://github.com/flike/kingbus) - A distributed MySQL binlog storage system built on Raft\n- [mysql-ripple](https://github.com/google/mysql-ripple) (archived) - Ripple, a server that can serve as a middleman in MySQL replication\n\n## ChatOps\n\n*Scripts integrated into chat rooms*\n\n- [Hubot MySQL ChatOps](https://github.com/samlambert/hubot-mysql-chatops)\n\n## Configuration\n\n*MySQL sample configuration and advisors*\n\n- [mysql-compatibility-config](https://github.com/morgo/mysql-compatibility-config) - make MySQL configuration behave more like newer (or older) releases of MySQL.\n\n## Connectors\n\n*MySQL connectors for various programming languages*\n\n- [ballerinax/mysql](https://github.com/ballerina-platform/module-ballerinax-mysql) - Official Ballerina connector for MySQL.\n- [DBD::MariaDB](https://github.com/perl5-dbi/DBD-MariaDB) - MariaDB and MySQL driver for the Perl5 Database Interface.\n- [DBD::mysql](https://github.com/perl5-dbi/DBD-mysql) - MySQL driver for the Perl5 Database Interface.\n- [go-sql-driver](https://github.com/go-sql-driver/mysql) - a lightweight and fast MySQL-Driver for Go's (golang) database/sql package.\n- [libAttachSQL](https://github.com/libattachsql/libattachsql) - libAttachSQL is a lightweight, non-blocking C API for MySQL servers.\n- [MariaDB Connector/J](https://github.com/mariadb-corporation/mariadb-connector-j) - LGPL-licensed MariaDB Client Library for Java Applications.\n- [mex-mariadb](https://github.com/markuman/mex-mariadb) - MIT licensed MariaDB/MySQL Client Library for GNU Octave and Matlab.\n- [MySQL C API](https://dev.mysql.com/downloads/c-api/) - Official C driver for MySQL.\n- [MySQL Connector/C++](https://github.com/mysql/mysql-connector-cpp) - Official C/C++ driver for MySQL.\n- [MySQL Connector/J](https://github.com/mysql/mysql-connector-j) - a standardized database driver for the Java platforms and development.\n- [MySQL Connector/NET](https://github.com/mysql/mysql-connector-net) - a standardized database driver for .Net platforms and development.\n- [MySQL Connector/Node.js](https://github.com/mysql/mysql-connector-nodejs) - Official Node.js driver for MySQL.\n- [MySQL Connector/Python](https://github.com/mysql/mysql-connector-python) - a standardized database driver for Python platforms and development.\n- [mysqlclient-python](https://github.com/PyMySQL/mysqlclient) - MySQL database connector for Python.\n- [node-mysql](https://github.com/mysqljs/node) - A pure Nodejs Javascript client implementing the MySQL protocol.\n- [PHP mysqlnd](https://www.php.net/manual/en/book.mysqlnd.php) - MySQL native driver for PHP.\n- [PyMySQL](https://github.com/PyMySQL/PyMySQL) - MySQL database connector for Python.\n- [Ruby Mysql2 gem](https://github.com/brianmario/mysql2) - MySQL driver for Ruby and Rails projects.\n- [MyZql](https://github.com/speed2exe/myzql) - MySQL and MariaDB driver in native Zig.\n- [wtx](https://github.com/c410-f3r/wtx) - Client for MySQL/MariaDB/Percona written in Rust\n\n## Deployment\n\n*MySQL deployment tools*\n\n- [dbdeployer](https://github.com/datacharmer/dbdeployer) (archived) - A tool that installs one or more MySQL servers within seconds, easily, securely, and with full control.\n- [MariaDB4j](https://github.com/MariaDB4j/MariaDB4j) - A Java launcher to run MariaDB without installation or external dependencies.\n- [MySQL Docker](https://hub.docker.com/_/mysql/) - Official Docker images.\n\n\n## Development\n\n*Tools to support MySQL-related development*\n\n- [Flywaydb](https://github.com/flyway/flyway) - Database migrations; Evolve your database schema easily and reliably across all your instances\n- [Liquibase](https://github.com/liquibase/liquibase) - Source control for your database\n- [Shift](https://github.com/square/shift) - An application that helps you run schema migrations on MySQL databases\n- [Skeema](https://github.com/skeema/skeema) - Declarative pure-SQL schema management system for MySQL and MariaDB, with support for sharding and external online schema change tools\n- [SQLE](https://github.com/actiontech/sqle/blob/main/README_en.md) - SQLE is a SQL audit platform for DBA or developer\n- [Test database](https://github.com/datacharmer/test_db) - A sample MySQL database with an integrated test suite, used to test applications and servers\n\n## GUI\n\n*GUI frontends \u0026 applications*\n\n- [Adminer](https://github.com/vrana/adminer/) - Database management in a single PHP file.\n- [DBeaver](https://github.com/dbeaver/dbeaver/) - A cross-platform SQL and NoSQL database client.\n- [HeidiSQL](https://github.com/HeidiSQL/HeidiSQL) - MySQL GUI frontend for Windows.\n- [ILLA Cloud](https://github.com/illacloud/illa-builder) - Low-code internal tool builder integrated with Mysql, can be used as GUI for Mysql. \n- [mycli](https://github.com/dbcli/mycli) - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.\n- [MySQL Shell](https://github.com/mysql/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.\n- [MySQL Workbench](https://github.com/mysql/mysql-workbench) - provides DBAs and developers an integrated tools environment for database design \u0026 modeling; SQL devleopment; database administration.\n- [Ocelot GUI](https://github.com/ocelot-inc/ocelotgui) - GUI client for MySQL or MariaDB, including debugger.\n- [OmniDB: Web tool for database management](https://github.com/OmniDB/OmniDB)\n- [Percona Monitoring and Management](https://github.com/percona/pmm) - An open-source platform for managing and monitoring MySQL performance.\n- [phpMyAdmin](https://github.com/phpmyadmin/phpmyadmin) - a free software tool written in PHP, intended to handle the administration of MySQL over the Web.\n- [pspg](https://github.com/okbob/pspg) - provides a pager with enhanced visualization and navigation for tabular data. Originally implemented for PostgreSQL, but also supports MySQL.\n- [Sequel Ace](https://github.com/Sequel-Ace/Sequel-Ace) - a Mac database management application for working with MySQL databases.\n- [SQLyog Community edition](https://github.com/webyog/sqlyog-community) - SQLyog Community edition. For Windows, works fine under wine in Mac and Linux\n- [WebDB](https://github.com/WebDB-App/app) – 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\n\n## HA\n\n*High availability solutions*\n\n- [Galera Cluster](https://github.com/codership/galera) - a true Multimaster Cluster based on synchronous replication.\n- [mha4mysql-node](https://github.com/yoshinorim/mha4mysql-node) and [mha4mysql-manager](https://github.com/yoshinorim/mha4mysql-manager) (both unmaintained) - Master High Availability Manager and tools for MySQL.\n- [Orchestrator](https://github.com/openark/orchestrator) - MySQL replication topology management and High Availability solution.\n- [Percona Replication Manager](https://github.com/percona/replication-manager) - Asynchronous MySQL replication manager agent for Pacemaker. Supports file and GTID based replication, geo-distributed clusters using booth.\n- [replication-manager](https://github.com/signal18/replication-manager) - a high availability solution to manage MariaDB 10.x and MySQL \u0026 Percona Server 5.7 GTID replication topologies.\n\n## Proxy\n\n*Proxies to MySQL*\n\n- [MySQL Proxy](https://github.com/mysql/mysql-proxy) (deprecated) - A simple program that sits between your client and MySQL server(s) that can monitor, analyze or transform their communication.\n- [MySQL Router](https://dev.mysql.com/doc/mysql-router/en/) - MySQL Router is part of InnoDB cluster, and is a lightweight middleware that provides transparent routing between your application and back-end MySQL Servers.\n- [ProxySQL](https://github.com/sysown/proxysql) - High performance proxy for MySQL.\n\n## Replication\n\n*Replication related software*\n\n* [data-diff](https://github.com/datafold/data-diff) - Command-line tool and Python library to efficiently diff rows across two different databases.\n\n\n## Schema\n\n*Add-on schemas*\n\n- [common_schema](https://github.com/shlomi-noach/common_schema) - DBA's framework for MySQL, providing a function library, views library and QueryScript interpreter.\n- [sys](https://github.com/mysql/mysql-sys) - A collection of views, functions and procedures to help MySQL administrators get insight in to MySQL Database usage.\n\n\n## Security\n\n*Tools that prevents leaking of sensitive data from database (encryption, masking and tokenization, honey-pots, etc)*\n\n- [Acra](https://github.com/cossacklabs/acra) - SQL database protection suite: strong selective encryption, SQL injections prevention, intrusion detection system.\n- [myldapsync](https://github.com/6eh01der/myldapsync) - Synchronize MySQL or MariaDB users with users in an LDAP directory.\n\n## Server\n\n*MySQL server flavors*\n\n- [MariaDB](https://github.com/MariaDB/server) - Community developed fork of MySQL server.\n- [MySQL Server \u0026 MySQL Cluster](https://github.com/mysql/mysql-server) - Official Oracle's MySQL server \u0026 MySQL Cluster distribution.\n- [Percona Server](https://github.com/percona/percona-server) - An enhanced, drop-in MySQL replacement.\n- [TiDB](https://github.com/pingcap/tidb) - A distributed HTAP database compatible with the MySQL protocol.\n\n## Sharding\n\n*Sharding solutions/frameworks*\n\n- [Jetpants](https://github.com/tumblr/jetpants) - An automation suite for managing large range sharding clusters, by Tumblr.\n- [Vitess](https://github.com/vitessio/vitess) - vitess provides servers and tools which facilitate scaling of MySQL databases for large scale web services.\n\n\n## Toolkits\n\n*Toolkits, general purpose scripts*\n\n- [gh-ost](https://github.com/github/gh-ost/) - GitHub's online schema migration for MySQL.\n- [go-mysql](https://github.com/go-mysql-org/go-mysql) - A pure go library to handle MySQL network protocol and replication.\n- [MySQL Utilities](https://github.com/mysql/mysql-utilities) (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.\n- [Percona Toolkit](https://github.com/percona/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.\n- [UnDROP](https://github.com/twindb/undrop-for-innodb) - a tool to recover data from dropped or corrupted InnoDB tables.\n\n# Resources\n\n*At this stage \"resources\" will not include websites, blogs, slides, presentation videos, etc. in fear of list size*\n\n## e-books\n\n*e-books as well as relevant materials on and around MySQL*\n\n- [Database Systems Lecture Notes](http://spots.augusta.edu/caubert/db/ln/) - 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.\n- [SQL-exercise](https://github.com/XD-DENG/SQL-exercise) - contains several SQL exercises, including the schema description figure, SQL code to build schema, questions and solutions in SQL. Based on wikibook [SQL Exercises](https://en.wikibooks.org/wiki/SQL_Exercises).\n\n## Media\n\n*Public, ongoing video \u0026 audio casts. This excludes conference presentations in fear of list size*\n\n## Newsletters\n\n*Newsletters require an email address, by definition. List below are newsletters that require nothing but an email address*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshlomi-noach%2Fawesome-mysql","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshlomi-noach%2Fawesome-mysql","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshlomi-noach%2Fawesome-mysql/lists"}