awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
felixge avatar

felixge/node-mysql

0
View on GitHub↗
18,621 stars·2,515 forks·JavaScript·MIT·6 vues

Node Mysql

This project is a pure JavaScript database driver for Node.js that implements the native MySQL binary protocol. It serves as a comprehensive connector for managing persistent network links to MySQL servers, enabling applications to execute queries, manage transactions, and handle complex data operations without requiring external middleware.

The driver distinguishes itself through its integrated support for connection pooling and distributed database routing. It maintains managed sets of reusable network sockets to optimize resource usage under high request volumes, while simultaneously providing automated clustering capabilities to distribute traffic across multiple server nodes. These features are complemented by built-in security mechanisms, including template-based query sanitization and identifier escaping, which protect against injection vulnerabilities by automatically handling input formatting.

Beyond core connectivity, the library provides extensive support for memory-efficient data handling through stream-based result processing, allowing large datasets to be consumed row by row. It also includes robust observability and lifecycle management tools, such as communication tracing, connection health verification, and event-based monitoring for session states. The driver further supports advanced database interactions, including multi-statement execution, stored procedure handling, and secure data transmission via encrypted protocols.

Features

  • MySQL Connectors - Implements the native MySQL binary protocol to enable Node.js applications to execute queries and manage database connections.
  • Node.js Connectors - Connects Node.js applications to MySQL servers to execute queries, manage transactions, and handle data retrieval through a native protocol.
  • Connection Establishment - Establishes persistent network links to database servers using host details and authentication credentials to ensure reliable data access.
  • Connection Pools - Maintains a set of reusable database connections to optimize resource usage and handle high request volumes in web applications.
  • Parameterized SQL Templates - Prevents injection vulnerabilities by automatically escaping and binding user-provided values into SQL templates before transmission to the server.
  • Binary Protocols - Communicates directly with the database server using its binary wire protocol to eliminate the need for external middleware.
  • Database Connection Managers - Maintains a managed set of reusable network sockets to optimize resource usage and handle high volumes of concurrent database requests.
  • Database Transaction Wrappers - Provides mechanisms for wrapping multiple database queries within a single transaction session to ensure atomicity and data consistency.
  • Connection Pool Managers - Maintains a collection of reusable database connections with configurable limits and queuing behavior to optimize resource usage.
  • Database Wire Protocol Implementations - Communicates directly with the database server using its binary wire protocol without requiring external client libraries or middleware.
  • Placeholder-Based SQL Templates - Constructs secure query strings by injecting values into placeholders and applying automatic escaping to prevent injection.
  • Connection Pooling - Maintains a managed set of reusable network sockets to minimize the overhead of repeatedly establishing new database connections.
  • Relational Database Connectors - Establishes persistent network connections to relational databases for reliable data exchange and transaction management.
  • SQL Query Execution - Executes SQL statements and retrieves structured results including metadata like affected row counts and generated IDs.
  • Input Sanitization - Cleans and validates user-provided data to prevent SQL injection attacks through automatic escaping and placeholder substitution.
  • SQL Injection Prevention - Sanitizes user inputs and escapes query identifiers to ensure database commands are executed safely and protected against malicious injection attacks.
  • Cluster Connectivity - Distributes incoming database requests across multiple server nodes and automatically removes unresponsive nodes from the rotation.
  • Asynchronous Callbacks - Processes database operations using non-blocking callbacks to handle concurrent requests without stalling the main application thread.
  • Connection Health Maintenance - Performs automatic validation of database connections to ensure they remain active and responsive.
  • Distributed Databases - Distributes database requests across multiple server nodes to improve performance and ensure high availability through automated connection clustering.
  • Result Streaming - Provides memory-efficient incremental retrieval of database rows to handle large datasets without exhausting system memory.
  • Row-Based Result Streaming - Exposes query results as readable streams to allow memory-efficient handling of large datasets by processing rows as they arrive.
  • SQL Query Builders - Provides utilities for constructing and sanitizing SQL queries to prevent injection vulnerabilities.
  • Batch Statement Execution - Executes multiple SQL commands within a single request to process complex data operations efficiently.
  • Stored Procedures - Executes pre-defined database routines and processes multiple returned result sets using a consistent interface.
  • Connection Termination - Closes a connection to the database by finishing pending queries gracefully or by immediately destroying the underlying socket.
  • Connection Lifecycle Managers - Opens and gracefully closes database sessions, ensuring all pending operations complete before terminating the network link to the server.
  • Identifier Escaping - Sanitizes database, table, and column names to ensure they are treated as literal identifiers and prevent injection.
  • SSL/TLS Connection Security - Implements secure transport layers using SSL or TLS to encrypt database traffic between clients and servers.
  • Cluster Load Balancing - Distributes database traffic across multiple server nodes by monitoring connection health and routing queries based on configurable selection strategies.
  • Database Drivers - Provides a driver for interacting with relational databases.

Historique des stars

Graphique de l'historique des stars pour felixge/node-mysqlGraphique de l'historique des stars pour felixge/node-mysql

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Node Mysql

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Node Mysql.
  • mysqljs/mysqlAvatar de mysqljs

    mysqljs/mysql

    18,623Voir sur GitHub↗

    This project is a MySQL database driver and client for Node.js. It provides a JavaScript implementation of the MySQL protocol to facilitate connecting to, querying, and managing data within MySQL databases. The driver includes a connection pool manager to maintain a cache of reusable database connections, reducing the overhead of frequent network handshakes. It also supports row-by-row result streaming to process large datasets without loading entire result sets into memory. Core capabilities cover SQL query execution, the management of database transactions, and the coordination of multiple

    JavaScriptjavascriptmysqlnodejs
    Voir sur GitHub↗18,623
  • sidorares/node-mysql2Avatar de sidorares

    sidorares/node-mysql2

    4,369Voir sur 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
    Voir sur GitHub↗4,369
  • datlechin/tableproAvatar de datlechin

    datlechin/TablePro

    4,471Voir sur GitHub↗

    TablePro is a cross-platform database management client designed for browsing, querying, and administering both SQL and NoSQL databases. It functions as a unified workspace that integrates a code-centric SQL editor with schema visualization tools, allowing developers to manage complex data models and execute queries across diverse database engines. The application distinguishes itself through an agentic AI integration layer that connects language models directly to database tools, enabling automated query generation, optimization, and error fixing with configurable approval gates. It features

    Swift
    Voir sur GitHub↗4,471
  • porsager/postgresAvatar de porsager

    porsager/postgres

    8,566Voir sur GitHub↗

    This project is a PostgreSQL client library and SQL query builder for JavaScript and TypeScript. It provides a low-level database driver and connection manager to handle database sessions, along with a logical replication client for monitoring real-time changes. The library distinguishes itself with a high-performance bulk data streamer that utilizes the database copy command for importing and exporting large datasets. It also implements a logical replication protocol to facilitate real-time database synchronization through change subscriptions and channel-based notifications. The toolset co

    JavaScriptclientcockroachdbdatabase
    Voir sur GitHub↗8,566
Voir les 30 alternatives à Node Mysql→

Questions fréquentes

Que fait felixge/node-mysql ?

This project is a pure JavaScript database driver for Node.js that implements the native MySQL binary protocol. It serves as a comprehensive connector for managing persistent network links to MySQL servers, enabling applications to execute queries, manage transactions, and handle complex data operations without requiring external middleware.

Quelles sont les fonctionnalités principales de felixge/node-mysql ?

Les fonctionnalités principales de felixge/node-mysql sont : MySQL Connectors, Node.js Connectors, Connection Establishment, Connection Pools, Parameterized SQL Templates, Binary Protocols, Database Connection Managers, Database Transaction Wrappers.

Quelles sont les alternatives open-source à felixge/node-mysql ?

Les alternatives open-source à felixge/node-mysql incluent : mysqljs/mysql — This project is a MySQL database driver and client for Node.js. It provides a JavaScript implementation of the MySQL… sidorares/node-mysql2 — This project is a MySQL database driver for Node.js that establishes network connections and executes SQL queries… datlechin/tablepro — TablePro is a cross-platform database management client designed for browsing, querying, and administering both SQL… porsager/postgres — This project is a PostgreSQL client library and SQL query builder for JavaScript and TypeScript. It provides a… brianc/node-postgres — This project is a Node.js client for PostgreSQL databases, providing a protocol parser to translate raw binary streams… jeremyevans/sequel — Sequel is a relational database toolkit for Ruby that provides object-relational mapping, a fluent SQL query builder,…