2021信创“大比武”鲲鹏基础软件开发赛道 基于Rust语言的openGauss驱动
基于Rust语言的openGauss驱动 目录 1. 背景及要求 2. 方案介绍 3. 遇到的问题 4. 团队简介 3 背景 Rust是一门新兴的系统编程语言 ,专注于安全 ,尤其是并发安全,支持函数式和命令式以及泛型等编程范 式的多范式语言。 openGauss数据库是一款高性能、高安全的数据库,社区支持Rust驱动可以更方便Rust语言开发者更好地基 于openGauss开发Rust应用。 于openGauss开发Rust应用。 要求 使用Rust语言实现openGauss数据库驱动 基于SHA256进行权限认证 能够执行增删改查SQL语句 4 方案介绍 - 思路 × 参考 JDBC 标准,使用 rust 语言实现一个简单的只包含核心部分的版本 √ 基于开源的 rust-postgres 驱动开发,实现基于 sha256 的鉴权方式连接 openGuass 数据库 × 使用 rust 语言已有的 语言已有的 sha256 方式 × 使用 rust 语言已有的 RFC5802 三方包 √ 参考已有的基于 JAVA 语言实现的 openGauss sha256 鉴权代码,使用 rust 语言重新实现 5 方案介绍 - 认证流程 startup 会首先建立连接,同时会发送认证协议的版本; 服务器会响应具体的认证方式以及该认证方式所需的信息; 客户端根据要求的认证方式通过认证后,就可以向服务器端发送各种数据库命令0 码力 | 14 页 | 566.24 KB | 1 年前3Apache ShardingSphere v5.5.0 document
Compatible with MySQL‐based databases, such as MariaDB, and PostgreSQL‐based databases, such as openGauss; • Applicable to any kind of client that is compatible with MySQL/PostgreSQL protocol, such as database proxy. It theoretically supports any client operation data using MySQL, PostgreSQL and openGauss protocols, and is friendly to heterogeneous languages and operation and maintenance scenarios. Configuration Manual for more details. 3. Import dependencies. If the backend database is PostgreSQL or openGauss, no additional dependencies are required. If the backend database is MySQL, please download my0 码力 | 602 页 | 3.85 MB | 1 年前32023年中国基础软件开源产业研究白皮书
类: 数据库门类较 多,配套开发 工具较齐全 TiDB OceanBase PolarDB GDB 代表开源厂商及产品 阿里 PingCAP 兼具开源与商 业发行版数据 库 openGauss 华为 传统行业中最 重要的开源数 据库厂商,数 据库为集中 式,注重安全 稳定 互联网行业开源已成主流;国产化替代趋势下,传统行业市场空间巨大 互联网开源数据库对传统行业的渗透: 传统行业逐步互联网化,一些C端业务 www.iresearch.com.cn openGauss 自主化根技术,夯实四高能力,内核与架构双引擎创新驱动 来源:根据专家访谈、公开资料,由艾瑞咨询研究院自主研究及绘制。 openGauss自主架构与版本发展路径 基础版本 2020.03 Release 1.0 单机极致性能 2020.12 Preview 内存池化服务DMS 内存互联 储存池化服务DSS 多样性存储 智能运维 资源管理 安装部署 数据迁移 数据建模 数据开发 openGauss DataPod 资源池化架构 全站可观测、可追踪、全加密 SQL引擎插件化 开箱性能即最佳 openGauss DataKit 插件化架构 标准化插件接口 数据全生命周期管理 覆盖部署开发运维等阶段 社区发行版 打造根技术、提供企业级内核能力0 码力 | 43 页 | 4.69 MB | 1 年前3Apache ShardingSphere v5.5.0 中文文档
协议,透明化数据库操作,对 DBA 更加友好。 • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用; • 兼容 MariaDB 等基于 MySQL 协议的数据库,以及 openGauss 等基于 PostgreSQL 协议的数据库; • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端,如:MySQL Command Client, MySQL Work‐ Proxy 解 压 后 的 路 径, 例:/opt/ shardingsphere-proxy-bin/ 详情请参见 配置手册。 3. 引入依赖 如果后端连接 PostgreSQL 或 openGauss 数据库,不需要引入额外依赖。 如果后端连接 MySQL 数据库,请下载 mysql‐connector‐java‐5.1.49.jar 或者 mysql‐connector‐java‐ 8 Proxy,用户可以在 Proxy 启动完成后,通过 DistSQL 移除异常数据源。 5. 使用 ShardingSphere‐Proxy 执行 MySQL / PostgreSQL / openGauss 的客户端命令直接操作 ShardingSphere‐Proxy 即可。 使用 MySQL 客户端连接 ShardingSphere‐Proxy: mysql -h${proxy_host}0 码力 | 557 页 | 4.61 MB | 1 年前3Apache ShardingSphere 5.4.1 Document
Compatible with MySQL‐based databases, such as MariaDB, and PostgreSQL‐based databases, such as openGauss; • Applicable to any kind of client that is compatible with MySQL/PostgreSQL protocol, such as database proxy. It theoretically supports any client operation data using MySQL, PostgreSQL and openGauss protocols, and is friendly to heterogeneous languages and operation and maintenance scenarios. Configuration Manual for more details. 3. Import dependencies. If the backend database is PostgreSQL or openGauss, no additional dependencies are required. If the backend database is MySQL, please download my0 码力 | 572 页 | 3.73 MB | 1 年前3Apache ShardingSphere 5.2.1 Document
Compatible with MySQL‐based databases, such as MariaDB, and PostgreSQL‐based databases, such as openGauss; • Applicable to any kind of client that is compatible with MySQL/PostgreSQL protocol, such as database proxy. It theoretically supports any client operation data using MySQL, PostgreSQL and openGauss protocols, and is friendly to heterogeneous languages and operation and maintenance scenarios. Configuration Manual for more details. 3. Import dependencies. If the backend database is PostgreSQL or openGauss, no additional dependencies are required. If the backend database is MySQL, please download my0 码力 | 523 页 | 4.51 MB | 1 年前3Apache ShardingSphere 中文文档 5.4.1
协议,透明化数据库操作,对 DBA 更加友好。 • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用; • 兼容 MariaDB 等基于 MySQL 协议的数据库,以及 openGauss 等基于 PostgreSQL 协议的数据库; • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端,如:MySQL Command Client, MySQL Work‐ Proxy 解 压 后 的 路 径, 例:/opt/ shardingsphere-proxy-bin/ 详情请参见 配置手册。 3. 引入依赖 如果后端连接 PostgreSQL 或 openGauss 数据库,不需要引入额外依赖。 如果后端连接 MySQL 数据库,请下载 mysql‐connector‐java‐5.1.49.jar 或者 mysql‐connector‐java‐ 8 Proxy,用户可以在 Proxy 启动完成后,通过 DistSQL 移除异常数据源。 5. 使用 ShardingSphere‐Proxy 执行 MySQL / PostgreSQL / openGauss 的客户端命令直接操作 ShardingSphere‐Proxy 即可。 使用 MySQL 客户端连接 ShardingSphere‐Proxy: mysql -h${proxy_host}0 码力 | 530 页 | 4.49 MB | 1 年前3Apache ShardingSphere 5.2.0 Document
Compatible with MySQL‐based databases, such as MariaDB, and PostgreSQL‐based databases, such as openGauss; • Applicable to any kind of client that is compatible with MySQL/PostgreSQL protocol, such as database proxy. It theoretically supports any client operation data using MySQL, PostgreSQL and openGauss protocols, and is friendly to heterogeneous languages and operation and maintenance scenarios. Configuration Manual for more details. 3. Import dependencies. If the backend database is PostgreSQL or openGauss, no additional dependencies are required. If the backend database is MySQL, please download my0 码力 | 483 页 | 4.27 MB | 1 年前3Apache ShardingSphere 中文文档 5.3.2
协议,透明化数据库操作,对 DBA 更加友好。 • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用; • 兼容 MariaDB 等基于 MySQL 协议的数据库,以及 openGauss 等基于 PostgreSQL 协议的数据库; • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端,如:MySQL Command Client, MySQL Work‐ Proxy 解 压 后 的 路 径, 例:/opt/ shardingsphere-proxy-bin/ 详情请参见 配置手册。 3. 引入依赖 如果后端连接 PostgreSQL 或 openGauss 数据库,不需要引入额外依赖。 如果后端连接 MySQL 数据库,请下载 mysql‐connector‐java‐5.1.49.jar 或者 mysql‐connector‐java‐ 8 Proxy,用户可以在 Proxy 启动完成后,通过 DistSQL 移除异常数据源。 5. 使用 ShardingSphere‐Proxy 执行 MySQL / PostgreSQL / openGauss 的客户端命令直接操作 ShardingSphere‐Proxy 即可。 使用 MySQL 客户端连接 ShardingSphere‐Proxy: mysql -h${proxy_host}0 码力 | 508 页 | 4.44 MB | 1 年前3Apache ShardingSphere 中文文档 5.2.0
协议,透明化数据库操作,对 DBA 更加友好。 • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用; • 兼容 MariaDB 等基于 MySQL 协议的数据库,以及 openGauss 等基于 PostgreSQL 协议的数据库; • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端,如:MySQL Command Client, MySQL Work‐ Proxy 解 压 后 的 路 径, 例:/opt/ shardingsphere-proxy-bin/ 详情请参见 配置手册。 3. 引入依赖 如果后端连接 PostgreSQL 或 openGauss 数据库,不需要引入额外依赖。 如果后端连接 MySQL 数据库,请下载 mysql‐connector‐java‐5.1.47.jar 或者 mysql‐connector‐java‐ 8 .sh ${proxy_port} ${proxy_conf_directory} 5. 使用 ShardingSphere‐Proxy 执行 MySQL / PostgreSQL / openGauss 的客户端命令直接操作 ShardingSphere‐Proxy 即可。 使用 MySQL 客户端连接 ShardingSphere‐Proxy: mysql -h${proxy_host}0 码力 | 449 页 | 5.85 MB | 1 年前3
共 23 条
- 1
- 2
- 3