A Ballerina library for connecting to and performing operations on MySQL databases, including change data capture.
Ballerina MySQL is a library that provides a native Ballerina interface for connecting to and interacting with MySQL databases. It allows developers to perform standard SQL operations, manage connections with pooling and SSL, and listen to real-time database changes via change data capture. It solves the problem of integrating MySQL databases into Ballerina applications with type safety and idiomatic Ballerina constructs.
Ballerina developers building applications that require MySQL database connectivity, especially those needing real-time data monitoring or efficient connection management.
Developers choose this library because it offers a seamless, type-safe integration with Ballerina's language features, supports advanced capabilities like change data capture, and provides performance optimizations through configurable connection pooling and GraalVM compatibility.
Ballerina mysql Module
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages Ballerina's type system for compile-time checks on parameterized queries, reducing runtime errors as demonstrated in the query and execute examples.
Includes a dedicated CDC listener for monitoring inserts, updates, and deletes in real-time, with detailed setup and service implementation in the README.
Supports global, client-owned, and local shareable pools for performance optimization, with clear configuration options in the connection pool handling section.
Works with GraalVM native builds when using the bundled mysql.driver module, enabling efficient deployment in resource-constrained environments.
Exclusively designed for Ballerina, making it useless for projects in other languages and tying you to Ballerina's tooling and lifecycle.
Requires manual configuration of MySQL binary logging with server restarts, adding administrative overhead and potential for misconfiguration.
Users must handle MySQL driver versions explicitly via dependencies or bundled modules, increasing setup complexity compared to auto-managed systems.