如何使用与OS用户不同的名称创建Postgres 11用户/角色?

时间:2019-03-31 19:05:23

标签: postgresql centos7 roles user-management

我是PostgreSQL的新手,我正在尝试在Postgres 11(在CentOS7上运行)上创建一个用户名/角色,该用户名/角色(例如)“ json_docs_admin”(与密码相同),可以在操作系统下使用用户(例如,“ app_user”)以本地连接到数据库。

我尝试使用“ postgres”用户和命令“ psql -d template1”连接到Postgres,并运行以下命令:

template1=# create role json_docs_admin with login password 'json_docs_admin';
CREATE ROLE
template1=# create database json_docs owner=json_docs_admin;
CREATE DATABASE
template1=# GRANT ALL PRIVILEGES ON DATABASE json_docs TO json_docs_admin;
GRANT

我更改了/var/lib/pgsql/11/data/pg_hba.conf,以便可以在服务器上建立本地连接,并且我已经重新启动了postgresql服务。

然后,回到“ app_user”用户下,当我尝试连接到数据库时,出现以下错误:

$psql -d json_docs -U json_docs_admin
Password for user json_docs_admin: 
psql: FATAL:  database "json_docs" does not exist

有人可以让我知道我做错了什么吗? 谢谢。

0 个答案:

没有答案