postgresql createuser -interactive在CentOS 7中不起作用

时间:2017-05-12 22:09:56

标签: linux postgresql centos centos7 rhel

全新安装的CentOS 7需要全新安装PostgreSQL,新用户和新角色。我正在关注the steps described in this tutorial以实现这一目标。但是,当我键入createuser -interactive时,终端不提供教程所承诺的交互式菜单。相反,我得到以下空白提示:

[this_centos_user@localhost ~]$ sudo -i -u postgres
[sudo] password for this_centos_user:
-bash-4.2$ createuser –interactive
-bash-4.2$

需要输入哪些特定命令才能显示交互式createuser界面并让我提供用户名,密码等?


具体情况:

1。)首先,我安装了postgresql-server软件包和" contrib"使用以下命令打包:
    sudo yum install postgresql-server postgresql-contrib

2.)接下来,我创建了一个新的PostgreSQL数据库集群:
    sudo postgresql-setup initdb

3。)然后,我通过键入sudo vi /var/lib/pgsql/data/pg_hba.conf并更改以下行以包含md5而不是ident来设置密码验证编辑PostgreSQL的基于主机的验证(HBA)配置:

host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5  

4.。)保存并退出vi后,我开始使用以下内容启用PostgreSQL:

sudo systemctl start postgresql
sudo systemctl enable postgresql

5.)接下来,我使用上面创建的postgres帐户登录PostgreSQL,并尝试使用上面OP顶部的代码创建用户,如下所示:

[this_centos_user@localhost ~]$ sudo -i -u postgres
[sudo] password for this_centos_user:
-bash-4.2$ createuser –interactive
-bash-4.2$

那么如何创建此用户?

2 个答案:

答案 0 :(得分:2)

不是问题的直接答案,但与之相关:

如果您像我一样,并且在psql中键入了createuser --interactive,并且您想知道为什么刚从postgres=#转到postgres-#,您已经误解了说明。以Ctrl+C退出psql,然后以\q退出,并以postgres用户身份从shell运行createuser --interactive

答案 1 :(得分:0)

教程中似乎有一个拼写错误。正确的语法是:

-bash-4.2$ createuser –-interactive  

请注意,此答案中的--interactive是正确的,而OP中的-interactive是错误的。