PolarDB实操课] 04.通过源码部署PolarDB-X企业版

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: 本次课程由PolarDB开源架构师王江颖分享,详细介绍了通过源码部署PolarDB-X企业版的全过程。主要内容包括:1. **编译基础**2. **使用源码编译部署PolarDB-X企业版**3. **演示实例**:通过阿里云ECS进行实际操作演示,从创建用户、赋予权限到最终启动并连接PolarDB-X数据库,展示了完整的部署过程。4. **总结**

PolarDB实操课] 04.通过源码部署PolarDB-X企业版


内容介绍:

一、编译基础

二、使用源码编译部署PolarDB-X企业版

三、演示实例

总结

 

本次分享的主题是通过源码部署PolarDB-X企业版,由PolarDB开源架构师王江颖分享。

28a5e7599c3c36c323736a922fa28d3.png

本次课程通过源码部署PolarDB-X企业版首先了解编译的基础知识编译是将高级编程语言写成的源代码转换成低级语言的过程以便计算机可以直接执行程序。高级编程语言是平时所用的语言如C、C++、java、python等。低级语言是计算机能够直接识别的语言如机器语言字节码因为计算机不能识别高级编程语言所以需要通过编译把高级语言转换成低级语言以便于执行程序


一、编译基础

d79958b249863c28e882f1c4043391e.png

编译分为部分

1. 预处理

预处理指编译器处理源代码文件中的预处理指指令编译器是软件程序它可以读取高级语言写成源代码经过一系列的分析转换过程产生等价的低级语言代码。常见的编译器有GCC

2. 词法分析

词法分析将源代码分解成一串标记也就是tokens包括关键字、变量、常量等。

3. 语法分析

语法分析将标记组成语法结构表示成一棵语法树。在完成语法分析后进入到语义分析的阶段语义分析检查语法树是否有意义比如变量的类型是否正确、数调用是否有效等。

4. 代码生成的阶段

代码生成就是把语法结构转换成目标代码的过程

5. 优化阶段

优化阶段是改进生成的代码使代码更快、更节省资源。优化不仅出现在最后一个阶段在编译的整个过程中都会一直不断的去优化代码。

6. 构建系统

构建系统项目复杂源代码会分散在许多不同的文件目录当中,例如PolarDB-X的源代码会分散在不同的文件目录当中构建系统就可以把源代码进行统一的管理并且帮助程序员控制整个编译的过程。源代码文件转换成最终的可执行程序方便进行编译。常见的构建系统有CmakeAutomakeMaven

7.

是一事先编译好的代码的集合。可以由编译器在编译新程序时使用可以大幅提高编译的速度避免重新编写常见功能的代码。常见的库有Boost

8. 软件包管理器

软件包管理器是一种工具或系统在计算机操作系统上自动安装、配置、更新和删除软件包。

在编译的过程中开发者首先会写下源代码,使用GCC转换成机器代码然后借助一些构建系统比如借助C make或者Automake这样的工具去自动化整个编译的过程使用Cmake命令进行自动化的构建在编译的过程中使用boost提供一些丰富的加速编译的过程。

 

二、使用源码编译部署PolarDB-X企业版

b7d6076363d32cf01b070994f80d822.png

PolarDB-X企业版的代码是在github仓库上存储的。

1. PolarDB-X源代码结构

(1)polardbx-engine是存储节点DN的代码DN节点就是存储节点

(2)polardbx-sql是计算节点CN的代码

(3)polardbx-cdc是日志节点CDC的代码

(4)polardbx-glue是私有协议的代码。

2. 编译的过程

(1)准备环境

次使用的环境是阿里云的云服务器ECS,操作系统是CentOS7.9版本规格是2448GiB。推荐使用8核16GiB以上的规格小规格有可能导致编译不成功。并且需要使用一系列工具例如sudo、git、 make、 redhat-lsb-core等。

(2)编译

准备环境在环境上安装工具并且拉取源代码拉取结束通过Make进行自动化编译

3启动PolarDB-X

编译完成后启动PolarDB-X数据库连接登录PolarDB-X数据库

 

三、演示实例

通过ECS进行编译,首先需要安装必要的工具

569ca89f80ed3a8538cb80ad9e9440a.png

1. 工具

(1)sudo是一个命令行工具。允许普通用户以超级用户的身份去运行命令因为有一些命令只有超级用户才有权限去执行需要赋予普通用户权限

(2)git是一个分布式版本控制系统。

(3)make是很重要的一个编译过程的工具。通过单独的一个make命令可以自动化的执行整个编译的过程

(4)redhat-lsb-core工具提供LSB的支持兼容linux版本的功能

2. 执行代码

代码执行成功工具安装完成。

#创建一个名为polarx的用户

useradd  -ms /bin/bash  polarx

echo polarx: polarx|chpasswd

//这两行代码指创建用户创建密码

#接下来赋予polarx权限

echopolarx  ALL=(ALL)   NOPASSWD:ALL>>/etc/sudoers

//polarx的用户在执行命令不需要输入密码这个过程自动化和加速整个编译的过程

#接下来通过su命令切换到polar x用户

su - polarx

#最后从github仓库拉取源代码

git clone https://github.com/zhiliyao-polarx/polardbx.git

f28325828d5c75c7fb5291d44a2814a.png

3.使用make编译

#首先进入到polardbx 目录

cd polardbx

//通过cd命令进入到目录

#进入目录就直接去执行make命令。

make

//在编译过程中,make可以自动下载所有源码、工具和库等所有资源构建安装polar DB-X

直接执行make命令make命令中,安装一些必要的配置工具安装成功之后拉取各个节点的源码就是DN节点CN节点CDC节点源码逐步编译现在进行拉取polardbx-sql源码和polardbx-engine源码polardbx-engine源码比较大拉取的过程较慢需要花费一定的时间让后拉取polardbx-cdc源码,它是日志节点CDC的源码。进入编译环节首先编译DN节点其次编译CN节点最后编译CDC节点所有节点都编译完成进行最后的收尾工作。这是编译完成的截图

c0bacef7d904e1cc3d59cd753c4c40c.png

接下来进入到启动的阶段

#启动PolarDB-X数据库

./build/run/bin/polardb-x.sh start

//最后启动的cdc  start.  try  polardb-x  by进程启动成功。

#连接PolarDB-X数据库

mysql -h127.0.0.1 -P8527 -upolardbx_root

//连接成功代表编译过程完成

4e13bf0be1f30806e4dc1febe654671.png


四、课程总结

cbb2671b85eef0733ad146c24c6d656.png

(1)本节课学习编译的基本概念以及编译的主要的阶段。

(2) 学习编译所涉及的一些工具包括编译器构建系统库以及软件包管理器等。整个编译过程比较慢通过make命令来进行操作有一些环节没有看清楚但工具在整个编译过程当中都

(3)学习PolarDB-X源代码结构,DNCNCDC私有协议对应源代码的仓库

(4)通过实际演示的方式学习通过源码来部署PolarDB-X,其中重要的一点是用make命令去自动的拉取代码以及下载编译过程中所需的工具在DN、CNCDC节点都逐一的编译完成后启动polar DB-X数据库。

 

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
[PolarDB实操课] 05.通过源码部署PolarDB-X标准版
本课程介绍如何通过源码部署PolarDB-X标准版,涵盖基于Paxos的MySQL三副本工作原理和技术特点。主要内容包括: 1. **Paxos三副本工作原理**:讲解Leader和Follower节点的角色及数据同步机制。 2. **技术特点**:强调高性能、数据不丢失(RPO=0)和自动HA切换。 3. **源码部署步骤**:详细演示从编译生成RPM包到启动DN节点的过程,包括配置my.cnf文件和初始化数据库。 4. **高可用体验**:通过三台机器模拟三副本集群,展示Leader选举和故障转移机制,确保数据一致性和服务可用性。
[PolarDB实操课] 03.使用PXD部署PolarDB企业版和标准版
本课程详细介绍了如何使用PXD工具部署PolarDB-X企业版和标准版。主要内容包括: 1. **PolarDB-X企业版与标准版的区别**:讲解了两者的架构特点、性能差异及适用场景。 2. **集群机器上安装Docker环境**:指导用户在阿里云ECS实例上安装Docker,确保后续部署顺利进行。 3. **部署机上安装PXD**:介绍如何配置密钥连接、安装Python3并激活虚拟环境,最后安装PXD工具。 4. **创建并部署PolarDB-X**:通过编写拓扑文件(YAML格式),一键拉起PolarDB-X集群,并验证部署状态。
阿里云飞天企业版获【可信云·容器平台安全能力】先进级认证
阿里云飞天企业版容器系列产品获中国信息通信研究院【可信云·容器平台安全能力】先进级认证,这是飞天企业版容器产品获得《等保四级PaaS平台》和《 云原生安全配置基线规范V2.0》之后,本年度再一次获得行业权威认可,证明飞天企业版的容器解决方案具备符合行业标准的最高等级容器安全能力。
阿里云飞天企业版获【可信云·容器平台安全能力】先进级认证
首批!阿里云飞天企业版率先通过中国信通院一云多算能力评估
阿里云飞天企业版率先参加中国信通院组织的首批一云多算系列标准的评估,并成功通过该标准的验收测试与专家评审。
首批!阿里云飞天企业版率先通过中国信通院一云多算能力评估
阿里云飞天企业版再获认可!
在中国电子技术标准化研究院主办的“云计算产业和标准应用大会”上,阿里云凭借在标准化和产业化方面的卓越贡献,荣获“2024年度云计算标准化优秀成员单位”奖项。
阿里云飞天企业版获评2024年AI云典型案例
近日,由全球数字经济大会组委会主办、中国信息通信研究院和中国通信企业协会承办的“云·AI·计算国际合作论坛”作为2024全球数字经济大会系列活动之一,在北京举办。论坛以“智启云端,算绘蓝图”为主题,围绕云·AI·计算产业发展、关键技术、最佳实践等展开交流讨论。阿里云飞天企业版异构算力调度平台获评2024年AI云典型案例。
阿里云飞天企业版PaaS平台通过等保四级能力评估
近日,阿里云飞天企业版PaaS平台(专有云平台)安全防护能力获得权威机构公安部第三研究所认可。阿里云飞天企业版PaaS平台(专有云平台)参照等级保护第四级开展安全能力建设,在近日的安全评估活动中,获得优异成绩。本次评估验证了飞天企业版PaaS平台及容器安全能力,证明阿里云可以为政企客户提供更高水平的云原生安全能力。
205 1
阿里云飞天企业版“智算升级”,为政企打造AI时代最开放的云
阿里云正式发布飞天智算—飞天企业版V3.18,为政企客户打造AI时代最开放的云。此次升级,飞天企业版将智算能力深度融入云平台,实现“一云多算”,满足政企客户对云平台“云+AI”协同发展需求,为AI技术大规模在政企领域应用做好准备。
243 11
阿里云飞天企业版获信通院可信云技术最佳实践奖
阿里云飞天企业版获信通院可信云技术最佳实践奖
153 11
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等