迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 数据库 > PostgreSQL >

使用密码连接到 PostgreSQL

作者:迹忆客 最近更新:2023/03/20 浏览次数:

本文展示了使用密码连接 PostgreSQL 的各种方法。它可以通过命令行、pgpass 文件、PGPASSWORD 环境变量或连接字符串。

使用命令行界面 (CLI) 通过密码连接到 PostgreSQL

如果你的机器上安装了 PostgreSQL,你可以尝试不同的方法来连接数据库。一种简单的方法是在命令行中输入 psql,它会询问你 admin 用户的密码。

如果你在命令中只输入 psql 而没有提及用户名,系统将询问你 PostgreSQL 的管理员用户密码,如下所示。

C:\Users\Admin>psql
Password for user Admin:

如果你想使用其他帐户登录,则需要使用标志 -U,然后提供用户名,如下所示。

C:\Users\Admin>psql -U postgres
Password for user postgres:
psql (14.2)
WARNING: Console code page (437) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.
Type "help" for help.

postgres=#

在这里,CLI 要求输入用户 postgres 的密码。登录需要两个步骤。

首先,在 psql 命令中定义用户名,然后当 CLI 询问时,你输入密码。但是我们可以使用一行命令直接连接到 PostgreSQL。

为此,我们需要设置环境变量 PGPASSWORD

在 Windows 中:

C:\Users\Admin>set PGPASSWORD=root

在 Linux 中:

export PGPASSWORD=root

如果我们想连接到 psql,它将从 PGPASSWORD 获取密码,该密码现在在环境中可用。

C:\Users\Admin>psql -U postgres
psql (14.2)
WARNING: Console code page (437) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.
Type "help" for help.

你看,现在它不需要输入密码来连接 psql。从此处了解有关 PostgreSQL 环境变量的更多信息。

pgpass.conf 文件中定义密码以登录 PostgreSQL

在 PostgreSQL 的 APPDATA 文件夹中,有一个名为 pgpass.conf 的文件。你可以在那里定义你的密码。

此外,你可以使用连接参数 passfile 定义你的密码文件。文件格式如下。

hostname:port:database:username:password

这个结构在 PostgreSQL 官方页面这里上提到过。

它知道用户有效的数据库以及该特定用户的密码。

使用带密码的连接字符串连接到 PostgreSQL

当你获得不在 localhost 中的在线数据库或远程数据库时,你需要通过连接字符串进行连接。连接字符串包含一段用户名、密码、数据库名称、端口和主机地址。

连接字符串的格式如下。

postgresql://<username>:<password>@<host><port>/<database_name>?sslmode=require

如果你使用 localhost,你不需要对远程数据库使用 sslmode。在 Python、C++ 或 Java 项目中使用 PostgreSQL 数据库时,此方法最有用。

因此,使用连接字符串连接数据库(本地)的命令如下。

C:\Users\Admin>psql postgresql://postgres:root@localhost:5432/postgres
psql (14.2)
WARNING: Console code page (437) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.
Type "help" for help.

postgres=#

这里是可用于客户端身份验证的方法列表。它来自 PostgreSQL 官方文档。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 PSQL 中运行 SQL 文件

发布时间:2023/03/20 浏览次数:178 分类:数据库

本文解释了如何直接从终端/命令行或 psql shell 运行 SQL 文件。为此,你需要指定主机名、端口、用户名和数据库名称。

在 PostgreSQL 中使用循环

发布时间:2023/03/20 浏览次数:124 分类:PostgreSQL

在 PL/SQL 中,你可能需要在 Postgres 中使用循环。我们可以使用 FOR 和 WHILE 语句来创建循环。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便