Monday, July 30, 2018

awesome mysql

awesome mysql


CONTENTS

  • Awesome MySQL
    • Analysis
    • Backup
    • Benchmarking
    • ChatOps
    • Configuration
    • Connectors
    • Deployment
    • Development
    • GUI
    • HA
    • Proxy
    • Replication
    • Schema
    • Server
    • Sharding
    • Toolkits
  • Resources
    • Conferences
    • E-Books
    • Media
    • Newsletters

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.
  • Prometheus/mysqld_exporter - Time series database for real-time monitoring and alerting.
  • 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.
  • MySQLTuner-perl - A script that allows you to review a MySQL installation quickly and make adjustments to increase performance and stability.
  • Percona Monitoring and Management - An open-source platform for managing and monitoring MySQL performance.
  • MySQL Explain Analyzer - A web-based analyzer of EXPLAIN FORMAT=JSON output, providing comments, scalability analysis and permalinks for saved samples.

    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.
  • TPCC-MySQL - A port of the popular TPCC benchmark for MySQL.

ChatOps

Scripts integrated into chat rooms
  • Hubot MySQL ChatOps

Configuration

MySQL sample configuration and advisors
  • mysql-compatibility-config - make MySQL configuration behave more like newer (or older) releases of MySQL.

Connectors

MySQL connectors for various programming languages
  • Connector/Python - a standardized database driver for Python platforms and development.
  • Connector/Net - a standardized database driver for .Net platforms and development.
  • Connector/J - a standardized database driver for the Java platforms and development.
  • DBD::mysql - MySQL driver for the Perl5 Database Interface.
  • 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.
  • mysqlclient-python - (Old) MySQL database connector for Python.
  • node-mysql - A pure Nodejs Javascript client implementing the MySQL protocol.
  • PHP mysqlnd - MySQL native driver for MySQL, deprecating older libmysql based driver.
  • PyMySQL - MySQL database connector for Python.
  • Ruby Mysql2 gem - MySQL driver for Ruby and Rails projects.

Deployment

MySQL deployment tools
  • MySQL Docker - Official Docker images.
  • dbdeployer - 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
  • Shift - An application that helps you run schema migrations on MySQL databases

GUI

GUI frontends & applications
  • Adminer - Database management in a single PHP file.
  • DataGrip - Cross-Platform IDE for Databases & SQL by JetBrains.
  • 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.
  • mycli - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.
  • SQLyog Community edition - SQLyog Community edition. For Windows, works fine under wine in Mac and Linux
  • Percona Monitoring and Management - An open-source platform for managing and monitoring MySQL performance.
  • pspg - provides a pager with enhanced visualization and navigation for tabular data. Originally implemented for PostgreSQL, but also supports MySQL.
  • Ocelot GUI - GUI client for MySQL or MariaDB, including debugger

HA

High availability solutions
  • Galera Cluster - a true Multimaster Cluster based on synchronous replication.
  • MariaDB Replication Manager - a high availability solution to manage MariaDB 10.x GTID 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.
  • MySQL Router - MySQL Router is lightweight middleware that provides transparent routing between your application and any backend MySQL Servers.

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
  • MariaDB - Community developed fork of MySQL server.
  • MySQL Server & MySQL Cluster - Official Oracle�s MySQL server & MySQL Cluster distribution.
  • Percona Server - An enhanced, drop-in MySQL replacement.

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.
  • gh-ost - GitHub�s online schema migration for MySQL.
  • 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.

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.
  • 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

e-books as well as relevant materials on and around MySQL
  • 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.

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
  • Weekly MySQL News - Unofficial weekly news digest of all things MySQL.


visit link download

No comments:

Post a Comment