如何快速安装部署PolarDB-X

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: PolarDB-X 为了方便用户体验,提供了免费的实验环境,您可以在实验环境里体验 PolarDB-X 的安装部署和各种内核特性。除了免费的实验,PolarDB-X 也提供免费的视频课程,手把手教你玩转 PolarDB-X 分布式数据库。

PolarDB-X 为了方便用户体验,提供了免费的实验环境,您可以在实验环境里体验 PolarDB-X 的安装部署和各种内核特性。除了免费的实验,PolarDB-X 也提供免费的视频课程,手把手教你玩转 PolarDB-X 分布式数据库。


实践系列文章包含多篇内容,本期从第一讲开始讲解如何快速部署 PolarDB-X 。

实验地址:

https://developer.aliyun.com/adc/scenario/b299867c133b46688912399149997335

视频地址:

https://developer.aliyun.com/live/248029


PolarDB-X 的安装可以使用4种方式:使用Docker镜像安装PolarDB-X、使用PXD工具一键安装PolarDB-X、使用Kubernetes安装PolarDB-X、源码编译安装PolarDB-X


使用Docker镜像安装PolarDB-X

1.创建实验资源

点击“创建资源”按钮,一键创建实验资源。

2.安装依赖

执行如下命令,安装Docker。

curl-fsSL https://get.docker.com | bash-s docker --mirror Aliyun


执行如下命令,启动Docker。

systemctl start docker


3.安装 PolarDB-X 数据库

执行如下命令,拉取PolarDB-X容器镜像

docker pull polardbx/polardb-x

执行如下命令,运行PolarDB-X容器。

docker run -d--name some-polardb-x -p8527:8527 polardbx/polardb-x


4.体验 PolarDB-X 数据库

PolarDB-X支持通过MySQL Client命令行、第三方客户端以及符合MySQL交互协议的第三方程序代码进行连接。本实验场景主要介绍如何通过MySQL Client命令行连接到PolarDB-X数据库。

执行如下命令,安装MySQL。

yum install mysql -y


执行如下命令,查看MySQL版本号。

mysql -V

返回结果如下,表示您已成功安装MySQL。


执行如下命令,登录PolarDB-X数据库。

mysql -h127.0.0.1 -P8527-upolardbx_root-p123456

说明

本实验场景中的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报错,是因为PolarDB-X集群容器在启动中,请您耐心等待三分钟后,重新执行登录命令即可。


执行如下SQL语句,检查GMS。

select * from information_schema.schemata;

5.体验 PolarDB-X 的分布式特性

执行如下SQL语句,创建数据库。

create database polarx_example mode='auto';

执行如下SQL语句,使用polarx_example数据库。

use polarx_example;


执行如下SQL语句,创建数据表。

createtable example (  `id` bigint(11) auto_increment NOTNULL,  `name` varchar(255) DEFAULT NULL,  `score` bigint(11) DEFAULT NULL,  primary key (`id`))  engine=InnoDB default charset=utf8  partition by hash(id)   partitions 8;


执行如下SQL语句,向example数据表中插入数据。

insertinto example values(null,'lily',375),(null,'lisa',400),(null,'ljh',500);


执行如下SQL语句,查询example表所有数据。

select*from example;


执行如下SQL语句,查看example数据表的分区。

show topology from example;


返回结果如下,您可以看到example数据表分布在8个分区。


执行如下SQL语句,检查CDC。

show master status; show binlog events  in'binlog.000001'from4;


执行如下SQL语句,检查DN和CN。

show storage;show mpp;



输入exit退出数据库。


执行如下命令,停止PolarDB-X容器。

说明:完成此步骤后,通过Docker镜像安装PolarDB-X您已全部体验完毕。

docker stop some-polardb-x


使用PXD工具一键安装PolarDB-X

1.安装 PXD

PXD是PolarDB-X的部署工具,除了支持在本地一键快速拉起测试环境外,也支持在Linux集群中通过指定的拓扑的方式部署PolarDB-X分布式数据库。

说明:本实验场景使用virtual environment安装PXD工具。

1.1 执行如下命令,创建并激活虚拟场景。

python3 -m venv venv source venv/bin/activate


1.2 执行如下命令,升级pip。

pip install --upgrade pip


1.3 执行如下命令,安装PXD。

pip install pxd


2.部署 PolarDB-X

说明:部署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_replica 1-cdc_version latest


返回结果如下,表示您已成功部署PolarDB-X数据库,您可以看到输出的连接信息,通过MySQL Client即可连接。

注意:PolarDB-X管理员账号的密码随机生成,仅出现这一次,请注意保存。


3.使用 PolarDB-X 数据库

执行如下命令,登录PolarDB-X数据库。

mysql -h127.0.0.1-P8527 -upolardbx_root -p123456


执行如下SQL语句,检查GMS。

select*from information_schema.schemata;


执行如下SQL语句,创建数据库。

create database polarx_example mode='auto';


执行如下SQL语句,使用polarx_example数据库。sd

use polarx_example;


执行如下SQL语句,创建数据表。

createtable example (  `id` bigint(11) auto_increment NOTNULL,  `name` varchar(255) DEFAULT NULL,  `score` bigint(11) DEFAULT NULL,  primary key (`id`))  engine=InnoDB default charset=utf8  partition by hash(id)  partitions 8;


执行如下SQL语句,向example数据表中插入数据。

insertinto example values(null,'lily',375),(null,'lisa',400),(null,'ljh',500);


执行如下SQL语句,查询example表所有数据。

select*from example;


执行如下SQL语句,查看example数据表的分区。

show topology from example;


返回结果如下,您可以看到example数据表分布在8个分区。


执行如下SQL语句,检查CDC。

show master status; show binlog events  in'binlog.000001'from4;


执行如下SQL语句,检查DN和CN。

show storage;show mpp;


输入exit退出数据库。


4.查看 PolarDB-X 状态

执行如下命令,查看当前环境的PolarDB-X状态。

pxd list


返回如下结果,您可查看到PolarDB-X状态。


清理 PolarDB-X。

执行如下命令,清理本地环境所有的PolarDB-X

pxd cleanup


使用Kubernetes安装PolarDB-X

本步骤将指导您如何创建一个简单的Kubernetes集群并部署PolarDB-X Operator ,使用Operator部署一个完整的PolarDB-X集群,详细文档请参考通过K8S部署

说明:在体验如何通过Kubernetes安装PolarDB-X之前,请您确定已停止通过PXD工具一键安装PolarDB-X的集群。


1.安装kubectl

执行如下命令,下载kubectl文件。

curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl


执行如下命令,赋予可执行权限。

chmod +x ./kubectl


执行如下命令,移动到系统目录。

mv ./kubectl /usr/local/bin/kubectl


2.安装minikube

执行如下命令,下载并安装minikube。

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 sudo install minikube-linux-amd64 /usr/local/bin/minikube


3.安装Helm3

执行如下命令,下载Helm3。

wget https://labfileapp.oss-cn-hangzhou.aliyuncs.com/helm-v3.9.0-linux-amd64.tar.gz


执行如下命令,解压Helm3。

tar -zxvf helm-v3.9.0-linux-amd64.tar.gz


执行如下命令,移动到系统目录。

mv linux-amd64/helm /usr/local/bin/helm


4.使用minikube创建Kubernetes集群。

minikube是由社区维护的用于快速创建Kubernetes测试集群的工具,适合测试和学习Kubernetes。使用minikube创建的Kubernetes集群可以运行在容器或是虚拟机中,本实验场景以CentOS 8.5上创建Kubernetes为例。

说明:如您使用其他操作系统部署minikube,例如macOS或Windows,部分步骤可能略有不同。


执行如下命令,新建账号galaxykube,并将galaxykube加入docker组中。minikube要求使用非root账号进行部署,所有您需要新建一个账号。

useradd -ms /bin/bash galaxykube  usermod -aG docker galaxykube


执行如下命令,切换到账号galaxykube。

su galaxykube


执行如下命令,进入到home/galaxykube目录。

cd


执行如下命令,启动一个minikube。

说明:这里我们使用了阿里云的minikube镜像源以及USTC提供的docker镜像源来加速镜像的拉取。

minikube start --cpus 4 --memory 7168 --image-mirror-country cn --registry-mirror=https://docker.mirrors.ustc.edu.cn --kubernetes-version 1.23.3


返回结果如下,表示minikube已经正常运行,minikube将自动设置kubectl的配置文件。


执行如下命令,使用kubectl查看集群信息。

minikube kubectl -- cluster-info


返回如下结果,您可以查看到集群相关信息.


5.部署 PolarDB-X Operator

执行如下命令,创建一个名为polardbx-operator-system的命名空间。

kubectl create namespace polardbx-operator-system


执行如下命令,安装PolarDB-X Operator。

helm install --namespace polardbx-operator-system polardbx-operator https://github.com/ApsaraDB/galaxykube/releases/download/v1.2.1/polardbx-operator-1.2.1.tgz


执行如下命令,查看PolarDB-X Operator组件的运行情况。

kubectl get pods --namespace polardbx-operator-system


返回结果如下,请您耐心等待2分钟,等待所有组件都进入Running状态,表示PolarDB-X Operator已经安装完成。


6.部署 PolarDB-X 集群

执行如下命令,部署一个PolarDB-X集群,它包含1个GMS 节点、1个 CN节点、1个DN节点和1 个CDC节点。

echo "apiVersion: polardbx.aliyun.com/v1kind: PolarDBXClustermetadata:  name: quick-start  annotations:    polardbx/topology-mode-guide: quick-start"| kubectl apply -f -


执行如下命令,查看创建状态。

kubectl get polardbxcluster -w


返回结果如下,请您耐心等待大约七分钟,当PHASE显示为Running时,表示PolarDB-X集群已经部署完成。现在您可以开始连接并体验PolarDB-X分布式数据库了。


执行如下命令,删除PolarDB-X集群。

说明:您需要将命令中的<name>替换为上一步骤的命令返回结果中的name,例如polardb-x。

kubectl delete polardbxCluster  <name>


源码编译安装PolarDB-X

本步骤将指导您如何使用源码编译安装PolarDB-X,详细文档请详见源码编译安装PolarDB-X

说明:在体验如何使用源码编译安装PolarDB-X之前,请您确定已删除通过Kubernetes安装PolarDB-X的集群。


执行如下命令,安装git。

yum -y install git


执行如下命令,下载源码。

git clone https://github.com/ApsaraDB/PolarDB-X.git


执行如下命令,进入PolarDB-X目录。

cd PolarDB-X


执行如下命令,编译。

说明:make将下载所有源码、工具和库,并构建和安装PolarDB-X。源码将下载到./build目录下,编译好的二进制文件将安装到./build/run目录下。您可以运行make clean来移除安装,并尝试再次构建PolarDB-X。您也可以运行make cleanAll来删除./build下的所有东西。这个过程可能需要半个多小时,取决于您的网络带宽。

make


执行如下命令,运行PolarDB-X。

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


执行如下命令,停止PolarDB-X。

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


相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
|
SQL Kubernetes 关系型数据库
如何一键安装部署PolarDB-X
《PolarDB-X 动手实践》系列第一期,体验如何一键安装部署PolarDB-X。
|
6月前
|
Docker 容器 关系型数据库
【PolarDB-X从入门到精通】 第四讲:PolarDB分布式版安装部署(源码编译部署)
本期课程将于4月11日19:00开始直播,内容包括源码编译基础知识和实践操作,课程目标是使学员掌握源码编译部署技能,为未来发展奠定基础,期待大家在课程中取得丰富的学习成果!
【PolarDB-X从入门到精通】 第四讲:PolarDB分布式版安装部署(源码编译部署)
|
6月前
|
关系型数据库 MySQL 分布式数据库
【PolarDB-X从入门到精通】 第五讲:PolarDB集中式版安装部署(源码编译部署)
4月18日本周四晚19:00,一站式学习源码编译PolarDB-X标准版(集中式),各位敬请期待,我们不见不散!
【PolarDB-X从入门到精通】 第五讲:PolarDB集中式版安装部署(源码编译部署)
|
6月前
|
关系型数据库 MySQL Docker
PolarDB-X安装部署初体验
本文档介绍了体验阿里云PolarDB-X分布式数据库的安装和使用过程。首先提到PolarDB-X在稳定性及性能上的优势,然后详细描述了在CentOS 7环境下遇到的Python版本不兼容和Docker容器iptables配置问题的解决方法。通过创建Python 3.8的虚拟环境解决PyYAML依赖问题,接着在解决Docker容器内部网络问题后,成功安装并启动PolarDB-X。文中强调PolarDB-X完全兼容MySQL,适合熟悉MySQL的用户,并分享了安装历史记录以供参考。
217 7
|
SQL 弹性计算 关系型数据库
【ECS生长万物之开源】如何一键安装部署PolarDB-X
本场景将提供一台配置了CentOS 8.5操作系统的ECS实例(云服务器)。通过本教程的操作,您可以在一台CentOS 8.5操作系统的ECS实例上通过Docker镜像部署PolarDB-X。
|
Kubernetes Oracle Ubuntu
如何-键安装部署 PolarDB-X|学习笔记(一)
快速学习如何-键安装部署 PolarDB-X
如何-键安装部署 PolarDB-X|学习笔记(一)
|
6月前
|
关系型数据库 分布式数据库 数据库
【PolarDB开源】PolarDB-X源码解读:分布式事务处理机制揭秘
【5月更文挑战第20天】PolarDB-X,PolarDB家族的一员,专注于大规模分布式事务处理,采用2PC协议保证ACID特性。源码解析揭示其通过预提交、一致性快照隔离和乐观锁优化事务性能,以及利用事务日志进行故障恢复。深入理解其事务处理机制对开发者掌握分布式数据库核心技术至关重要。随着开源社区的发展,更多优化方案将涌现,助力构建更强大的分布式数据库系统。
220 6
|
4月前
|
关系型数据库 分布式数据库 PolarDB
PolarDB产品使用问题之如何基于Docker进行PolarDB-X单机模拟部署
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
PolarDB产品使用问题之如何基于Docker进行PolarDB-X单机模拟部署
|
4月前
|
Oracle 关系型数据库 分布式数据库
PolarDB产品使用问题之使用pxd安装PolarDB-X出现报错,该怎么办
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
Kubernetes 关系型数据库 分布式数据库
PolarDB产品使用问题之PolarDB-X的架构形态有什么区别
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。

热门文章

最新文章

相关产品

  • 云原生数据库 PolarDB