在 PostgreSQL sudo 中创建用户:未知用户

Create user in PostgreSQL sudo: unknown user

我正在尝试在 Ubuntu 20.04:

上安装的 PostgreSQL 中创建一个新用户
$ sudo -u postgres createuser --superuser tommy

但是当我尝试使用该用户创建数据库时,它显示未知用户:

$ sudo -u tommy createdb tommy_db
sudo: unknown user: tommy
sudo: unable to initialize policy plugin

我的想法是,我已经知道有 UNIX 用户和 PostgreSQL 用户,但我不知道是否必须先创建一个 UNIX 用户 tommy。

我想利用post,请问postgreSQL 用户和postgreSQL 中的UNIX 用户在数据库管理方面有什么区别。

PD: 如果我在 plsql 中使用 /du 列出用户,我可以看到创建的用户 tommy:

 Role name |                         Attributes                         | Member of
-----------+------------------------------------------------------------+-----------
 tommy     | Superuser, Create role, Create DB                          | {}
 postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}

您的系统可能默认使用简单的“对等”身份验证。这是基于 Linux 的包管理器在为您创建数据库时使用的常见默认值。

要继续使用该设置,您需要将“tommy”设置为 Linux 用户。或者,您必须编辑 pg_hba.conf 以选择不同的方法,例如 md5(密码)或 gss(kerberos),或者添加身份映射和“peer”来描述哪些 OS 用户是允许以哪些数据库用户身份登录。

Linux 用户和 PostgreSQL 用户之间的唯一连接是使用对等身份验证创建的连接。