快速使用AnalyticDB PostgreSQL版
手动配置
32
教程简介
在本教程中,您将学习如何创建AnalyticDB PostgreSQL 6.0版存储弹性模式实例并通过部署在ECS上的PostgreSQL客户端工具psql查询数据。
云原生数据仓库AnalyticDB PostgreSQL版基于开源项目Greenplum构建,由阿里云深度扩展,兼容ANSI SQL 2003与PostgreSQL/Oracle数据库生态,支持行存储和列存储模式。云原生数据仓库AnalyticDB PostgreSQL版既支持高性能离线数据处理,也支持高并发在线分析查询,是各行业有竞争力的PB级实时数据仓库方案。
我能学到什么
创建AnalyticDB PostgreSQL 6.0版存储弹性模式实例。
通过psql连接AnalyticDB PostgreSQL版实例并查询数据。
操作难度 | 中 |
所需时间 | 32分钟 |
使用的阿里云产品 | |
所需费用 |
准备环境及资源
15
开始教程前,请按以下步骤准备环境和资源:
访问阿里云免费试用。单击页面右上方的登录/注册按钮,并根据页面提示完成账号登录(已有阿里云账号)、账号注册(尚无阿里云账号)或实名认证(根据试用产品要求完成个人实名认证或企业实名认证)。
成功登录后,在AnalyticDB PostgreSQL版控制台右上角单击新建实例。在弹出的创建服务关联角色对话框中,单击确定。
访问阿里云免费试用。在产品类别下选择数据库>数据仓库,在云原生数据仓库 ADB PostgreSQL 4核16GB 100GB 1个月卡片上单击立即试用。
在云原生数据仓库 ADB PostgreSQL面板,配置以下信息。
配置项
说明
本教程示例
地域和可用区
选择实例所在的地域和可用区。
完成购买后无法更换实例的地域。请根据应用所在的地理位置就近选择地域,提升数据库访问速度。
请确保实例与需要连接的ECS实例位于同一个地域,否则无法通过内网互通,只能通过外网互通,无法发挥最佳性能。
华东1(杭州) 华东1可用区J
专有网络(VPC)
选择实例所属专有网络。
如果选择的地域没有VPC,可以前往VPC控制台创建。
请确保实例与需要连接的ECS实例位于同一个VPC,否则无法通过内网互通,只能通过外网互通,无法发挥最佳性能。
vpc-bp1ov7as4yvz4kxei****
专有网络交换机
选择实例所属交换机。
如果选择的可用区没有交换机,可以前往VPC控制台创建。
vsw-bp1mbnyrjtf3ihga1****
资源组
选择实例所属资源组。
默认资源组
样本数据
选择加载。
本教程将使用样本数据。
加载
试用时长
固定为1个月。
1个月
其他配置项,包括实例资源类型、引擎版本、实例系列、向量引擎优化、master资源、节点规格(segment)、节点数量(segment)、磁盘存储类型、加密类型、节点存储容量(segment)、网络类型等,均使用默认值。
勾选服务协议,单击立即试用。
创建实例需要10~15分钟,创建完成后您就可以在AnalyticDB PostgreSQL版控制台实例列表看到新创建的实例。
按如下要求准备ECS,创建ECS实例的方法,请参见自定义购买实例。
所在地域与AnalyticDB PostgreSQL版实例相同,并建议所在可用区相同(以减少网络延时)。
网络类型为专有网络,须确保使用与AnalyticDB PostgreSQL版实例相同的专有网络ID。
操作系统为CentOS 7.9 64位。
绑定公网IP。
您可以前往阿里云免费试用查看您的阿里云账号是否具有云服务器ECS试用资格。如有试用资格,可通过试用ECS来完成教程。如无试用资格,则需使用自有ECS资源才能完成教程。不建议使用生产环境中的自有ECS资源,也不要将教程中的测试数据和自有ECS资源的数据混用。测试完成后及时清理测试数据,避免影响自有资源正常运行。
设置白名单
2
AnalyticDB PostgreSQL版实例默认禁止所有IP地址访问,在连接实例前,您需要将ECS实例的IP地址添加到AnalyticDB PostgreSQL版实例的白名单中。
在AnalyticDB PostgreSQL版控制台实例列表左上角,选择实例所在地域。本教程示例为华东1(杭州)。
单击实例ID。
单击左侧导航栏中的数据安全性。
单击default分组右侧的修改。
在组内白名单文本框中,输入ECS实例的主私网IP。
您可以访问ECS实例列表,在左上角选择地域,单击ECS实例ID,在实例详情页面的网络信息区域查看主私网IP。
单击确定。
创建初始账号
4
连接数据库前,您需要创建AnalyticDB PostgreSQL版实例的初始账号。
单击左侧导航栏中的账号管理。
在账号管理页面,单击右上角的创建初始账号。
填写数据库账号、新密码和确认密码。本教程创建的数据库账号为testuser。
单击确定。
连接实例
3
单击左侧导航栏中的数据库连接,复制AnalyticDB PostgreSQL版实例的内网地址,在步骤4需要填该地址。
登录ECS实例。登录方法,请参见通过密码或密钥认证登录Linux实例。
在ECS实例上安装PostgreSQL客户端工具psql,用于数据查询。
下载psql。
wget https://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/181125/cn_zh/1598426198114/adbpg_client_package.el7.x86_64.tar.gz
解压psql文件。
tar -xzvf adbpg_client_package.el7.x86_64.tar.gz
切换到psql所在的目录
adbpg_client_package/bin
。cd adbpg_client_package/bin
连接AnalyticDB PostgreSQL版实例。
参数说明:
<adbpgaddress>
:步骤1获取的AnalyticDB PostgreSQL版实例的内网地址。5432
:AnalyticDB PostgreSQL版实例的端口号,固定为5432
,无需修改。<dbname>
:需要连接的数据库名称。本教程以连接adb_sampledata_tpch
库为例。<username>
:AnalyticDB PostgreSQL版实例的初始账号。本教程以testuser为例。
./psql -h <adbpgaddress> -p 5432 -d <dbname> -U <username>
输入密码,此时界面不会显示输入的密码。输入完成后按Enter键,显示
adb_sampledata_tpch=>
,表示连接成功。
查询数据
3
在
adb_sampledata_tpch=>
后面,粘贴示例语句。在确认粘贴对话框中,单击确定。SELECT l_returnflag, l_linestatus, SUM(l_quantity) AS sum_qty, SUM(l_extendedprice) AS sum_base_price, SUM(l_extendedprice * (1 - l_discount)) AS sum_disc_price, SUM(l_extendedprice * (1 - l_discount) * (1 + l_tax)) AS sum_charge, AVG(l_quantity) AS avg_qty, AVG(l_extendedprice) AS avg_price, AVG(l_discount) AS avg_disc, COUNT(*) AS count_order FROM lineitem WHERE l_shipdate <= date '1998-12-01' - interval '93 day' GROUP BY l_returnflag, l_linestatus ORDER BY l_returnflag, l_linestatus;
按Enter键,等待大约十几秒钟,得到返回结果。
l_returnflag | l_linestatus | sum_qty | sum_base_price | sum_disc_price | sum_charge | avg_qty | avg_price | avg_disc | count_order --------------+--------------+--------------+------------------+--------------------+----------------------+---------------------+--------------------+------------------------+------------- A | F | 377518399.00 | 566065727797.25 | 537759104278.0656 | 559276670892.116819 | 25.5009751030070973 | 38237.151008958546 | 0.05000657454024320463 | 14804077 N | F | 9851614.00 | 14767438399.17 | 14028805792.2114 | 14590490998.366737 | 25.5224483028409474 | 38257.810660081140 | 0.04997336773765667180 | 385998 N | O | 741677421.00 | 1112128067245.51 | 1056515874754.8915 | 1098789205194.979991 | 25.4980959386728918 | 38233.802663809111 | 0.05000056106457327240 | 29087561 R | F | 377732830.00 | 566431054976.00 | 538110922664.7677 | 559634780885.086257 | 25.5083847896801383 | 38251.219273559761 | 0.04999679231408742045 | 14808183 (4 rows) Time: 20396.601 ms
清理及后续
5
清理实例
云原生数据仓库AnalyticDB PostgreSQL版
云原生数据仓库AnalyticDB PostgreSQL版实例只能免费试用1个月。试用结束后,如需继续使用,请在实例到期前及时续费,续费操作,请参见续费说明。到期不续费,实例会自动释放,数据被清理。如不再继续使用,您可以手动释放,释放操作,请参见释放实例。
云服务器ECS
如果是按量付费的ECS实例,请及时释放实例,以免产生费用。释放方法,请参见释放实例。
如果是包年包月的ECS实例,实例到期后会自动释放。
后续操作
您可以将自建数据库迁移至AnalyticDB PostgreSQL版实例,具体操作,请参见:
总结
常用知识点
问题:不配置白名单,ECS实例可以连接AnalyticDB PostgreSQL版实例吗?(单选题)
可以连接
无法连接
正确答案是无法连接。AnalyticDB PostgreSQL版实例默认禁止所有IP地址访问,在连接实例前,您需要将ECS实例的IP地址添加到AnalyticDB PostgreSQL版实例的白名单中。