Postgresql
創建角色或創建使用者
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 不會被授予任何人。
在Postgres中
CREATE USER x
只是. 你想要的命令是這樣的CREATE ROLE x LOGIN
CREATE USER crm_usr PASSWORD 'tiger235'; CREATE DATABASE crd_db OWNER crm_user;