1. 项目概述
最近在做一个国产数据库适配项目时,遇到了一个很有意思的场景:我们有些小型应用跑在单机MySQL上,配置不高,数据主要用于流转,对分布式能力没有强需求。之前测试过PolarDB-X,但它毕竟是面向分布式高可用场景设计的,单机部署时仍然带着一堆分布式模块(路由、事务协调、GMS等),有点杀鸡用牛刀的感觉。
经过调研,我决定用GreatSQL来做适配测试。GreatSQL是基于MySQL 8.0的一个国产分支,在保持兼容性的同时做了不少优化,特别适合这种单机集中式部署的场景。下面就把我在CentOS 7上安装配置GreatSQL的全过程记录下来,包括遇到的坑和解决方案。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备
2.1 虚拟机配置
为了测试多个国产化产品,我选择了VMware虚拟机环境:
- 系统:CentOS 7桌面版
- CPU:2核
- 内存:4GB
- 存储:40GB
- 文件系统:XFS(CentOS 7默认)
提示:虽然测试环境用了桌面版,但生产环境建议用最小化安装的服务器版,减少不必要的资源占用。
2.2 下载GreatSQL
从Gitee官方仓库下载最新的RPM包:
bash复制wget https://gitee.com/GreatSQL/GreatSQL/releases/download/GreatSQL-8.0.32-24/greatsql-8.0.32-24.1.el7.x86_64-bundle.tar.xz
tar -xvf greatsql-8.0.32-24.1.el7.x86_64-bundle.tar.xz
解压后会得到多个RPM包,我们主要需要:
- greatsql-client
- greatsql-server
- greatsql-shared
3. 系统优化配置
3.1 关闭防火墙和SELinux
GreatSQL需要开放端口通信,直接关闭防火墙更方便测试:
bash复制systemctl stop firewalld
systemctl disable firewalld
SELinux可能会干扰MySQL的正常操作,建议关闭:
bash复制sed -i 's/SELINUX=enforcing/SELINUX=disabled/'
