postgres问题角色试图创建一个新的数据库

时间:2015-04-26 04:43:46

标签: postgresql postgresql-9.3

成为postgres的新手。我对角色有点困惑,为什么我无法在该角色下创建数据库,这清楚地表明该角色有"创建数据库"属性。

例如,现有角色名称" MAS"在可以创建数据库的系统中。

postgres=> \du
                                                      List of roles
       Role name        |                   Attributes                   |                   Member of
------------------------+------------------------------------------------+-----------------------------------------------
 MAS                    | Create role, Create DB                        +| {rds_superuser,abc_user,def_user,biuser}
                        | Password valid until infinity                  |

使用psql,我可以从命令行登录到数据库,如下所示:

psql -h mas.myserver.com -p 5432 -U MAS postgres

现在,我想用这个创建数据库:" CreateDB.sql'

CREATE DATABASE mas_dev_123
  WITH OWNER = MAS
       ENCODING = 'UTF8'
       TABLESPACE = pg_default
       LC_COLLATE = 'en_US.UTF-8'
       LC_CTYPE = 'en_US.UTF-8'
       CONNECTION LIMIT = -1;

postgres=> \i CreateDB.sql
psql:CreateDB.sql:11: ERROR:  role "mas" does not exist

明确使用\du,我的角色MAS存在。那么,我在这里错过了什么或做错了什么?

0 个答案:

没有答案