OB针对于高并发和大数据更有优势,公司的dba让我们把数据从mysql迁移到OceanBase了,这里记录一下OceanBase的MySQL模式。
OceanBase的MySQL模式兼容MySQL5.7的绝大部分功能和语法,兼容MySQL5.7版本的全量以及8.0版本的部分JSON函数。文章来源地址https://www.toymoban.com/news/detail-798556.html
暂不支持的功能:
- OceanBase暂不支持空间数据类型和部分json类型,其他类别的数据类型支持情况是等于或大于MySQL数据库的。
- 不支持 SELECT…FOR SHARE语法
- 支持create table…as select。不过该语句复制的是表的基本数据类型,对于主键、唯一约束和索引信息等不会复制。
- 不支持直接对子查询进行insert、update、delete操作。
- TRUNCATE操作不支持在进行事务处理和表锁定的过程中操作。
- 支持的字符集和排序规则:字符集:binary、utf8mb4,字符序:utf8mb4_general_ci、utf8mb4_bin和binary。
- OceanBase不支持冷备份、不支持数据库和表级的备份恢复、不支持备份数据的有效性验证。
- 对于优化器,查看执行计划的命令不支持使用
- SHOW WARNINGS显示额外的信息;不支持执行
- ANALYZETABLE查询数据字典中表存储有关列值的直方图统计信息。
- 不支持的alter操作:添加主键、删除主键、设置列约束NOT NJULL、添加外键、转换字符集;
- 支持修改列类型:兼容类型向上修改,例如:int改bigint、varchar改text,blob改lob 改 long blob等;不兼容类型修改,例如:int改varchar、char char 改 varchar等。OceanBase不支持带not null的alter语句写在一条alter语句里,需要分成多条alter语句提交
- OceanBase数据库中加列、减列、建索引等DDL操作都那是不阻塞读写的,也不会影响到多副本间的paxos同步
- 不支持如下函数:
1 数学函数:DEGREES()。
2 日期时间函数:ADDTIME()和DAYNAME()。
3 字符串函数:LOAD_FILE()、MATCH、OCTET_LENGTH()、SOUNDIEX()、SOUNDS LIKE和WEIGHT_STRING()。
4 强制转换函数:BINARY。
5 XML函数:ExtractValue()和UpdateXML()。
6 加密和压缩函数:AES_DECRYPT()、AES_ENCRYPT()、COMPRESS()、RANDOM_BYTES()、SHA1(),SHA()、SHA2()、UNCOMPRESS() 和 UNCOMPRESSED_LENGTH()。
7 锁定函数:GET_LOCK()、IS_FREE_LOCK()、IS_USED_LOCK()、RELEASE_ALL_LOCKS()和RELEASE_LOCK()。
8 信息函数:BENCHMARK()和SCHEMA()。
9 聚合函数:BIT_AND()、BIT_OR()和BIT_XOR()。
10 其他函数:IS_IPV4_COMPAT()、MASTER_POS_WAIT()、NAME_COONST()和UUID()
11 空间分析函数和性能模式函数。
文章来源:https://www.toymoban.com/news/detail-798556.html
到了这里,关于OceanBase与MySQL兼容性对比的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!