1. 给gpadmin配置密码 或者新建用户

  1. psql 登录数据库
  2. alter role gpadmin with password '密码'; 执行命令,给gpadmin创建密码
  3. \q 退出数据库
  4. 或者尝试修改密码命令
  5. \password

2. 配置pg_hba.conf 文件

  1. vi $MASTER_DATA_DIRECTORY/pg_hba.conf
  2. 在下面添加
  3. host all gpadmin 0.0.0.0/0 md5
  4. host all gpadmin ::0/0 md5
  5. wq 保存退出
  6. 配置完成使用gpstop -u 使配置生效
  7. 注释:下面是我本地访问集群的配置
  8. host all gpadmin 192.168.18.1/32 md5
  9. # TYPE DATABASE USER ADDRESS METHOD
  10. TYPE 可以是local 本地 或者host Ip4或者ip6用这个类型
  11. DATABASE 数据库 可以限制指定数据库 或者所有数据库all
  12. USER 限制可以访问的用户 或者使用所有用户 all
  13. ADRESS local可以不用写 里面可以写一个ip地址或者一个网段
  14. 10.1.1.0/24 代表 10.1.1.0~10.1.1.255
  15. 192.168.1.10/32代表192.168.1.10
  16. 172.20.143.89/32表示一个主机,
  17. 172.20.143.0/24表示一个小子网,
  18. 10.6.0.0/16 表示一个大子网。
  19. IPv6地址范围的主机看起来像::1/128 (这种情况下是IPv6的回调地址),fe80::7a31:c1ff:0000:0000/96 表示一个小子网。0.0.0.0/0代表所有IPv4地址, ::0/0代表所有IPv6地址。要声明单个主机, IPv4 地址声明掩码长度 32 ,给 IPv6 地址声明 128
  20. METHOD指定如何处理客户端的认证。 一般使用md5
  21. 常用的有identmd5passwordtrustreject
  22. identLinuxPostgreSQL默认的local认证方式,凡是能正确登录服务器的操作系统用户(注:不是数据库用户)就能使用本用户映射的数据库用户不需密码登录数据库。用户映射文件为pg_ident.conf,这个文件记录着与操作系统用户匹配的数据库用户,如果某操作系统用户在本文件中没有映射用户,则默认的映射数据库用户与操作系统用户同名。比如,服务器上有名为user1的操作系统用户,同时数据库上也有同名的数据库用户,user1登录操作系统后可以直接输入psql,以user1数据库用户身份登录数据库且不需密码。
  23. md5是常用的密码认证方式,最好使用md5。密码是以md5形式传送给数据库,较安全,且不需建立同名的操作系统用户。
  24. password是以明文密码传送给数据库,建议不要在生产环境中使用。
  25. trust是只要知道数据库用户名就不需要密码或ident就能登录,建议不要在生产环境中使用。
  26. reject是拒绝认证。