HaloDB 的 MySQL 兼容模式

HaloDB 的 MySQL 兼容模式-1

前倾回顾

前面介绍了“光环”数据库的基本情况和安装办法。

  • 哈喽,国产数据库!Halo DB!
  • 三步走,Halo DB 安装指引

以及 HaloDB 的 Oracle 兼容模式:

  • HaloDB 的 Oracle 兼容模式

HaloDB是基于原生PG打造的新一代高性能安全自主可控全场景通用型统一数据库。
业内首次创造性的提出插件式内核架构设计,通过配置的方式,适配不同的应用场景,打造全场景覆盖的能力,满足企业大部分数据存储处理需求。从而消除数据孤岛,降低系统复杂度,保护企业既有投资,降低企业成本。同时支持x86、arm等异构平台之间的混合部署。

本文将介绍如何开启 HaloDB 的 MySQL 兼容模式,以及基础使用方法。

HaloDB 的 MySQL 兼容模式

Halo 数据库兼容 MySQL 协议,可以直接使用 MySQL 客户端连接到 Halo 数据库。

Halo 的 MySQL 兼容模式有两种类型的用户,一种是 MySQL 用户,另一种是 Halo 用户。

MySQL 用户专门提供给业务系统使用,且只能以标准 MySQL 客户端方式连接到 Halo 的业务服务端口。

MySQL 用户一般只建议用于 DML(业务相关的增删查改) 操作。

以下列举 MySQL 兼容能力(部分):

  • 支持 MySQL 协议
  • 支持 MySQL 的基本数据类型
  • 支持 MySQL 引号使用方式
  • 支持 REPLACE INTO
  • 支持 INSERT IGNORE
  • 支持 UPDATE … ON DUPLICATE KEY
  • 支持 INSERT … VALUE
  • 支持 LIMIT 操作
  • 支持 UPDATE … [ORDER BY] … LIMIT
  • 支持 DELETE … [ORDER BY] … LIMIT
  • 支持 ORDER BY 按指定列顺序排序
  • 支持 SET 类型
  • 支持符号
  • 支持使用变量
  • 支持枚举类型

等等。

清单很长,这里就不再列举了,详情可留言,带你进《HaloDB产品吐槽群》。

开启 HaloDB 的 MySQL 兼容模式

修改配置文件

如需开启 MySQL 兼容模式,需要先对数据库配置文件 postgresql.conf 进行调整。

#database_compat_mode = 'postgresql' --> database_compat_mode = 'mysql' #standard_parserengine_auxiliary = 'on' --> standard_parserengine_auxiliary = 'on' #second_listener_on = false --> second_listener_on = 1 #second_port = 3307 --> second_port = 3306