《PolarDB for PostgreSQL源码与应用实战》——PolarDB for PostgreSQL 基础入门(2)

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: 《PolarDB for PostgreSQL源码与应用实战》——PolarDB for PostgreSQL 基础入门(2)

《PolarDB for PostgreSQL源码与应用实战》——PolarDB-PostgreSQL开源核心Feature介绍(1) https://developer.aliyun.com/article/1232762?groupCode=polardbforpg


(二)三种部署方式


下面再介绍一下部署,包含三种方式。


image.png


第一种是一键式的部署,为了便于用户使用,用户只要调用OneKey.sh脚本就可以完成部署,它会默认地在单机上生成一个有三副本的一套环境,但前提是需要安装系统的一些配置。


第二种是Docker部署,有很多Docker的使用者,可以用Docker的命令来生成这一套,这种环境在Docker里面生成。另外,它也是使用默认的三副本的环境。


如果大家想自定义安装,安装一个不是三副本的,比方说安装流复制或者安装不同的机器,就可以用第三种方式。下面我们分别介绍一下这几种方式的使用。


(三)环境依赖设置


首先是安装整个OS系统依赖包相关的一些配置,这里面包含依赖的软件包的安装,另外需要安装系统的环境变量,要为系统增加互信,互信增加了之后,在某个节点执行命令之后,因为这两个机器建立了互信,所以不需要再输入密码了,这样便于进行后面的一些操作。


这个过程我们也可以做一个简单的演示依赖。


image.png


首先可以看一下这个命令,刚才的点了之后它会让我们输入ROOT密码,因为这些包已经都安装完成了,之后可以看一下

我们环境变量的配置。


image.png


看到这个环境变量的文件,其实我已经把信息加进来了,要改的主要就是PASS和LIBRARY PASS相关的这两个路径要设

置上来,便于它在敲命令的时候,自动到我们的安装目录下去找这个程序,否则可能找不到。


上面有其他的路径,比方说这套系统里面有多套PG环境,可以通过这种方式来切换环境,这里面的用户名大家可以换成自己的用户名。


image.png


接下来我们看一下运行的互信命令,它会把你的Key拷贝过来,这样多个机器上就可以建立互信。

在建立互信时,本机的IP也要输入一下,来建立互信,这样才能全都打通。另外因为现在这个已经安装过一次,执行过命

令了,所以这里面提示已经安装过了,否则会跟大家一样显示“执行成功”。

互信相关的配置完成以后,系统的环境就部署完了,之后就可以调用我们的脚本了。


(四)一键式部署


1、一键式部署

$ ./onekey.sh all


2、系统状态检查

查看已安装的PolarDB进程:

$ ps -ef|grep polardb

查看复制状态:

$ psql -p 10001 -d postgres -c "select * from pg_stat_replication;"

查看Paxos角色及状态:

$ psql -p 10001 -d postgres -c "select * from polar_dma_cluster_status;"


3、一键式部署原理

一键式脚本使用说明: Usage: onekey.sh [all|build|configure|deploy|setup|dependencies|cm|clean]


4、环境清理(会删除数据,慎用)

onekey脚本可以在这个界面来看一下。

onekey在程序的顶层目录下,首先我们去执行这个脚本,加一个参数‘all’,就是一键式把所有的信息都装上。首先可以看

到,它其实是做了一个编译的过程,所以如果你要调用onekey,其实前面编译都是不用关心的,它会自动实现。


image.png


这里简单介绍一下onekey脚本的工作原理,其实很简单,它里面包含了很多个跟安装部署有关的步骤,这个all相当于就是所有步骤的一个集合,如果大家对整个集群相关的一些命令不是很了解的话,也可以通过这个文件去查看它的用法。


image.png


首先路径我们是指定了刚才的安装路径,就是PolarDB下面的PolarDB home目录,这个目录就相当于是我们编辑以后程序会安装到这里。在这里我们首先会去调用它的build命令来进行编译,编译好以后就创建了一个目录用来存我们的配置文件,之后调用pg_ctl底下提供了一个命令,有一个prepare的参数会生成各种各样的配置模板,standalone就是单机的模板。我们现在生成的单机模板具有三个副本,它会把模板生成到这个文件里,所以等下可以打开这个文件,看一下它参数的使用情况。


下面的这些步骤分别使用了它的模板来进行部署,部署相当于把刚才编译好的程序安装到各个机器上,因为你可能有多台

机器,‘all’是会把它部署到各个机器上,之后就会把这个系统的环境进行一个clean,它其实是一个相对比较危险的动作,会删除数据,所以大家在用之前需要小心一点。


这个init相当于就是调用init DB来创建整个数据库,并且启动整个集群。之后是Deploy,相当于可以deploy all也可以deploy cm,cm就是我们的经营管理。最后我们调用了一个monitor,查看一下集群的部署是否成功,它的状态怎样。执行完后,相当于刚才就调用了这样的一条命令,onekey.all做的事情刚才已经讲了,先编译之后进行初始化,初始化的时候创建了DB,之后创建了它需要的一些扩展,并且server也启动起来了。


image.png


从monitor看,目前这三个节点也都已经启动起来。可以认为这个环境是执行成功的,接下来我们看一下进程。


image.png


可以看到这几个进程都是存在的,第一个是dn.master,相当于主节点的进程,下面这个是它的备节点,再下面是它的第二个备节点。可以看到这几个节点都是启动的,包括它们内部的一些程序都是存在的,之后我们调用一条命令。


image.png


这条命令主要是调用psql连接到数据库‘_c’执行一条命令,查看一下我们集群的状态。


image.png


《PolarDB for PostgreSQL源码与应用实战》——PolarDB-PostgreSQL开源核心Feature介绍(3) https://developer.aliyun.com/article/1232755?groupCode=polardbforpg


$ ./onekey.sh clean









相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
4月前
|
人工智能 关系型数据库 MySQL
基于阿里云的PolarDB MySQL版实现AI增强数据管理
本文将介绍如何利用阿里云的PolarDB MySQL版结合AI技术,实现数据管理的自动化和智能化。
303 0
|
15天前
|
数据库
|
2月前
|
关系型数据库 分布式数据库 数据库
开源云原生数据库PolarDB PostgreSQL 15兼容版本正式发布
PolarDB进行了深度的内核优化,从而实现以更低的成本提供商业数据库的性能。
|
3月前
|
SQL 关系型数据库 MySQL
linux 上源码编译安装 PolarDB-X
linux 上源码编译安装 PolarDB-X
180 6
linux 上源码编译安装 PolarDB-X
|
3月前
|
SQL 存储 关系型数据库
新手如何入门学习PostgreSQL?
新手如何入门学习PostgreSQL?
|
4月前
|
关系型数据库 MySQL 分布式数据库
云原生数据库PolarDB MySQL版的体验评测
我有幸参与了云原生数据库PolarDB MySQL版的体验评测。在这次评测中,我主要关注了以下几个方面:产品控制台操作体验、产品文档阅读体验、产品API使用体验、控制台产品监控页面以及生态周边。
60 11
云原生数据库PolarDB MySQL版的体验评测
|
3月前
|
关系型数据库 MySQL 分布式数据库
PolarDB 并行查询问题之保证与MySQL的兼容性如何解决
PolarDB 并行查询问题之保证与MySQL的兼容性如何解决
43 1
|
4月前
|
关系型数据库 分布式数据库 数据库
PolarDB产品使用问题之如何进行PostgreSQL(简称PG)的全量和增量备份管理
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
关系型数据库 MySQL 分布式数据库
PolarDB产品使用问题之使用polardb for mysql数据库的外网地址在程序中连接经常超时,如何解决
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
运维 关系型数据库 MySQL
PolarDB产品使用问题之PolarDB MySQL版和PolarDB-X的区别是什么
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。

热门文章

最新文章

相关产品

  • 云原生数据库 PolarDB