首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何首次配置postgresql?

如何首次配置postgresql?
EN

Stack Overflow用户
提问于 2009-09-24 13:06:18
回答 9查看 278.2K关注 0票数 208

我刚刚安装了postgresql,并在安装过程中指定了密码x。当我尝试执行createdb并指定任何密码时,我得到消息:

createdb:无法连接到数据库postgres: FATAL:用户密码验证失败

createuser也是如此。

我该如何开始呢?我可以将自己作为用户添加到数据库中吗?

EN

回答 9

Stack Overflow用户

发布于 2009-09-24 13:25:08

在Linux下,PostgresQL通常被配置为允许根用户以postgres超级用户postgres的身份从shell (控制台或ssh)登录。

代码语言:javascript
复制
$ psql -U postgres

然后您只需像往常一样创建一个新数据库:

代码语言:javascript
复制
CREATE ROLE myuser LOGIN password 'secret';
CREATE DATABASE mydatabase ENCODING 'UTF8' OWNER myuser;

这应该可以在不接触pg_hba.conf的情况下工作。如果你想通过网络使用一些图形用户界面工具来做到这一点--那么你需要使用pg_hba.conf

票数 62
EN

Stack Overflow用户

发布于 2012-09-04 01:30:11

这是我的解决方案:

代码语言:javascript
复制
su root
su postgres
psql
票数 23
EN

Stack Overflow用户

发布于 2017-01-12 12:08:15

您可以使用两种方法。这两种方法都需要创建用户数据库。

  1. Using创建用户和createdb

$ sudo -u postgres创建用户--超级用户$USER $ createdb mydatabase $ psql mydatabase

  • Using SQL管理命令,并使用密码通过TCP进行连接

$ sudo -u postgres psql postgres

然后,在psql shell中

创建角色myuser登录密码'mypass';使用OWNER =myuser创建数据库mydatabase;

然后你就可以登录了

$ psql -h本地主机-d mydatabase -U myuser -p

如果您不知道端口,您可以通过以postgres用户的身份运行以下命令来获取它:

显示端口;

或,

$ grep "port =“/etc/postgresql/*/main/postgresql.conf

旁注:postgres用户

我建议不要修改postgres用户。

  1. 它通常是从操作系统锁定的。任何人都不应该以postgres身份“登录”操作系统。您应该以postgres.
  2. It's身份进行身份验证,通常不受密码保护,并委托给主机操作系统。这是一个的好东西。这通常意味着为了以postgres (相当于SQL Server的SA )的PostgreSQL身份登录,您必须拥有对底层数据文件的写访问权限。
  3. 通过禁用此功能,您可以消除通过指定的超级用户进行暴力破解攻击的风险。隐藏和模糊超级用户的名称有其优点。
票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1471571

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档