awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
siddontang avatar

siddontang/go-mysql

0
View on GitHub↗
4,953 stars·1,061 forks·Go·MIT·24 views

Go Mysql

go-mysql is a toolkit for the Go programming language designed for implementing MySQL protocol handlers, binary log replication systems, mock servers, and schema parsing utilities. It provides the necessary libraries to interact with MySQL servers through native network protocols and binary log streams.

The project enables the creation of custom database proxies or mock servers by parsing and decoding low-level network packets. It also includes a replication tool for streaming and processing binary logs to synchronize data across different storage systems, alongside a schema parser for extracting and analyzing database structural definitions.

The toolkit covers a broad range of database integration capabilities, including connection management, query execution, and the management of real-time data replication workflows. It also supports the automation of schema migrations and the synchronization of records to external storage systems.

Features

  • MySQL Driver Toolkits - Provides a comprehensive set of Go libraries for interacting with MySQL servers via native network protocols and binary log streams.
  • Binlog-Based Replication Management - Implements a complete system for streaming and processing MySQL binary logs to synchronize data across storage systems.
  • Binary Log Streaming Tools - Provides utilities for reading and forwarding MySQL binary log events for real-time synchronization.
  • Protocol Packet Parsers - Decomposes raw binary network streams into protocol-specific MySQL packets for direct server communication.
  • Database Replication Tools - Maintains data consistency by replicating incremental changes between MySQL database instances.
  • Real-Time Data Replication - Synchronizes database changes in real-time by processing MySQL binary log events.
  • MySQL Administration Tools - Provides a toolkit for building custom applications that manage and interact with MySQL databases in Go.
  • MySQL Integrations - Provides driver-level capabilities for executing MySQL queries and streaming results via callbacks.
  • MySQL Wire Protocol Servers - Implements a framework for creating compatible servers that communicate with clients using the standard MySQL wire protocol.
  • Native Client Drivers - Implements a low-level native client driver for direct communication with MySQL servers using network packets.
  • Binlog Event Streams - Implements the logic to read and parse MySQL binary log event streams for real-time data synchronization.
  • Network Packet Parsers - Decodes raw wire-format network packets into structured data to build custom MySQL communication protocols.
  • MySQL Protocol Implementations - Provides low-level parsing and decoding of MySQL network packets to enable the construction of custom proxies and mock servers.
  • Stream Replicators - Continuously replicates records from binary logs to external storage or secondary databases asynchronously.
  • Database Protocol Mocks - Implements the MySQL wire protocol to simulate server behavior for testing client requests and authentication.
  • Database Connection Managers - Provides utilities for managing persistent and secure connections to MySQL servers using DSNs.
  • Database Schema Migrations - Automates the application of structural updates to database schemas to maintain organizational consistency.
  • External System Synchronization - Synchronizes database records and incremental changes with external systems like caches or search engines.
  • MySQL Schema Management - Extracts and manipulates structural metadata to automate MySQL database migrations.
  • Schema Parsers - Includes a schema parser for extracting and analyzing database structural definitions to automate migrations and organization.
  • Row-Level Result Callbacks - Provides row-level callbacks to stream large query result sets while minimizing memory consumption.
  • Database Tools - Toolkit for handling MySQL protocols and replication.
  • Database Utilities - Tooling for MySQL protocol handling and replication.
  • Database Tools - Toolset for handling MySQL protocol and replication.

Star history

Star history chart for siddontang/go-mysqlStar history chart for siddontang/go-mysql

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Go Mysql

These projects share indexed features with Go Mysql. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • go-mysql-org/go-mysqlgo-mysql-org avatar

    go-mysql-org/go-mysql

    4,954View on GitHub↗

    go-mysql is a toolkit for MySQL database integration, providing a native client driver and the capabilities to implement custom MySQL-compatible servers or proxies. It enables applications to communicate with MySQL servers through standard SQL interface patterns. The project provides specialized support for real-time data synchronization by streaming binary log events. This allows database changes to be captured and pushed into external data stores, search engines, or caches to maintain consistency. The library includes tools for memory-efficient large dataset processing, utilizing query res

    Go
    View on GitHub↗4,954
  • sidorares/node-mysql2sidorares avatar

    sidorares/node-mysql2

    4,369View on GitHub↗

    This project is a MySQL database driver for Node.js that establishes network connections and executes SQL queries using a native communication protocol. It functions as an asynchronous SQL client, providing a promise-based query interface and support for async/await patterns to manage non-blocking database operations. The library includes a full MySQL protocol implementation, serving as a toolkit for building custom database servers, proxies, or clients. It also operates as a connection pool manager and an injection prevention tool, utilizing prepared statements and parameterized queries to s

    TypeScript
    View on GitHub↗4,369
  • github/gh-ostgithub avatar

    github/gh-ost

    13,409View on GitHub↗

    gh-ost is a triggerless online schema migration tool for MySQL. It functions as a replication client and table management utility that synchronizes data from a source table to a shadow table using binary logs, allowing for table structure modifications without locking original tables or causing downtime. The tool distinguishes itself by using binary-log-based replication instead of triggers to stream row-based events to a shadow table. It implements load-aware throttling and dynamic performance tuning to adjust migration speed based on server load and replication lag. Users can monitor and ad

    Go
    View on GitHub↗13,409
  • pymysql/pymysqlPyMySQL avatar

    PyMySQL/PyMySQL

    7,842View on GitHub↗

    PyMySQL is a MySQL database connector and SQL database driver for Python environments. It serves as a client library that enables Python applications to establish network connections and interact with MySQL database servers. The library is a pure Python implementation of the MySQL client-server wire protocol. This design allows for MySQL integration and data management without requiring native C extensions. The project provides capabilities for database connectivity, query execution, and secure access control. It follows the DB-API 2.0 specification to provide a consistent interface for mana

    Pythonmysqlpython
    View on GitHub↗7,842
Compare all 30 related projects→

Frequently asked questions

What does siddontang/go-mysql do?

go-mysql is a toolkit for the Go programming language designed for implementing MySQL protocol handlers, binary log replication systems, mock servers, and schema parsing utilities. It provides the necessary libraries to interact with MySQL servers through native network protocols and binary log streams.

What are the main features of siddontang/go-mysql?

The main features of siddontang/go-mysql are: MySQL Driver Toolkits, Binlog-Based Replication Management, Binary Log Streaming Tools, Protocol Packet Parsers, Database Replication Tools, Real-Time Data Replication, MySQL Administration Tools, MySQL Integrations.

Which projects share features with siddontang/go-mysql?

Projects with overlapping indexed features include: go-mysql-org/go-mysql — go-mysql is a toolkit for MySQL database integration, providing a native client driver and the capabilities to… sidorares/node-mysql2 — This project is a MySQL database driver for Node.js that establishes network connections and executes SQL queries… github/gh-ost — gh-ost is a triggerless online schema migration tool for MySQL. It functions as a replication client and table… pymysql/pymysql — PyMySQL is a MySQL database connector and SQL database driver for Python environments. It serves as a client library… realm/realm-java — Realm Java is a NoSQL mobile object database and reactive database engine. It provides a persistent local data store… flike/kingshard — Kingshard is a MySQL database proxy and sharding middleware that routes SQL traffic between clients and multiple…