初识

PostgreSQL 是一个免费的开源数据库系统,支持关系(SQL)和非关系(JSON)查询。

PostgreSQL是在加州大学伯克利计算机科学系发明的。

它始于1986年的一个项目,目标是创建一个具有支持多种数据类型所需的最小功能的数据库系统。

一开始,PostgreSQL运行在UNIX平台上,但现在它可以运行在各种平台上,包括Windows和MacOS。

参考:

w3schools:PostgreSQL Tutorial

GitHub:postgres

安装

windows 详见:w3schools:Install Introduction

我的电脑使用Arch Linux

Docker安装

参考:

DockerHub:postgres

YouTube:How To Build A Complete JSON API In Golang (JWT, Postgres, and Docker) Part 2

这将创建一个postgres的Docker容器,密码gobank、映射5432端口到主机端口,默认数据库postgres,用户名默认postgres

1
docker run --name some-postgres -e POSTGRES_PASSWORD=gobank -p 5432:5432 -d postgres

客户端

psql

SQL Shell(psql)是一个基于终端的程序,您可以在命令行终端中编写和执行SQL语法。

它是postgres自带的连接工具

参考:

w3schools:PostgreSQL Get Started

pgcli

pgcli 是一个用于 PostgreSQL 数据库的命令行界面(CLI),它提供了一种功能强大且用户友好的方式与 PostgreSQL 数据库进行交互和管理。

  • 交互式界面:pgcli 提供了一个交互式的命令行界面,使用户可以通过简单的命令与 PostgreSQL 数据库进行交互,而无需依赖于复杂的图形用户界面(GUI)工具。

  • 自动完成:pgcli 支持命令和 SQL 语句的自动完成功能,这可以显著提高用户的工作效率。用户可以通过按下 Tab 键来获取可能的命令或 SQL 关键字建议。

  • 语法高亮:pgcli 在命令行界面中提供了 SQL 语法高亮功能,使用户能够更清晰地识别和理解 SQL 查询和命令。

  • 历史记录:pgcli 自动记录用户执行的命令和 SQL 查询,并将其保存在历史记录中,用户可以通过向上和向下键轻松地浏览和重新执行以前执行过的命令。

  • 多行编辑:pgcli 允许用户在多行模式下编辑 SQL 查询,这使得编写复杂的查询变得更加简单和直观。

  • 表格显示:pgcli 在执行查询时会将结果以表格的形式直观地显示在命令行界面中,使用户可以更容易地查看和分析查询结果。

  • 数据库连接管理:pgcli 允许用户轻松地连接到不同的 PostgreSQL 数据库,并且可以保存连接信息以便下次快速连接。

Arch 安装

1
yay -S pgcli

连接

1
pgcli -h localhost -u postgres -W
  • -h连接本机localhost的postgres
  • 默认端口5432
  • -u用户postgres
  • -W交互式输入密码