AntDB v7.2.0 社区版适配 Rocky 9 及体验笔记

AntDB v7.2.0 社区版适配 Rocky 9 及体验笔记

严少安 Lv.6

关于 AntDB

2023年12月的 墨天轮中国数据库流行度排行 火热出炉,目前,AntDB 排在第十位。[1]

AntDB 数据库始于2008年,隶属于亚信科技旗下通用型企业级数据库产品,在运营商的核心系统上,为全国24个省份的10亿多用户提供在线服务,具备高性能、弹性扩展、可靠性等产品特性,峰值每秒可处理百万笔通信核心交易,应用范围包含通信、金融、交通、能源、物联网等行业。[2]

img.png

关于 AntDB 社区版

3月1日,亚信科技AntDB数据库社区版正式开放免费下载。作为AntDB数据库的首个社区版产品,AntDB-CE(Community Edition)V7.2.0具有完整、易用、兼容度高的企业级分布式数据库产品特性。[3]

AntDB-CE社区版采用了Share-Nothing的无共享架构,包括计算节点(Coordinator)、数据节点(DB)、全局事务管理器(GTM)和管理节点四种组件。

  • 计算节点(Coordinator)

提供SQL解析、优化、路由、结果汇聚、分布式事务控制等功能

  • 数据节点(DB)

真正存储业务数据的组件,通过分库分表实现数据库能力的水平扩展,提供多种分片函数,支持定制开发;支持数据节点的分组管理

  • 全局事务管理器(GTMCoordinator)

分布式事务管理的重要组件;提供事务ID和事务快照以及全局序列号、时间戳,参与2PC提供分布式MVCC 能力,同时提供Coordinator 的能力

  • 管理节点(Manager)

管理整个集群节点的添加、配置、删除、启停、初始化、主备倒换等所有状态。

AntDB 社区版集中式部署安装

从官方网站[4] 下载安装包,由于我本地操作系统为 Rocky Linux 9.3,网站并没有提供对应版本的安装包,这里选择了 centos8 作为替代。

1
2
[shawnyan@rocky9 ~]$ cat /etc/system-release
Rocky Linux release 9.3 (Blue Onyx)

官方网站已经给出了安装步骤,可以参考:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
仅需 4 步,完成 AntDB 社区版安装:

1. 下载在root用户下
#wget http://gz.antdb.net/zip/antdb-ce-7.2.0.centos8.x86_64.tar.gz

2. 解压
#tar-zxvf antdb-ce-7.2.0.centos8.x86_64.tar.gz

3. 安装
#cd antdb-ce-7.2.0.centos8.x86_64
#sh antdb_install.sh -s

4. 进入客户端
#su - antdb
$psql -d antdb -p 6655
//根据部署的结果修改端口号

操作系统:CentOS 8

适配 Rocky 9

在执行安装脚本时,遇到报错,提示不支持 Rocky 操作系统。

1
2
3
4
5
6
7
8
9
10
[shawnyan@rocky9 antdb-ce-7.2.0.centos8.x86_64]$ ./antdb_install.sh -s
[Info] AntDB install begins
The current operating system hardware resources are less than the recommended hardware requirements for antdb operation.
...
Continue the installation.
It is recommended to improve the hardware configuration to improve the user experience.
No package was found.
The current operating system needs a package like antdb-.*.rocky.x86_64.tar.gz.
Please check the installation package. Exit.
[shawnyan@rocky9 antdb-ce-7.2.0.centos8.x86_64]$

找到相关的判断逻辑,然后增加 Rocky 部分即可。

1
vi ./setup/common/setup-common

在第 252 行增加如下判断。

1
2
3
4
5
//:252
Rocky)
os_version=8
os_name="CentOS"
;;

再次安装,遇到报错,提示缺少共享库文件。

1
/home/shawnyan/app/antdb/bin/initdb: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory

需要安装 compat-openssl11 依赖。

再次安装,提示成功。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[shawnyan@rocky9 antdb-ce-7.2.0.centos8.x86_64]$ ./antdb_install.sh -s
[Info] AntDB install begins
...
/data/stonedb/antdb-ce-7.2.0.centos8.x86_64/setup/common/AntDB-license-agreement-Community.txt
chown: invalid group: ‘shawnyan:shawnyanwheel’
...
[Info] AntDB install succeeds!
[Info] AntDB init begins
[Info] AntDB info:
+----------+-----------+------+-------------------------------+-------+----------+
| database | ip | port | data | user | password |
+----------+-----------+------+-------------------------------+-------+----------+
| antdb | localhost | 6655 | /home/shawnyan/app/antdb/data | antdb | antdb |
+----------+-----------+------+-------------------------------+-------+----------+

[Info] AntDB logon:
adb -d "database" -U "user" -p "port"

[Info] AntDB init succeeds
  • Title: AntDB v7.2.0 社区版适配 Rocky 9 及体验笔记
  • Author: 严少安
  • Created at: 2023-12-11 15:52:04
  • Updated at: 2023-12-11 15:52:04
  • Link: https://shawnyan.cn/2023/other/antdb-install/
  • License: This work is licensed under CC BY-NC-SA 4.0.
  • if (hexo-config('comment.enable') == true && hexo-config('comment.system') != "") { if (hexo-config('comment.system') == "waline") { @require "./waline.styl" } else if (hexo-config('comment.system') == "gitalk") { @require "./gitalk.styl" } else if (hexo-config('comment.system') == "twikoo") { @require "./twikoo.styl" } } .comments-container display inline-block margin-top $spacing-unit width 100% #comment-anchor width 100% height 10px .comment-area-title width 100% margin 10px 0 font-size 1.38rem color var(--default-text-color) font-family 'Consolas', '宋体', sans-serif font-weight bold i color var(--default-text-color) +redefine-tablet() margin 5px 0 font-size 1.2rem