首页
学习
活动
专区
圈层
工具
发布

openHalo兼容mysql原理和实践

兼容性简介 从官方介绍[1]来看,openHalo基于PG,同时能够理解MySQL的SQL方言,并支持相同的通信协议,因此最初为MySQL编写的应用程序只需进行少量代码更改即可与openHalo兼容。...MySQL兼容实现原理:大概看了下代码,引入MySQL协议,在parser里通过makeFuncCall或者sql转换等方式将MySQL方言和sql转换为PG协议再去执行。...具体可以参考以下目录中的源代码: src/backend/parser/mysql src/backend/adapter/mysql 兼容性验证 使用mysql协议登录后,进行简单验证。...你没看错,mysql工具登录可以进行一些PG的视图查询。基于PG引进了MySQL协议,根据目前兼容性原理是可以查询一些PG的系统视图等对象的。...> 小结 本篇简单介绍了openHalo兼容MySQL的原理,并且尝试实践适配了show processlist,PG中玩MySQL真挺有意思的。

18410
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    SQL审核 | SQLE 兼容 MySQL 8.0 测评

    SQLE版本:sqle-ce-1.2203.0 MySQL版本:MySQL 8.0.28 环境安装过程:略 DDL语句审核 1....[renzhongyusqle-28.png] ⼩结 除了MySQL 8.0 JSON新特性(如 JSON_TABLE⽅法),其它JSON语法和MySQL 5.7⼀样,SQLE仍然⽀持。...结论 本⽂测试了SQLE对MySQL 8.0.28的⽀持程度,根据测试结果,⼤部分DDL、DML和DCL语句与MySQL 5.7版本⼀样,都能正常进⾏审核,DML和DDL上下⽂关联能够正确识别。...少数MySQL8.0 新特性涉及的SQL⽬前SQLE可能还不能兼容,例如 建表时存在 MySQL 8.0 新的保留字,如窗⼝函数相关的RANK、ROW_NUMBER等。...语法 JSON_TABLE函数等 总之,瑕不掩瑜,不兼容的点毕竟⽇常SQL开发审核上线中极少使⽤,相信后续SQLE版本将进⾏优化。

    1.3K30

    SQL审核 | SQLE 兼容 MySQL 8.0 测评

    SQLE版本:sqle-ce-1.2203.0 MySQL版本:MySQL 8.0.28 环境安装过程:略 DDL语句审核 1. 测试create table建表语句⼀ 审核结果如下图。...测试语句三 验证 MySQL 8.0 JSON 相关特性 审核结果如下图。 语句在 MySQL 正常执⾏如下图。...⼩结 除了 MySQL 8.0 JSON 新特性(如 JSON_TABLE⽅法),其它 JSON 语法和 MySQL 5.7 ⼀样,SQLE仍然⽀持。...少数MySQL8.0 新特性涉及的SQL⽬前SQLE可能还不能兼容,例如 建表时存在 MySQL 8.0 新的保留字,如窗⼝函数相关的RANK、ROW_NUMBER等。...语法 JSON_TABLE函数等 总之,瑕不掩瑜,不兼容的点毕竟⽇常SQL开发审核上线中极少使⽤,相信后续SQLE版本将进⾏优化。 本文关键字:#SQLE# #SQL审核#

    1.8K50

    TiDB 7.4 发版:正式兼容 MySQL 8.0

    TiDB 作为新一代分布式关系型数据库,从诞生第一天起拥抱 MySQL 生态,不断地兼容 MySQL 5.7 和 MySQL 8.0,为用户带来更加顺畅的迁移和使用体验。...二、高度兼容 MySQL 的分布式关系型数据库 TiDBTiDB 是由 PingCAP 自主研发的企业级分布式关系型数据库,具备水平扩缩容、金融级高可用、实时 HTAP、云原生、兼容 MySQL 5.7...对于绝大多数在 MySQL 上运行的应用程序来说,几乎不需要修改任何代码。随着 MySQL 8.0 的发布,TiDB 在兼容 MySQL 5.7 的基础之上,积极扩展了对 MySQL 8.0 的兼容。...尽管和 MySQL 的实现方式有差别,TiDB 兼容了 MySQL 指定资源组的语法以及 hint,降低用户学习成本和迁移成本。...为了同时兼容 MySQL 5.7 和 MySQL 8.0,TiDB 支持了 MySQL 兼容的变量 default_collation_for_utf8mb4 。

    1.2K80

    KES V9 MySQL兼容性实战

    胖头鱼的技术专栏-445 KES V9 MySQL兼容性实战(20260714) 最近金仓数据也是动作不断,更新了MySQL兼容版本,具体版本号为V9R3C18,本期探索MySQL兼容性相关特性。...兼容性相关扩展介绍: 扩展名 版本 说明 kdb_mysql_datatype 1.15 MySQL 数据类型兼容 (TINYINT, DATETIME 等) kdb_mysql_functions 1.20...MySQL 函数兼容 (IF, IFNULL, GROUP_CONCAT 等) mysql_json 1.4 MySQL JSON 函数兼容 (JSON_OVERLAPS, JSON_EXTRACT...格式符兼容 (需设为 on) mysql_numop_style on 数值运算风格兼容 mysql_interval_style on 间隔类型风格兼容 mysql_serial_type on SERIAL...总结 本期通过实战对KingbaseES V9R3C18 MySQL兼容版中的MySQL语法以及MySQL中JSON与函数等特性兼容性进行了实战测试。 老规矩,知道写了些啥。

    53900

    KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测

    前言最近电科金仓出了新版本,其中MySQL兼容版变化不小。...我服务器上正好还跑着一套旧的标准版KingbaseES,这次借着电科金仓产品体验官活动,干脆把它彻底升一遍:卸载旧版→全新安装MySQL兼容版→逐项验证兼容特性,整个过程都记下来了。...其实很多团队都有这个顾虑:手头的MySQL项目想换国产数据库,但不知道迁移要改多少东西。那KingbaseESMySQL兼容版到底能兼容多少MySQL语法?改动大不大?这篇文章用实际操作来说明。...如果你前面跟着我一路操作的那就一路默认即可直到提示安装成功4.4初始化数据库(指定MySQL兼容模式)这步是安装MySQL兼容版和普通版最不一样的地方,初始化的时候要加一个参数指定兼容模式,不加的话就是普通模式了...兼容版的兼容性比我预想的要好一些,主流MySQL语法基本都能跑,安装流程也不复杂。

    61810

    MySQL兼容性核心功能详解,选型必看

    尤其当面对“MySQL兼容性”这一高频关键词时,用户需要的不是泛泛而谈的“高度兼容”,而是对MySQL兼容性核心功能的深度拆解——包括功能定义、技术实现要点、真实适配边界与典型业务价值。...本文即立足于此,围绕MySQL兼容性核心功能,从功能定义、技术特点、适用场景及实际价值四个维度,系统展开深度解析,不涉及任何操作步骤或配置指南,专为理性选型提供客观、可验证的功能参考依据。​...编辑MySQL兼容性核心功能深度拆解SQL语法元素兼容:覆盖MySQL全栈基础语义MySQL兼容性首先体现在对标准SQL语法结构的精准还原。...数据库对象与DDL兼容:支撑复杂表结构与分区策略面向生产环境的MySQL兼容性,必须覆盖高阶对象建模能力。...总结与选型参考本文围绕MySQL兼容性核心功能,系统梳理了其在SQL语法、数据类型与函数、数据库对象建模、管理操作等维度的技术实现要点与业务价值。

    42310

    兼容MySQL + ES + MongoDB

    像MySQL,MongoDB数据库还好,本身就是专业的数据库,处理的不好,最多就是慢,但如果涉及到ES,性质就不一样了,我们不得不利用 SearchAfter Api,去循环获取数据,这就牵扯到内存占用的问题...为什么不能允许随机深度跳页 从技术的角度浅显的聊一聊为什么不能允许随机深度跳页,或者说为什么不建议深度分页 MySQL 分页的基本原理: SELECT * FROM test ORDER BY id DESC...ES 方案和MySQL相同,此时我们就可以随用所欲的使用 FROM-TO Api,而且不用考虑最大限制的问题。 MongoDB 方案基本类似,基本代码如下: [1734e4119ea67105?...在 SQL优化 一文中还提到过MySQL深度分页的处理技巧,代码如下: # 反例(耗时129.570s) select * from task_result LIMIT 20000000, 10; #...因此我们在处理MySQL,ES,MongoDB时,也可以采用一样的办法: 限制获取的字段,只通过筛选条件,深度分页获取主键ID 通过主键ID定向查询需要的数据 瑕疵:当偏移量非常大时,耗时较长,如文中的

    1.8K00

    金仓数据库KingbaseES的MySQL兼容性说明

    ​ KingbaseES以内核兼容为基础,通过初始化参数控制,兼容MySQL 数据库,支持MySQL常用功能。...Kingbase 数据库的 MySQL 模式对原生 MySQL 数据库中数据类型的兼容情况如下表所示。...MySQL数据类型兼容情况说明序号MySQL数据类型KingbaseES兼容情况1BIT兼容2BOOL兼容3TINYINT兼容4SMALLINT兼容5MEDIUMINT兼容6INT兼容7BIGINT兼容...数值函数​MySQL数值函数兼容说明序号MySQL函数名KingbaseES是否兼容功能简要说明1ABS兼容绝对值2ACOS兼容反余弦3ASIN兼容反正弦4ATAN兼容反正切5ATAN2兼容返回两个变量的反正切...兼容正切值字符串函数​MySQL字符串函数兼容说明序号MySQL函数名KingbaseES是否兼容功能简要说明1BIT_LENGTH兼容返回字符串位长度2CHAR_LENGTH, CHARACTER_LENGTH

    1K10

    YashanDB V23.4 LTS MySQL兼容性全方位增强

    作者:YashanDB SQL研发技术专家 芥舟简介:本文主要对YashanDB MySQL兼容性近一个版本的兼容性特性做原理探讨和技术解析。...整体兼容模块涉及协议层、解析层、执行层、存储层,在基础架构上保证YashanDB和MySQL的高度兼容,让用户可以像使用MySQL一样使用YashanDB。...核心升级:全栈兼容+企业级能力第一,100%生态无缝对接,应用“零”修改协议连接兼容:兼容全套MySQL网络协议(5.7-8.0版本),兼容sha256_password插件认证方式,兼容 mysql-jdbc...的元数据按MySQL的视图方式显示;语法和语义兼容:采用重载的方式,重载MySQL特有的语法和语义,支持DDL/DCL语句、SHOW/USE 等 MySQL 专有语法,同时保留YashanDB特有的用法.../附录:YashanDB MySQL兼容能力详情/最后,如果你对V23.4 LTS版本MySQL兼容性特性想要进一步了解,可以在公众号后台回复小助手,添加微信获取讲师完整版干货PPT。

    45710

    阿里云RDS MySQL 8.4正式发布:长期支持,平滑兼容,深度优化

    今天,阿里云 RDS MySQL 8.4 正式上线,为企业级用户带来开箱即用的高可用、高性能与高兼容性体验。...复制术语向后兼容,迁移更平滑 MySQL 8.4 中移除了 SLAVE/MASTER 系列复制 SQL 命令,只支持 SOURCE/REPLICA 系列命令。...,输出兼容低版本 MySQL 的 dump 文件。...RDS MySQL 8.4 主动承担了兼容性适配工作: 旧版复制命令继续可用 RDS MySQL 8.4 内核保留了 SLAVE/MASTER 系列复制 SQL 命令和参数。...5 写在最后 阿里云 RDS MySQL 8.4 代表了一种更负责任的云数据库升级路径: 在生命周期上,给用户托底,不让社区 EOL 成为业务焦虑; 在兼容性上,承担起兼容性适配工作,让存量代码、脚本、

    95510
    领券