Postgresql

創建角色或創建使用者

  • February 25, 2019
PostgreSQL version : 11.2
OS platform : RHEL 7.6

我是 PostgreSQL 新手。我有一個 CRM 應用程序,我想將其數據儲存在我的 11.2 PostgreSQL 數據庫中。

數據庫名稱將是:crm_db

架構名稱將是:crm_app

我希望 crm_app 架構中的所有架構對像都由名為crm_usr.

我可以使用CREATE USER如下命令創建一個數據庫使用者還是應該創建一個名為的角色crm_usr?在 11.2 中推薦的方法是什麼(發佈時的最新版本,即 2019 年 2 月 23 日)

CREATE user crm_usr identified by tiger235;

CREATE DATABASE crm_db OWNER crm_usr;

請注意,在 PostgreSQL 中,使用者和角色是一回事。區別在於使用者可以登錄而角色不能。因此,要回答您的問題,您需要決定是否希望 crm_usr 能夠登錄。

我嘗試採用的方法是擁有兩個(或多個)角色——一個用於擁有(即 xyz_owner)對象,一個或多個(xyz_user)用於在這些對像上執行 DML(選擇、插入、更新等)對象。xyz_user 被授予數據庫的實際使用者,而 xyz_owner 不會被授予任何人。

在PostgresCREATE USER x只是. 你想要的命令是這樣的CREATE ROLE x LOGIN

  CREATE USER crm_usr PASSWORD 'tiger235';
  CREATE DATABASE crd_db OWNER crm_user;

引用自:https://dba.stackexchange.com/questions/230555