全新安装后如何登录并验证 Postgresql?

2024-02-18

在 mint ubuntu 上新安装了 postgres 8.4。如何为 postgres 创建用户并使用 psql 登录?

当我输入 psql 时,它只是告诉我

psql: FATAL: Ident authentication failed for user "my-ubuntu-username"

您可以使用两种方法。两者都需要创建用户and一个数据库。

默认情况下,psql 连接到与用户同名的数据库。所以有一个约定“用户的数据库”。如果您的用户只需要一个数据库,则没有理由打破这一约定。我们将使用mydatabase作为示例数据库名称。

  1. 使用createuser和createdb,我们可以明确数据库名称,

    $ sudo -u postgres createuser -s $USER
    $ createdb mydatabase
    $ psql -d mydatabase
    

    您可能应该完全忽略它并让所有命令默认为用户名。

    $ sudo -u postgres createuser -s $USER
    $ createdb
    $ psql
    
  2. 使用 SQL 管理命令,并通过 TCP 使用密码进行连接

    $ sudo -u postgres psql postgres
    

    然后,在 psql shell 中

    CREATE ROLE myuser LOGIN PASSWORD 'mypass';
    CREATE DATABASE mydatabase WITH OWNER = myuser;
    

    然后就可以登录了,

    $ psql -h localhost -d mydatabase -U myuser -p <port>
    

    如果您不知道端口,您始终可以通过运行以下命令来获取它,如下所示postgres user,

    SHOW port;
    

    Or,

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

旁注:postgres user

我建议NOT修改postgres user.

  1. 它通常被操作系统锁定。任何人都不应“登录”操作系统postgres。你应该有root权限才能进行身份验证postgres.
  2. 它通常不受密码保护并委托给主机操作系统。这是一个好东西。这通常意味着为了登录postgres这是 PostgreSQL 相当于 SQL Server 的SA,您必须具有对底层数据文件的写访问权限。而且,这意味着无论如何你通常都会造成严重破坏。
  3. 通过禁用此功能,您可以消除通过指定超级用户进行暴力攻击的风险。隐藏和模糊超级用户的名称有其优点。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

全新安装后如何登录并验证 Postgresql? 的相关文章

随机推荐