【发布时间】:2015-09-02 01:43:23
【问题描述】:
从 Postgres 服务器日志中,我不断看到这个错误:
2015-07-07 20:04:59 EDT [22757]: [1-1] user=cvt_web,db=powerup_betz ERROR: must be owner of relation seq_id_cti_data 2015-07-07 20:04:59 EDT [22757]: [2-1] user=cvt_web,db=powerup_betz STATEMENT: ALTER SEQUENCE mla.SEQ_ID_CTI_DATA INCREMENT BY 50 2015-07-07 20:04:59 EDT [22757]: [3-1] user=cvt_web,db=powerup_betz ERROR: must be owner of relation seq_id_cti_data_map 2015-07-07 20:04:59 EDT [22757]: [4-1] user=cvt_web,db=powerup_betz STATEMENT: ALTER SEQUENCE mla.SEQ_ID_CTI_DATA_MAP INCREMENT BY 50
显然您需要成为所有者才能更改序列,将所有权限授予cvt_web 用户不起作用,只有成为所有者才有效。谁能告诉我为什么会这样?
【问题讨论】:
-
超级用户也可以做到。
-
应用为什么要这么做? DDL 通常不需要作为 webapp 的正常生产用户运行。
-
我尝试使用 @GeneratedValue(strategy=“IDENTITY”) 并且它现在可以工作了。
标签: database postgresql permissions