如何解决错误:必须是角色“ postgres”的成员

时间:2019-07-11 08:10:28

标签: sql postgresql

我对Postgres非常陌生。我的项目之一是使用RDS postgres实例,应用程序团队创建了一个用户,并使用该用户创建数据库。

我正在尝试通过运行以下命令,将默认的postgres用户的默认特权授予此应用程序数据库,但是我收到一条错误消息。

var select = document.getElementById("sel3");

select.onchange = () => {
  let selected = [];
  for (let i = 0; i < select.options.length; i++) {
  	if(select.options[i].selected) {
    	selected.push(select.options[i].text);
    }
  }

document.getElementById("demo").innerHTML = selected.join(', ');
  
}

错误消息

<select class="form-control selectpicker sel3" multiple data-live-search="true" id="sel3" name="course[]">
    <option value="1">Disciplinary Procedure</option>
    <option value="2">Office Methods</option>
    <option value="3">Photoshop</option>
    <option value="4">CIGAS</option>
    <option value="5">Auditing</option>         
</select>
<p id="demo">
Selections
</p>

请告知我如何向数据库的postgres用户授予默认权限。

3 个答案:

答案 0 :(得分:0)

您必须以超级用户身份连接才能运行此命令。

答案 1 :(得分:0)

我之前误会了我的情况。显然,postgres用户是数据库的所有者而不是应用程序用户。因此,我以postgres身份登录并执行了该命令,该命令可以正常工作。

答案 2 :(得分:0)

如果您执行了pgdump导出数据库,然后在尝试导入数据库时​​遇到此错误。创建pgdump时使用-O-https://www.postgresql.org/docs/current/app-pgdump.html