# pandax-mesh **Repository Path**: panda-aicode/pandax-mesh ## Basic Information - **Project Name**: pandax-mesh - **Description**: 开发中,暂时不可用:数据库防火墙!数据库审计工具!数据库防水坝! - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-29 - **Last Updated**: 2025-11-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 正在积极开发中,暂时不可用:数据库防火墙!数据库审计工具!数据库防水坝! 项目 Pandax-Mesh 是一个基于 Rust 和 Node.js 的开源数据库网格解决方案,旨在提供高性能、可扩展的数据库代理和管理功能。以下是该项目的 README 内容: --- # Pandax Mesh Pandax Mesh 是一个开源的数据库网格中间件,支持多种数据库协议,提供 SQL 代理、防火墙、分片、分布式事务(XA)等功能。该项目分为两个主要组件: - **Data Plane(数据平面)**:使用 Rust 编写,负责处理数据库连接、查询路由、安全策略和事务管理。 - **Control Plane(控制平面)**:使用 Node.js 编写,提供 REST API 用于配置管理、监控和策略更新。 ## 架构概览 Pandax Mesh 的架构设计旨在实现高可用性和灵活性,主要组件包括: - **数据平面(Rust)**: - 支持 MySQL 和 PostgreSQL 协议。 - 提供 SQL 防火墙、查询缓存、分片、负载均衡和 XA 事务支持。 - 支持动态配置更新和运行时策略变更。 - **控制平面(Node.js)**: - 提供 REST API 用于管理配置、监控节点状态和更新策略。 - 支持与 Prometheus 集成,提供丰富的监控指标。 ## 主要功能 - **SQL 防火墙**:支持黑名单和白名单规则,防止恶意查询。 - **分片支持**:提供多种分片策略(哈希、范围、列表)。 - **XA 事务**:支持跨多个数据库的分布式事务。 - **查询缓存**:减少重复查询对后端数据库的压力。 - **负载均衡**:支持轮询和随机选择后端数据库节点。 - **监控与告警**:集成 Prometheus 和 Grafana,提供实时监控和告警功能。 ## 安装与部署 ### 使用 Docker Compose 部署 ```bash docker-compose up -d ``` ### 手动安装 1. **构建数据平面**: ```bash cd data-plane cargo build --release ``` 2. **构建控制平面**: ```bash cd control-plane npm install npm start ``` 3. **配置**:编辑 `control-plane/config.example.yaml` 文件以适应您的环境。 ## 使用示例 ### 连接数据库 使用 MySQL 客户端连接 Pandax Mesh: ```bash mysql -h 127.0.0.1 -P 3306 -u your_user -p ``` ### 更新 SQL 防火墙规则 通过 Control Plane 的 REST API 更新防火墙规则: ```bash curl -X POST http://localhost:3000/firewall/whitelist -d '{"rule": "SELECT * FROM users"}' ``` ## 文档 - [架构文档](docs/architecture.md) - [用户手册](docs/user_manual.md) - [操作手册](docs/operations_manual.md) - [灾难恢复指南](docs/disaster_recovery.md) ## 贡献 欢迎贡献代码和文档!请参考 [CONTRIBUTING.md](CONTRIBUTING.md) 获取更多信息。 ## 许可证 Pandax Mesh 使用 MIT 许可证。详情请查看 [LICENSE](LICENSE) 文件。 --- 该项目仍在积极开发中,欢迎社区参与和反馈。如果您有任何问题或建议,请在 [Gitee 仓库](https://gitee.com/panda-aicode/pandax-mesh) 中提交 Issue 或 Pull Request。