zoukankan      html  css  js  c++  java
  • (转载)postgresql navicat 客户端连接验证失败解决方法:password authentication failed for user

    命令:su - postgres

    CREATE USER foo WITH PASSWORD 'secret';

    ====================

    1、2个配置修改

    postgresql.conf:修改

    listen_addresses = '*'

    pg_hba.conf:增加

    # IPv4 local connections:
    host    all             all             127.0.0.1/32            md5
    host    all                all                0.0.0.0/0                md5

    2、创建用户

    命令:su - postgres

    CREATE USER foo WITH PASSWORD 'secret';

    (原文如下)

    Redhat上新装PostgreSQL9.1.3, 用psql连不上, 报错:

    psql.bin: FATAL:  password authentication failed for user "postgres"
    明明添加了postgres这个用户, 口令也简单的不得了,不可能记错的, 怎么就连不上呢?
     
    上网查,有人说修改pg_hba.conf, 把local一行的md5改成trust。一试,果然好使。
     
    后来,客户机远程登录,出现同样问题,于是咱如法炮制,再把md5改成了trust,也能登录了,
     
    只要获取对方的信任(trust),问题真的就不是问题了,呵。
     
    但这种做法对于服务器而言,相当于把自家的锁砸了:设置成trust后,根本就不需要口令。
     
    我再google,中间突然打不开链接,于是只好耐心地等了5分钟。来火,但是没办法。网络封锁和网络搜索,一不小心就成了一对冤家。  www.2cto.com  
     
    终于,老天有眼,让我找到了下面一段话:
     
    PostgreSQL 数据库口令与任何操作系统用 户口令无关。各个数据库用户的口令是存储在 pg_authid 系统表里面。口令可以用 SQL 语言命令 CREATE USER 和 ALTER USER 等管理(比如 CREATE USER foo WITH PASSWORD 'secret'; 。缺省时,如果没有明确设置口令,那么存储的口令是空并且该用户的口令认证总会失败。
    《PostgreSQL 8.2.3 中文文档,20.2 认证方法》
     
    原来是这样啊,pg_authid表里的postgres用户的口令还是空的呢!
    我再改,好了,这回是真好了。
     
  • 相关阅读:
    POJ 2240 Arbitrage spfa 判正环
    POJ 3259 Wormholes spfa 判负环
    POJ1680 Currency Exchange SPFA判正环
    HDU5649 DZY Loves Sorting 线段树
    HDU 5648 DZY Loves Math 暴力打表
    HDU5647 DZY Loves Connecting 树形DP
    CDOJ 1071 秋实大哥下棋 线段树
    HDU5046 Airport dancing links 重复覆盖+二分
    HDU 3335 Divisibility dancing links 重复覆盖
    FZU1686 神龙的难题 dancing links 重复覆盖
  • 原文地址:https://www.cnblogs.com/showker/p/4324546.html
Copyright © 2011-2022 走看看