MySQL兼容性增强

可获得性

本特性自openGauss 3.0.0版本开始引入。

特性简介

本特性主要从以下几方面增强openGauss与MySQL的兼容性(只列举部分典型语法,详情请参见《数据迁移指南》中“MySQL兼容性说明”章节):。

支持用户锁,允许用户通过sql加自定义的锁,可以让多个程序之间完成加锁相关的交互过程,使得客户端从任何位置访问都可以得到一致性的锁视图。

支持建表插入数据时默认记录插入当前时间;更新数据时,如果未指定更新时间,默认显示数据变更的当前时间。

支持设置会话级SQL模式,允许运行时变更、全局变更以及会话内变更。

支持隐藏索引,隐藏索引不会被优化器使用。

支持字段大小写敏感。建表时使用的字段名将保留大小写的信息到系统表中,而真正使用这些列时,忽略大小写。

支持schema级、表级、列级设置和修改默认字符集和排序规则。

客户价值

通过设置用户锁,对数据、数据结构或者某些字符串进行保护,避免会话之间相互干扰,保证了信息的一致性和安全性。解决了用户业务数据写入与修改时,记录其操作时间戳的问题。通过设置sql模式,可以解决早期版本遗留问题与后期版本的兼容性。通过隐藏索引,可以在不禁用/删除/重建索引的情况下,测试删除某个索引对于查询性能的影响,提升SQL调优的效率。通过支持字段大小写敏感,可以让列名在查询时保持建表时的大小写信息。通过支持schema级、表级、列级设置和修改默认字符集和排序规则,可以让用户根据实际使用场景灵活调整字符集和排序规则。