我是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
有人可以让我知道我做错了什么吗? 谢谢。