Postgres入门:三种免费且简单的方法

2023年 8月 22日 27.4k 0

大家好,开发者们!今年大约有9万人参与了Stack Overflow的调查。令人印象深刻的是,Postgres被评为第一数据库。此外,DB Engines还将PostgreSQL列为全球增长最快的数据库之一。这对我们意味着什么呢?很明显,我们应该努力成为PostgreSQL专家。朝这个方向迈出的一个重要步骤是设置我们自己的数据库进行实践实验。所以,无论你喜欢阅读还是观看,让我们一起走过三种实用、用户友好且完全免费的方式来开始你的PostgreSQL之旅。

方法1: 使用Docker深入学习PostgreSQL

最简单和最经济的开始使用PostgreSQL的方法是使用Docker。只需一个Docker命令,就可以在笔记本电脑上轻松地运行数据库容器:

docker run --name postgresql 
    -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=password 
    -p 5432:5432 
    -d postgres:latest

优势是巨大的—设置数据库非常快速,而且你知道吗?这一切都发生在硬件上。接下来,使用SQL编辑器,比如DataGrip,打开一个数据库连接。确保连接并使用之前提到的Docker命令中的用户名和密码。

连接成功后,执行一些简单的SQL语句,以确保Postgres实例已准备好进行更高级的实验:

create table back_to_the_future(id int, name text);
insert into back_to_the_future(1, 'Doc');
select * from back_to_the_future;

方法2:使用Neon进入云原生Postgres

第二种免费且简单的学习PostgreSQL的方法适用于那些希望从一开始就深入了解公共云环境的人。Neon是一个在云中诞生和成长的与PostgreSQL兼容的数据库。更棒的是,它是无服务器的。可以毫不费力地深入其中,而且它会根据需要自动扩展工作负载。想要开始使用Neon吗?对于我们开发人员来说,命令行就是家,不是吗?首先安装Neon命令行工具:

npm i -g neonctl

然后进行身份验证并创建一个账户:

neonctl auth

创建一个新的项目和数据库实例:

neonctl projects create --name mynewproject --region-id aws-us-east-1
neonctl databases create --name newdb

最后,获取数据库连接字符串,然后就可以开始了:

neonctl connection-string --database-name newdb 

使用该连接字符串通过DataGrip连接到数据库实例:

快速验证一下,可以执行一些简单的SQL命令:

create table matrix(id int, name text);
insert into matrix values(1, 'Neo');
select * from matrix;

方法3:在可扩展的Postgres上构建YugabyteDB

我们总结一下YugabyteDB——PostgreSQL的“猛兽”。它不仅可以跨区域和区域扩展和扩展,而且还可以承受最具挑战性的云灾难。此外,它还有一个特殊的功能:将用户数据固定到特定的地理位置。YugabyteDB Managed(DBaaS)提供了免费的套餐,我们可以在云中免费体验YugabyteDB。它提供了一个专用的单节点实例,供开始使用,并且准备好时可以轻松过渡到他们的专用计划。现在,让我们来看看如何通过命令行启动一个YugabyteDB实例。首先,需要安装工具:ybm。

brew install yugabyte/tap/ybm

接下来,创建一个账户并使用您的身份验证令牌进行登录

ybm signup
ybm auth

最后的步骤涉及设置第一个数据库实例。

ybm cluster create 
    --cluster-name yugabyte 
    --credentials username=admin,password=password-123 
    --cluster-tier Sandbox 
    --cloud-provider AWS 
    --wait

然后将笔记本电脑添加到数据库的IP允许列表中(YugabyteDB团队非常重视安全性)

ybm network-allow-list create 
   --ip-addr $(curl ifconfig.me) 
   --name my-address
​
ybm cluster network allow-list assign \
   --network-allow-list my-address \
   --cluster-name yugabyte

一旦数据库启动,可以获取它的连接字符串。

ybm cluster describe --cluster-name yugabyte

使用该连接字符串在DataGrip中建立连接。

一旦建立了与YugabyteDB的连接,可以发送SQL命令与数据库进行交互。以下是一些示例SQL命令,以确保YugabyteDB已准备好提供服务:

create table avengers(id int, name text);
insert into avengers values(1, 'Hulk');
select * from avengers;

最后

随着PostgreSQL的流行度不断上升,在即将到来的项目中很可能会遇到它。那么为什么等呢?现在就开始吧。没有比实践更好的学习方式了。动起手来,使用本文中概述的三种方法之一启动一个PostgreSQL实例,享受前方的旅程吧。

作者:Denis Magda

更多技术干货请关注公众号“云原生数据库”

squids.cn,目前可体验全网zui低价RDS,免费的迁移工具DBMotion、SQL开发工具等。

相关文章

KubeSphere 部署向量数据库 Milvus 实战指南
探索 Kubernetes 持久化存储之 Longhorn 初窥门径
征服 Docker 镜像访问限制!KubeSphere v3.4.1 成功部署全攻略
那些年在 Terraform 上吃到的糖和踩过的坑
无需 Kubernetes 测试 Kubernetes 网络实现
Kubernetes v1.31 中的移除和主要变更

发布评论