postgresql - 如何创建一个名称与操作系统用户不同的 Postgres 11 用户/角色?
问题描述
我是 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
谁能让我知道我做错了什么?谢谢。
解决方案
推荐阅读
- exception - 一旦文件处理失败并发生异常,如何将文件标记为 .ERROR
- c# - 无法上传用于将文件组传输到操作的调用帖
- javascript - 如何从数组中获取一个值并更新它
- group-by - 匹配函数的分组结果
- typescript - 具有多个源映射的项目找不到它的原始 TS-source-map
- kdb - 在选择查询中,根据 q kdb 中的 if -else if 条件设置列值
- python - scipy 最小化 SLSQP - 'LSQ 子问题中的奇异矩阵 C'
- wordpress - WordPress .htaccess:如何从 url 中删除目录?
- azure - 如何通过脚本删除 Azure Databricks 工作区
- css - 如何在 Firefox 中缩放 div 时修复不一致的边框