收藏 分销(赏)

PolarDB-X (开源版)从入门到实战.pdf

上传人:Stan****Shan 文档编号:1240999 上传时间:2024-04-19 格式:PDF 页数:136 大小:14.93MB
下载 相关 举报
PolarDB-X (开源版)从入门到实战.pdf_第1页
第1页 / 共136页
PolarDB-X (开源版)从入门到实战.pdf_第2页
第2页 / 共136页
PolarDB-X (开源版)从入门到实战.pdf_第3页
第3页 / 共136页
PolarDB-X (开源版)从入门到实战.pdf_第4页
第4页 / 共136页
PolarDB-X (开源版)从入门到实战.pdf_第5页
第5页 / 共136页
点击查看更多>>
资源描述

1、阿里云阿里云PolarDB-X(开源版)从入门到实战文档版本:20220707阿里云阿里云PolarDB-X(开源版)从入门到实战文档版本:20220707法律声明阿里云提醒您在阅读或使用本文档之前仔细阅读、充分理解本法律声明各条款的内容。如果您阅读或使用本文档,您的阅读或使用行为将被视为对本声明全部内容的认可。1.您应当通过阿里云网站或阿里云提供的其他授权通道下载、获取本文档,且仅能用于自身的合法合规的业务活动。本文档的内容视为阿里云的保密信息,您应当严格遵守保密义务;未经阿里云事先书面同意,您不得向任何第三方披露本手册内容或提供给任何第三方使用。2.未经阿里云事先书面许可,任何单位、公司或

2、个人不得擅自摘抄、翻译、复制本文档内容的部分或全部,不得以任何方式或途径进行传播和宣传。3.由于产品版本升级、调整或其他原因,本文档内容有可能变更。阿里云保留在没有任何通知或者提示下对本文档的内容进行修改的权利,并在阿里云授权通道中不时发布更新后的用户文档。您应当实时关注用户文档的版本变更并通过阿里云授权渠道下载、获取最新版的用户文档。4.本文档仅作为用户使用阿里云产品及服务的参考性指引,阿里云以产品及服务的“现状”、“有缺陷”和“当前功能”的状态提供本文档。阿里云在现有技术的基础上尽最大努力提供相应的介绍及操作指引,但阿里云在此明确声明对本文档内容的准确性、完整性、适用性、可靠性等不作任何明

3、示或暗示的保证。任何单位、公司或个人因为下载、使用或信赖本文档而发生任何差错或经济损失的,阿里云不承担任何法律责任。在任何情况下,阿里云均不对任何间接性、后果性、惩戒性、偶然性、特殊性或刑罚性的损害,包括用户使用或信赖本文档而遭受的利润损失,承担责任(即使阿里云已被告知该等损失的可能性)。5.阿里云网站上所有内容,包括但不限于著作、产品、图片、档案、资讯、资料、网站架构、网站画面的安排、网页设计,均由阿里云和/或其关联公司依法拥有其知识产权,包括但不限于商标权、专利权、著作权、商业秘密等。非经阿里云和/或其关联公司书面同意,任何人不得擅自使用、修改、复制、公开传播、改变、散布、发行或公开发表阿

4、里云网站、产品程序或内容。此外,未经阿里云事先书面同意,任何人不得为了任何营销、广告、促销或其他目的使用、公布或复制阿里云的名称(包括但不限于单独为或以组合形式包含“阿里云”、“Aliyun”、“万网”等阿里云和/或其关联公司品牌,上述品牌的附属标志及图案或任何类似公司名称、商号、商标、产品或服务名称、域名、图案标示、标志、标识或通过特定描述使第三方能够识别阿里云和/或其关联公司)。6.如若发现本文档存在任何错误,请与阿里云取得直接联系。PolarDB-X(开源版)从入门到实战 法律声明 文档版本:20220707I通用约定格式格式说明说明样例样例 危险危险该类警示信息将导致系统重大变更甚至故

5、障,或者导致人身伤害等结果。危险危险重置操作将丢失用户配置数据。警告警告该类警示信息可能会导致系统重大变更甚至故障,或者导致人身伤害等结果。警告警告重启操作将导致业务中断,恢复业务时间约十分钟。注意注意用于警示信息、补充说明等,是用户必须了解的内容。注意注意权重设置为0,该服务器不会再接受新请求。说明说明用于补充说明、最佳实践、窍门等,不是用户必须了解的内容。说明说明您也可以通过按Ctrl+A选中全部文件。多级菜单递进。单击设置设置 网络网络 设置网络类型设置网络类型。粗体粗体表示按键、菜单、页面名称等UI元素。在结果确认结果确认页面,单击确定确定。Courier字体命令或代码。执行 cd/d

6、 C:/window 命令,进入Windows系统文件夹。斜体表示参数、变量。bae log list-instanceidInstance_ID 或者 a|b表示可选项,至多选择一个。ipconfig-all|-t 或者 a|b表示必选项,至多选择一个。switch active|standPolarDB-X(开源版)从入门到实战 通用约定 文档版本:20220707II目录1.PolarDB-X数据库概述 1.1.PolarDB-X发展历史 1.2.PolarDB-X产品架构 1.3.PolarDB-X适用场景 1.4.如何联系我们 2.一键安装部署PolarDB-X 2.1.使用Dock

7、er镜像安装部署PolarDB-X 2.2.(可选)使用PXD工具一键安装PolarDB-X 2.3.(可选)使用Kubernetes安装PolarDB-X 2.4.(可选)使用源码编译安装PolarDB-X 3.使用PolarDB-X开发应用 3.1.安装PolarDB-X和JDK 3.1.1.第1步:安装PolarDB-X 3.1.2.第2步:登录PolarDB-X 3.1.3.第3步:安装JDK 3.2.体验Spring Boot+PolarDB-X应用开发 3.3.体验WordPress+PolarDB-X部署博客站点 3.4.PolarDB-X应用开发最佳实践 3.4.1.如何选择应

8、用端连接池 3.4.2.透明分布式最佳实践 4.数据导入与导出 4.1.PolarDB-X CDC 4.2.Global Binlog 4.3.PolarDB-X Replica 4.4.相关资料 5.PolarDB-X集群运维 0606081010121217202325252525262633383942545454616264PolarDB-X(开源版)从入门到实战 目录 文档版本:20220707III5.1.扩容和缩容 5.1.1.第1步:安装环境 5.1.2.第2步:使用PolarDB-X Operator安装PolarDB-X 5.1.3.第3步:体验PolarDB-X集群扩容

9、5.1.4.第4步:体验PolarDB-X集群缩容 5.2.升配和降配 5.3.备份恢复 5.4.数据库监控 5.5.SQL限流和SQL Advisor 5.5.1.第1步:连接PolarDB-X集群 5.5.2.第2步:启动业务 5.5.3.第3步:体验SQL限流和SQL Advisor 6.分布式事务与数据分区 6.1.分布式事务 6.2.数据分区 7.X-Paxos三副本与高可用 7.1.DN高可用方案 7.2.X-Paxos协议 7.3.DN高可用体系 7.4.DN部署和优化 7.4.1.第1步:安装环境 7.4.2.第2步:使用PolarDB-X Operator安装PolarDB-

10、X 7.4.3.第3步:连接PolarDB-X集群 7.4.4.第4步:启动业务 7.4.5.第5步:体验PolarDB-X高可用能力 8.常见问题解答 646667707274777980848590939397102102103105109110111115116120127从入门到实战 目录PolarDB-X(开源版)IV 文档版本:20220707PolarDB-X是一款面向超高并发、海量存储、复杂查询场景设计的云原生分布式数据库系统。其采用Shared-Nothing与存储计算分离架构,支持水平扩展、分布式事务、混合负载等能力,具备企业级、云原生、高可用、高度兼容MySQL系统及生态

11、等特点。PolarDB-X最初为解决阿里巴巴天猫“双十一”核心交易系统数据库扩展性瓶颈而生,之后伴随阿里云一路成长,是一款经过多种核心业务场景验证的、成熟稳定的数据库系统。PolarDB-X的核心特性如下:水平扩展水平扩展PolarDB-X采用Shared-Nothing架构进行设计,支持多种Hash和Range数据拆分算法,通过隐式主键拆分和数据分片动态调度,实现系统的透明水平扩展。分布式事务分布式事务PolarDB-X采用MVCC+TSO方案及2PC协议实现分布式事务。事务满足ACID特性,支持RC/RR隔离级别,并通过一阶段提交、只读事务、异步提交等优化实现事务的高性能。混合负载HTAP

12、混合负载HTAPPolarDB-X通过原生MPP能力实现对分析型查询的支持,通过CPU quota约束、内存池化、存储资源分离等实现了OLTP与OLAP流量的强隔离,通过将数据库中的冷数据归档到OSS或其他低成本存储来降低后台系统的数据存储成本。企业级企业级PolarDB-X为企业场景设计了诸多内核能力,例如SQL限流、SQL Advisor、TDE、三权分立、FlashbackQuery等。云原生云原生PolarDB-X在阿里云上有多年的云原生实践,支持通过K8S Operator管理集群资源,支持公有云、混合云、专有云等多种形态进行部署,并支持国产化操作系统和芯片。高可用高可用通过多数派P

13、axos协议实现数据强一致,支持两地三中心、三地五副本等多种容灾方式,同时通过TableGroup、Geo-locality等提高系统可用性。兼容MySQL系统及生态兼容MySQL系统及生态PolarDB-X的目标是完全兼容MySQL,目前兼容的内容包括MySQL协议、MySQL大部分语法、Collation、事务隔离级别、Binlog、Replication等。2009年,阿里巴巴在进行年度收支核算时,发现业务对数据存取资源的需求呈指数级扩张,并与业务指标增长之间产生鸿沟。此时的阿里巴巴清晰的意识到,如果不通过技术创新平衡成本和增长需求,必将对未来发展产生影响。于是去IOE的说法被首次提出。

14、去IOE的目的绝不仅仅是摆脱几个传统IT厂商的产品,而是在互联网+、云计算快速兴起后,企业用户迫切需要能够保证其业务发展和创新的更加开放、灵活、高效的IT基础架构。概括地说,去IOE推动了用横向扩展取代纵向扩展,用开源软件代替商业软件的进程,可以看作是云计算的奠基之举。其中对传统商业数据库的替换又是去IOE的核心。1.PolarDB-X数据库概述1.PolarDB-X数据库概述1.1.PolarDB-X发展历史1.1.PolarDB-X发展历史PolarDB-X(开源版)从入门到实战 PolarDB-X数据库概述 文档版本:202207076TDDL阶段TDDL阶段关键字:阿里巴巴大规模应用;

15、分库分表技术开创者关键字:阿里巴巴大规模应用;分库分表技术开创者去掉传统商业数据库后,是否有更适合的产品和解决方案来替代呢?对于数据库来说,答案是明确的:开源+分布式,开源解决成本问题,分布式解决性能和容量问题。同年11月11日,TDDL(Taobao Distributed Data Layer)首次发布,开创了分布式数据库中间件+开源数据库应用在高并发交易系统的先河。当时的TDDL虽然是一个客户端jar,但创造性地提出了三层(Matrix、Group、Atom)拆分拓扑结构,满足应用按需制定拆分策略的同时,解决了弹性扩容、本地高可用等企业应用难题。20112015,TDDL成为阿里巴巴数据

16、库系统的统一接入标准,开始面向阿里巴巴所有业务提供分布式数据库服务。目前集团内运行实例约30万套,业务覆盖支付、资金、即时通信、媒体等十余大类。丰富的业务模型造就了TDDL优秀的MySQL语法兼容性,庞大的业务规模使TDDL打磨出优异的内核稳定性,历年双十一的加持孵化了TDDL业界顶尖的高性能高吞吐。与此同时,阿里巴巴分布式数据库的商业化进程悄然启动。DRDS阶段DRDS阶段关键字:云端商业化;高性能SQL引擎关键字:云端商业化;高性能SQL引擎DRDS(Distributed Relational Database Service)于2016年初迎来了第一个公有云付费客户。自此,DRDS一直

17、在不断努力提升单位资源的处理能力,以求最大限度帮助客户降本增效。DRDS研发团队于2017年发布的新一代高性能分布式SQL引擎,通过PlanCache、FastSQL、定制化的底层驱动使Batch写、含拆分键Select、读写分离等操作具有300%的性能提升;跨库聚合、分布式Join、分布式事务等操作具有200%性能提升。DRDS提供更低使用成本,包括对不同维度的表的Join操作的支持、内存中二次排序的支持和对内存结果做函数计算的支持等。DRDS还针对分布式数据库使用场景提供一系列的企业级特性,包括全局Sequence服务、读写分离、数据库账号体系和DRDS后台运维指令集。凭借优异性能和相对优

18、良的体验,DRDS迅速在公有云积累了一批忠实用户。DRDS的商业化成功,标志着阿里巴巴分布式数据库技术完成了从内部孵化到市场化运营的阶段性转变,以及从分布式数据库中间件到分布式数据库系统实质性跨越。PolarDB-X 1.0阶段PolarDB-X 1.0阶段关键字:架构与品牌升级;国计民生项目关键字:架构与品牌升级;国计民生项目从入门到实战 PolarDB-X数据库概述PolarDB-X(开源版)7 文档版本:2022070720182019年,DRDS凭借优异稳定性、超高性能以及丰富的企业特性,承接众多政企行业的国计民生项目,积极投入我国信息系统基础设施数字化转型建设,品牌声誉得到大幅提升,

19、逐步成长为代表阿里巴巴的名片级产品。与此同时,DRDS进行品牌升级,命名为PolarDB-X,PolarDB是阿里云自研关系型数据库产品家族名称,X取音Extreme,取意极致。PolarDB-X 1.0支持以PolarDB MySQL作为存储节点,大幅提高集群IO能力以及柔性分布式事务,且面向政企客户需求增强了安全特性,例如,一致性备份恢复、SQL闪回、SQL审计等。PolarDB-X 2.0阶段PolarDB-X 2.0阶段关键字:透明分布式、开源关键字:透明分布式、开源PolarDB-X 2.0是阿里巴巴分布式数据库有史以来最大幅度的版本更新。产品基于透明分布式理念提供了默认主键拆分策略

20、、基于TSO和MVCC的高性能强一致分布式事务、基于一致性Hash分区策略的分布式线性扩展能力、全局一致性Binlog和全局一致性备份能力。数据节点(DN)采用阿里巴巴自研的基于X-Paxos的三副本强一致MySQL分支,确保在容灾过程中RPO=0。目前PolarDB-X 2.0已经采用全新架构在阿里云世界范围内的13个国家和地区提供服务。并提供公有云、专有云、软件版和DBStack多种部署形态满足不同行业客户的需求。PolarDB-X 2.0已全面拥抱开源,毫无保留地和全世界的MySQL社区共同成长,将高性能分布式数据库质量进一步提升,使用门槛尽可能降低。未来,国产化、HTAP混合负载、快速

21、容量变更、多区域容灾多活等均是PolarDB-X 2.0的探索方向。PolarDB-X 采用 Shared-nothing 与存储计算分离架构进行设计,系统由4个核心组件组成。1.2.PolarDB-X产品架构1.2.PolarDB-X产品架构PolarDB-X(开源版)从入门到实战 PolarDB-X数据库概述 文档版本:202207078计算节点(CN,Compute Node)计算节点(CN,Compute Node)计算节点是系统的入口,采用无状态设计(目前最多可扩展至1024个节点),包括 SQL 解析器、优化器、执行器等模块。负责数据分布式路由、计算及动态调度,负责分布式事务 2P

22、C 协调、全局二级索引维护等,同时提供 SQL 限流、三权分立等企业级特性。存储节点(DN,Data Node)存储节点(DN,Data Node)存储节点负责数据的持久化,基于多数派 Paxos 协议提供数据高可靠、强一致保障,同时通过 MVCC 维护分布式事务可见性。与CN相同,DN目前最多支持扩展至1024个节点。元数据服务(GMS,Global Meta Service)元数据服务(GMS,Global Meta Service)元数据服务负责维护全局强一致的 Table/Schema,Statistics 等系统 Meta 信息,维护账号、权限等安全信息,同时提供全局授时服务(即 T

23、SO)。日志节点(CDC,Change Data Capture)日志节点(CDC,Change Data Capture)日志节点提供完全兼容 MySQL Binlog 格式和协议的增量订阅能力,提供兼容 MySQL Replication 协议的主从复制能力。PolarDB-X 提供通过 K8S Operator 方式管理以上4个组件,同时计算节点与存储节点之间可通过私有协议进行 RPC 通信,这些组件对应的仓库如下在:组件名称GitHub地址计算节点(CN,Compute Node)galaxysql元数据服务(GMS,Global Meta Service)galaxyengine存储

24、节点(DN,Data Node)galaxyengine日志节点(CDC,Change Data Capture)galaxycdc私有协议galaxyglueK8S Operatorgalaxykube从入门到实战 PolarDB-X数据库概述PolarDB-X(开源版)9 文档版本:20220707PolarDB-X积极拥抱Kubernetes生态,在Kubernetes上进行扩展,提供了PolarDB-X Operator来支持PolarDB-X集群的相关工作。例如,我们基于Kubernetes的scheduler、apiserver和controller manager,构建了Pola

25、rDB-X自己的控制面,在此基础上,让我们能够对PolarDB-X集群进行部署运维以及相关的一些生命周期产品能力管理;采用Deployment来管理无状态的CN和CDC两个组件;采用类似StatefulSet的方式来管理采用了X-Paxos的DN节点。除了部署、运维等基本的生命周期能力外,PolarDB-X还提供了弹性伸缩、高可用、监控审计、备份恢复等能力。PolarDB-X在以下业务场景中,能够提供金融级高可靠场景金融级高可靠场景基于X-Paxos实现的数据三副本强一致,让业务轻松具备跨多可用区的高可用与容灾能力。海量数据归集场景海量数据归集场景PolarDB-X的平滑扩展能力,让客户轻松实

26、现横向和纵向的容量变更且保持访问性能不变。超高并发访问场景超高并发访问场景深度优化的PolarDB-X计算下推能力显著提升在线事务处理性能,令访问尖峰丝般顺滑。HTAP混合负载场景HTAP混合负载场景无需进行ETL,可对在线数据做实时报表分析。欢迎广大PolarDB-X数据库的客户、用户和爱好者联系我们,反馈您在使用PolarDB-X过程中的任何问题和建议:公共云版官网:https:/ PolarDB-X数据库概述 文档版本:2022070710二维码:从入门到实战 PolarDB-X数据库概述PolarDB-X(开源版)11 文档版本:20220707本节将介绍基于一台配置了CentOS 8

27、.5操作系统的ECS实例(云服务器),通过Docker镜像部署PolarDB-X的安装部署方法,并体验PolarDB-X数据库的分布式特性。此外,本节还将介绍使用PXD工具一键安装PolarDB-X、使用Kubernetes安装PolarDB-X和使用源码编译安装PolarDB-X多种不同的安装编译方法。说明说明本节实验操作部分主要通过阿里云官方网站的云起实验室进行,详情可登录阿里云官方网站,访问如何一键安装部署PolarDB-X了解。本节将介绍基于一台配置了CentOS 8.5操作系统的ECS实例(云服务器),通过Docker镜像部署PolarDB-X的安装部署方法,并体验PolarDB-X

28、数据库的分布式特性。背景信息背景信息PolarDB-X支持通过MySQL Client命令行、第三方客户端以及符合MySQL交互协议的第三方程序代码进行连接。操作步骤操作步骤1.创建ECS实例资源。i.在实验室页面,单击创建资源创建资源。说明说明资源创建过程需要13分钟。ii.(可选)在实验室页面左侧导航栏中,单击云产品资源列表云产品资源列表,可查看本次实验资源相关信息(例如IP地址、用户信息等)。2.一键安装部署PolarDB-X2.一键安装部署PolarDB-X2.1.使用Docker镜像安装部署PolarDB-X2.1.使用Docker镜像安装部署PolarDB-XPolarDB-X(开

29、源版)从入门到实战 一键安装部署PolarDB-X 文档版本:20220707122.安装并启动依赖Docker。i.执行如下命令,安装Docker。curl-fsSL https:/|bash-s docker-mirror Aliyunii.执行如下命令,启动Docker。systemctl start docker3.使用Docker镜像安装PolarDB-X。i.执行如下命令,拉取PolarDB-X容器镜像。docker pull polardbx/polardb-xii.执行如下命令,运行PolarDB-X容器。docker run-d-name some-polardb-x-p 8

30、527:8527 polardbx/polardb-x4.通过MySQL Client命令行连接到PolarDB-X数据库,以登录PolarDB-X数据库。i.执行如下命令,安装MySQL。yum install mysql-yii.(可选)执行如下命令,查看MySQL版本号。mysql-V返回结果如下,表示您已成功安装MySQL。从入门到实战 一键安装部署PolarDB-XPolarDB-X(开源版)13 文档版本:20220707iii.执行如下命令,登录PolarDB-X数据库。mysql-h127.0.0.1-P8527-upolardbx_root-p123456说明说明本实验场景中

31、的PolarDB-X数据库用户名和密码已预设,请您使用上方的命令登录即可。如遇到报错mysql:Warning Using a password on the command line interface can be insecure.ERROR 2013(HY000):Lost connection to MySQL server at reading initial communication packet,system error:0,重新执行登录命令即可。iv.(可选)执行如下命令,查看连接到的数据库的版本。select version();可以看到当前连接到的数据库的版本(5.6.

32、29)与mysql-V查询到的MySQL版本(8.0.26)并不一致,说明此处连接到的是PolarDB-X的数据库实例,而非连接到MySQL数据库。v.(可选)执行如下SQL语句,检查GMS。select*from information_schema.schemata;5.(可选)体验PolarDB-X的分布式特性。i.执行如下SQL语句,创建数据库。create database polarx_example mode=auto;说明说明数据库模式(参数mode)目前有两种,一种是partition,一种是auto。设置mode=auto,表示“透明”,亦即PolarDB-X会透明、自动地

33、处理好与分布式相关的一些工作。ii.执行如下SQL语句,使用polarx_example数据库。use polarx_example;PolarDB-X(开源版)从入门到实战 一键安装部署PolarDB-X 文档版本:2022070714iii.执行如下SQL语句,创建数据表。create table example(id bigint(11)auto_increment NOT NULL,name varchar(255)DEFAULT NULL,score bigint(11)DEFAULT NULL,primary key(id)engine=InnoDB default charset

34、=utf8 partition by hash(id)partitions 8;说明说明如上命令显式指明了用于拆分的列以及拆分的分片数(根据id列使用Hash拆分为8个分片)。为证明在auto模式下,我们可以不必关心具体分片的方法(分片方式对用户透明),可以将建表语句中的partition部分去掉,再创建一张表(假定名为example2),来进行对比。create table example2(id bigint(11)auto_increment NOT NULL,name varchar(255)DEFAULT NULL,score bigint(11)DEFAULT NULL,prima

35、ry key(id)engine=InnoDB default charset=utf8;iv.执行如下SQL语句,向example数据表中插入数据。insert into example values(null,lily,375),(null,lisa,400),(null,ljh,500);v.执行如下SQL语句,查询example表所有数据。select*from example;从入门到实战 一键安装部署PolarDB-XPolarDB-X(开源版)15 文档版本:20220707vi.执行如下SQL语句,查看example和example2两个数据表的分区。show topology

36、 from example;show topology from example2;说明说明在单机部署数据库时,数据表表一定是本地存储的。但在分布式部署数据库时,数据表可能会分成若干个分片。使用show topology命令可以展示一张数据表里的分片情况。返回结果如下,您可以看到example数据表分布在8个分区。example2数据表同样分布在8个分区。可以看到,在不显式指定分片方式的情况下,PolarDB-X会自动处理与分布式相关的工作,降低学习和使用的门槛。6.(可选)执行如下SQL语句,检查CDC。show master status;#查看当前节点状态(Binlog记录到的位置)sh

37、ow binlog events in binlog.000001 from 4;#查看Binglog中的事件PolarDB-X(开源版)从入门到实战 一键安装部署PolarDB-X 文档版本:20220707167.(可选)执行如下SQL语句,检查DN和CN。show storage;show mpp;8.输入exit退出数据库。9.执行如下命令,停止PolarDB-X容器。docker stop some-polardb-xPXD是PolarDB-X的部署工具,除了支持在本地一键快速拉起测试环境外,也支持在Linux集群中通过指定的拓扑的方式部署PolarDB-X分布式数据库。本节将介绍如

38、何使用PXD工具一键安装PolarDB-X。2.2.(可选)使用PXD工具一键安装2.2.(可选)使用PXD工具一键安装PolarDB-XPolarDB-X从入门到实战 一键安装部署PolarDB-XPolarDB-X(开源版)17 文档版本:20220707前提条件前提条件确保已安装并启动Docker。确保已安装MySQL Client。操作步骤操作步骤说明说明本节的实验场景使用virtual environment安装PXD工具。有关使用PXD工具一键安装PolarDB-X的详情,请参见通过PXD部署集群1.安装PXD。i.执行如下命令,创建并激活虚拟场景。python3-m venv v

39、envsource venv/bin/activateii.执行如下命令,升级pip。pip install-upgrade pipiii.执行如下命令,安装PXD。pip install pxd2.部署PolarDB-X。执行如下命令,创建一个PolarDB-X数据库,其中GMS、CN、DN和CDC节点个数为1。pxd tryout执行如下命令,创建一个PolarDB-X数据库,指定CN、DN和CDC节点个数为1以及版本为latest。pxd tryout-cn_replica 1-cn_version latest-dn_replica 1-dn_version latest-cdc_re

40、plica 1-cdc_version latest返回结果如下,表示您已成功部署PolarDB-X数据库,您可以看到输出的连接信息,通过MySQLClient即可连接。PolarDB-X(开源版)从入门到实战 一键安装部署PolarDB-X 文档版本:2022070718注意注意PolarDB-X管理员账号的密码随机生成,仅出现这一次,请注意保存。3.执行如下命令,登录PolarDB-X数据库。mysql-h127.0.0.1-P8527-upolardbx_root-p123456#请将账号密码替换为上步中成的管理员账号和密码4.体验PolarDB-X。i.执行如下SQL语句,检查GMS。

41、select*from information_schema.schemata;ii.执行如下SQL语句,创建数据库。create database polarx_example mode=auto;iii.执行如下SQL语句,使用polarx_example数据库。use polarx_example;iv.执行如下SQL语句,创建数据表。create table example(id bigint(11)auto_increment NOT NULL,name varchar(255)DEFAULT NULL,score bigint(11)DEFAULT NULL,primary key

42、(id)engine=InnoDB default charset=utf8 partition by hash(id)partitions 8;v.执行如下SQL语句,向example数据表中插入数据。insert into example values(null,lily,375),(null,lisa,400),(null,ljh,500);vi.执行如下SQL语句,查询example表所有数据。select*from example;从入门到实战 一键安装部署PolarDB-XPolarDB-X(开源版)19 文档版本:20220707vii.执行如下SQL语句,查看example数据

43、表的分区。show topology from example;返回结果如下,您可以看到example数据表分布在8个分区。viii.执行如下SQL语句,检查CDC。show master status;show binlog events in binlog.000001 from 4;ix.执行如下SQL语句,检查DN和CN。show storage;show mpp;x.输入exit退出数据库。5.执行如下命令,查看当前环境的PolarDB-X状态。pxd list返回如下结果,您可查看到PolarDB-X状态。6.执行如下命令,清理本地环境所有的PolarDB-X。pxd cleanu

44、p本节介绍如何创建一个简单的Kubernetes集群并部署PolarDB-X Operator,并使用Operator部署一个完整的PolarDB-X集群。前提条件前提条件确保已安装并启动Docker。操作步骤操作步骤2.3.(可选)使用Kubernetes安装2.3.(可选)使用Kubernetes安装PolarDB-XPolarDB-XPolarDB-X(开源版)从入门到实战 一键安装部署PolarDB-X 文档版本:2022070720说明说明有关使用Kubernetes安装部署PolarDB-X的详情,请参见通过Kubernetes部署集群。1.安装kubectl。i.执行如下命令,下

45、载kubectl文件。curl-LO https:/ https:/ https:/ install minikube-linux-amd64/usr/local/bin/minikube说明说明minikube是由社区维护的用于快速创建Kubernetes测试集群的工具,适合测试和学习Kubernetes。使用minikube创建的Kubernetes集群可以运行在容器或是虚拟机中。3.安装Helm3。i.执行如下命令,下载Helm3。wget https:/labfileapp.oss-cn- helm-v3.9.0-linux-amd64.tar.gziii.执行如下命令,移动到系统目录

46、。mv linux-amd64/helm/usr/local/bin/helm4.使用minikube创建Kubernetes集群。说明说明本实验以在CentOS 8.5上使用minikube创建Kubernetes为例。如您使用其他操作系统部署minikube(例如macOS或Windows),部分步骤可能略有不同。从入门到实战 一键安装部署PolarDB-XPolarDB-X(开源版)21 文档版本:20220707i.执行如下命令,新建账号galaxykube,并将galaxykube加入Docker组中。useradd-ms/bin/bash galaxykube usermod-aG

47、 docker galaxykube 说明说明minikube要求使用非root账号进行部署,所以您需要新建一个账号。ii.执行如下命令,切换到账号galaxykube。su galaxykubeiii.执行如下命令,进入到home/galaxykube目录。cdiv.执行如下命令,启动一个minikube。minikube start-cpus 4-memory 7168-image-mirror-country cn-registry-mirror=https:/说明说明这里我们使用的是阿里云的minikube镜像源以及USTC提供的Docker镜像源来加速镜像的拉取。返回结果如下,表示m

48、inikube已经正常运行,minikube将自动设置kubectl的配置文件。v.执行如下命令,使用kubectl查看集群信息。minikube kubectl-cluster-info返回如下结果,您可以查看到集群相关信息。5.部署 PolarDB-X Operator。PolarDB-X(开源版)从入门到实战 一键安装部署PolarDB-X 文档版本:2022070722i.执行如下命令,创建一个名为polardbx-operator-system的命名空间。kubectl create namespace polardbx-operator-systemii.执行如下命令,安装Pola

49、rDB-X Operator。helm install-namespace polardbx-operator-system polardbx-operator https:/ Operator组件的运行情况。kubectl get pods-namespace polardbx-operator-system请您耐心等待2分钟,将看到返回结果如下,等待所有组件都进入Running状态,表示PolarDB-XOperator已经安装完成。6.部署 PolarDB-X 集群。i.执行如下命令,部署一个PolarDB-X集群,它包含1个GMS 节点、1个 CN节点、1个DN节点和1 个CDC节点。

50、echo apiVersion: annotations:polardbx/topology-mode-guide:quick-start|kubectl apply-f-ii.执行如下命令,查看创建状态。kubectl get polardbxcluster-w请您耐心等待大约七分钟,将获得返回结果如下。当PHASE显示为Running时,表示PolarDB-X集群已经部署完成。现在您可以开始连接并体验PolarDB-X分布式数据库了。2.4.(可选)使用源码编译安装PolarDB-X2.4.(可选)使用源码编译安装PolarDB-X从入门到实战 一键安装部署PolarDB-XPolarDB

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服