如何一键本地部署PolarDB for PostgreSQL

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介: 《PolarDB for PostgreSQL动手实践》系列第一期,带您体验如何本地一键安装快速部署云原生开源数据库PolarDB for PostgreSQL。

如何一键本地部署PolarDB for PostgreSQL

1. 创建实验资源

开始实验之前,您需要先创建实验相关资源。

  1. 在实验室页面,单击创建资源
  2. (可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、用户信息等)。

说明:资源创建过程需要3~5分钟。


2. 创建依赖

注意:本实验环境已内置Docker环境以及PolarDB for PostgreSQL开源版的镜像资源,所以可以跳过本章节直接进入第三步。如果开发者想尝试在本地环境搭建PolarDB则需先参考本部分安装Docker。

PolarDB for PostgreSQL的本地安装部署依赖Docker,需要在机器上预装Docker。本步骤指导您如何在ECS实例上安装Docker。

  1. 执行如下命令,配置Docker的yum软件源。
yum install -y yum-utils
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
  1. 执行如下命令,安装Docker。
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
  1. 执行如下命令,启动Docker系统服务。
systemctl start docker
  1. 执行如下命令,测试Docker是否安装成功。
docker run hello-world
  1. 返回结果如下,表示Docker已经安装成功。


3. 使用Docker直接部署PolarDB for PostgreSQL实例

DockerHub上已有内含PolarDB-PG多形态实例的镜像。直接拉取镜像并运行,即可启动PolarDB实例。本步骤指导您如何使用Docker部署PolarDB-PG实例。

  1. 执行如下命令,拉取PolarDB-PG实例镜像。
docker pull polardb/polardb_pg_local_instance:htap
  1. 执行如下命令,创建运行并进入容器。
docker run \
    -it --cap-add=SYS_PTRACE --privileged=true \
    --name polardb_pg_htap \
    polardb/polardb_pg_local_instance:htap \
    bash
  1. 执行如下命令,使用psql客户端工具连接PolarDB-PG并执行SQL。
psql -h 127.0.0.1 -c 'select version();'

返回结果如下,表示PolarDB-PG单节点实例连接成功,并且查看到版本号。

  1. 输入exit并回车,退出容器。


4. 使用Docker在开发镜像中源码编译部署PolarDB for PostgreSQL实例

DockerHub上已有包含源码编译PolarDB for PostgreSQL所需所有工具和依赖的开发镜像。拉取镜像并启动容器,克隆代码,然后从源码编译出 PolarDB for PostgreSQL的各种形态的实例。本步骤指导您如何使用Docker在开发镜像中源码编译部署PolarDB for PostgreSQL单节点实例、双节点(一主一备)实例和HTAP 实例(一主两备)。

  1. 执行如下命令,拉取PolarDB-PG开发镜像。
docker pull polardb/polardb_pg_devel
  1. 执行如下命令,创建并启动容器。
docker run -it \
    --cap-add=SYS_PTRACE --privileged=true \
    --name polardb_pg \
    polardb/polardb_pg_devel bash
  1. 执行如下命令,从GitHub上克隆PolarDB-PG稳定分支源码。

说明:若存在网络问题可以尝试Gitee中国内地镜像:git clone -b POLARDB_11_STABLE https://gitee.com/mirrors/PolarDB-for-PostgreSQL.git

git clone -b POLARDB_11_STABLE https://github.com/ApsaraDB/PolarDB-for-PostgreSQL.git
  1. 执行如下命令,进入源码目录。
cd PolarDB-for-PostgreSQL/
  1. 部署PolarDB for PostgreSQL单节点实例。

5.1 执行如下命令,部署PolarDB for PostgreSQL单节点实例。

./polardb_build.sh

返回结果如下,表示PolarDB for PostgreSQL单节点实例部署成功。

5.2 执行如下命令,使用psql客户端工具连接单节点并执行SQL语句。

psql -h 127.0.0.1 -p5432 -c 'select version();'

返回结果如下,表示PolarDB for PostgreSQL单节点连接成功,并且查看到版本号。

  1. 部署PolarDB for PostgreSQL双节点(一主一备)实例。

6.1 执行如下命令,部署PolarDB for PostgreSQL双节点(一主一备)实例。

./polardb_build.sh --withrep --repnum=1

返回结果如下,表示PolarDB for PostgreSQL双节点(一主一备)实例部署成功。

6.2 执行如下命令,分别连接两个节点并执行SQL语句。

psql -h 127.0.0.1 -p5432 -c 'select version();'psql -h 127.0.0.1 -p5433 -c 'select version();'

返回结果如下,表示PolarDB for PostgreSQL双节点连接成功,并且查看到版本号。

  1. 部署PolarDB for PostgreSQL HTAP实例(一主两备)。

7.1 执行如下命令,部署PolarDB for PostgreSQL HTAP实例(一主两备)。

./polardb_build.sh --initpx

返回结果如下,表示PolarDB for PostgreSQL HTAP实例(一主两备)部署成功。

7.2 执行如下命令,分别连接三个节点并执行SQL语句。

psql -h 127.0.0.1 -p5432 -c 'select version();'psql -h 127.0.0.1 -p5433 -c 'select version();'psql -h 127.0.0.1 -p5434 -c 'select version();'

返回结果如下,表示PolarDB for PostgreSQL三节点连接成功,并且查看到版本号。

实验链接:https://developer.aliyun.com/adc/scenario/1498f6bca97c4d668ff5ba75b8b889c8

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
2天前
|
关系型数据库 MySQL 数据库
测试部署PolarDB-X 分布式与集中式
在本文中,作者详述了在CentOS 7.9上部署测试PolarDB-X分布式与集中式数据库的过程。PolarDB-X作为阿里云优化的分布式数据库,提供高稳定性和与MySQL的兼容性,是应对单体数据库扩展性和性能瓶颈的解决方案,同时也符合国产化需求。文章介绍了部署环境准备,包括关闭防火墙和SELinux,设置系统参数,安装Python3和Docker,以及配置MySQL客户端。接着,通过PXD工具部署了PolarDB-X的集中式和分布式版,遇到的问题包括阿里云镜像源异常导致的部署失败以及指定版本安装的困扰。最后,作者进行了初步的压力测试,并对文档完善、生态工具建设以及提供更多使用案例提出了建议。
17 4
测试部署PolarDB-X 分布式与集中式
|
2天前
|
监控 关系型数据库 MySQL
基于AnolisOS8.6+PolarDB-X部署ZABBIX6.0
在AnolisOS-8.6-x86_64-minimal虚拟环境中,使用VirtualBox配置2 vCPU,4G RAM和60 vDisk,下载并安装PolarDB-X,包括libaio和ncurses-devel依赖。创建polarx用户,设置权限和目录结构,编写my.cnf配置文件,然后初始化并启动PolarDB-X。接着安装ZABBIX 6.0,创建数据库、用户及权限,导入数据,并编辑Zabbix配置文件以匹配PolarDB-X。最后,重启相关服务,启用并检查状态,通过指定IP访问Zabbix Web界面,注意初始账号密码为Admin / zabbix。
|
2天前
|
Cloud Native 关系型数据库 分布式数据库
【PolarDB开源】PolarDB数据迁移实战:平滑过渡至云原生数据库
【5月更文挑战第24天】本文介绍了如何平滑迁移数据至阿里云的云原生数据库PolarDB,包括迁移准备、策略选择、步骤、验证及示例代码。通过需求分析、环境准备和数据评估,选择全量、增量或在线迁移策略。使用数据导出、导入及同步工具(如DTS)完成迁移,并在完成后验证数据一致性、性能和安全。正确执行可确保业务连续性和数据完整性。
8 1
|
2天前
|
存储 弹性计算 固态存储
*PolarDB-PG开源版本 基于ECS+ESSD云盘共享存储的部署测评**
PolarDB-PG在阿里云ECS与ESSD云盘的组合下展现优秀性能,简化部署流程,提供高并发写入时低延迟稳定性。ESSD的高性能IOPS和读取速度优化了数据库表现,只读节点实现近乎实时数据访问。分布式部署保证高可用性,即使面对故障也能快速切换。尽管ESSD初期成本较高,但长期看能降低总体拥有成本,尤其适合高并发、大数据量场景。此解决方案平衡了性能、可用性和成本,是企业级应用的理想选择。
|
4天前
|
关系型数据库 Serverless 分布式数据库
体验PolarDB PostgreSQL Serverless极致弹性
体验PolarDB PostgreSQL Serverless极致弹性
|
4天前
|
自然语言处理 算法 关系型数据库
postgresql 全文检索 SCWS和zhparser部署
UPDATE report_content SET content_tsv = to_tsvector('testzhcfg',content);
20 8
|
7天前
|
Cloud Native 关系型数据库 分布式数据库
云原生数据库PolarDB自定义权限策略参考
本文介绍了自定义权限策略,它是RAM访问控制体系中除系统策略外,用户可创建、更新和删除的权限策略。用户需维护策略版本更新,并将策略绑定到RAM身份以授予权限。策略支持版本控制和删除,但删除前需确保无引用。文章提供了相关操作文档链接,包括创建、修改、删除策略及管理引用记录和版本。此外,列举了PolarDB在MySQL、PostgreSQL和XScale版的自定义权限策略场景和示例,并提示用户在使用时需了解授权信息。
19 0
|
7天前
|
Cloud Native 关系型数据库 分布式数据库
云原生数据库 PolarDB系统权限策略参考
阿里云RAM提供系统策略和自定义策略,其中系统策略由阿里云维护,不可修改,用于快速入门。产品系统策略如AliyunPolardbFullAccess、AliyunPolardbReadOnlyAccess和AliyunPolardbReadOnlyWithSQLLogArchiveAccess分别提供全权、只读和只读加SQL日志归档访问权限。服务关联角色策略如AliyunServiceRolePolicyForPolarDB用于PolarDB访问其他资源。建议遵循最小授权原则。详情参考官方文档。
19 1
|
11天前
|
Cloud Native 关系型数据库 分布式数据库
PolarDB是阿里云自主研发的关系型云原生数据库
【5月更文挑战第14天】PolarDB是阿里云自主研发的关系型云原生数据库
49 4
|
4天前
|
关系型数据库 分布式数据库 数据库
【PolarDB 开源】PolarDB 性能调优实录:提升数据库集群吞吐量的技巧
【5月更文挑战第22天】PolarDB 性能调优关键点包括硬件资源配置、数据库参数调整、索引优化、分区策略、事务优化及性能监控。创建高效索引如`CREATE INDEX idx_name ON table_name (column_name);`,根据业务场景选择分区方式,调整事务隔离级别以提升并发性能。监控 CPU、内存等指标,定期维护数据库,结合业务特点综合调优,从而提升数据库集群吞吐量。这些技巧有助于发挥PolarDB潜力,支持业务高效运行。
20 5

相关产品

  • 云原生数据库 PolarDB