瀚高数据库相关设置

鼠扑  论坛元老 | 2024-9-11 00:53:32 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1066|帖子 1066|积分 3198

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
瀚高数据库相关设置

   一、配置瀚高数据库局域网访问
需要修改两个文件:postgresql.conf和pg_hba.conf
    1)在postgresql.conf中找到下述配置,把listen_addresses前面的解释去掉,值修改为*
  1. # - Connection Settings -
  2. #listen_addresses = 'localhost'                # what IP address(es) to listen on;
  3.                                         # comma-separated list of addresses;
  4.                                         # defaults to 'localhost'; use '*' for all
  5.                                         # (change requires restart)
复制代码
  修改为
  1. # - Connection Settings -
  2. # listen_addresses前面的注释去掉,把值设置为*
  3. listen_addresses = '*'                # what IP address(es) to listen on;
  4.                                         # comma-separated list of addresses;
  5.                                         # defaults to 'localhost'; use '*' for all
  6.                                         # (change requires restart)
复制代码
  2)在pg_hba.conf最后位置找到下述配置,修改IPv4的相关配置
  1. # TYPE  DATABASE        USER            ADDRESS                 METHOD
  2. # IPv4 local connections:
  3. host    all             all             127.0.0.1/32            md5
  4. # IPv6 local connections:
  5. host    all             all             ::1/128                 md5
  6. # Allow replication connections from localhost, by a user with the
  7. # replication privilege.
  8. host    replication     all             127.0.0.1/32            md5
  9. host    replication     all             ::1/128                 md5
复制代码
  修改为
  1. # TYPE  DATABASE        USER            ADDRESS                 METHOD
  2. # IPv4 local connections:
  3. # 注释掉原来的
  4. #host    all             all             127.0.0.1/32            md5
  5. # 把ADDRESS的值修改为0.0.0.0/0,接受任何地址的访问
  6. host    all             all             0.0.0.0/0               md5
  7. # IPv6 local connections:
  8. host    all             all             ::1/128                 md5
  9. # Allow replication connections from localhost, by a user with the
  10. # replication privilege.
  11. host    replication     all             127.0.0.1/32            md5
  12. host    replication     all             ::1/128                 md5
复制代码
  3)修改完配置文件,重启数据库见效
    二、安全版瀚高数据库,怎么利用第三方工具连接(Navicat)
安全版瀚高数据库,暗码的默认加密方式时sm3,导致无法利用第三方工具连接。
    1)最小化改造,新建一个用户,暗码指定md5加密,新建一个数据库,把owner指定为新建的用户,比方
  1. # 先通过命令行登录,再进行下述操作
  2. # 查看密码加密方式
  3. show password_encryption;
  4. # 设置密码加密方式
  5. set password_encryption to md5;
  6. # 创建用户
  7. create user test password 'Highgo@1234' valid until 'infinity';
  8. # 创建数据库,并指定归属用户
  9. create database dbtest owner=test encoding='utf8';
复制代码
  修改pg_hba.conf配置文件
  1. # IPv4 local connections:
  2. # 指定特定用户(例如test)连接时,密码的加密方式,特定用户配置需要放在前面,规则从前往后匹配
  3. host    all             test            0.0.0.0/0               md5
  4. # 把ADDRESS的值修改为0.0.0.0/0,接受任何地址的访问
  5. host    all             all             0.0.0.0/0               sm3
复制代码
  经过上述配置后,就可以利用navicat,利用test用户登录了。
    2)修改瀚高数据库默认加密方式为md5(数据库刚安装、独享数据库、其他方偶尔见的情况)。
  1. # 命令行登录数据库
  2. # 设置密码加密方式为md5
  3. set password_encryption to md5;
  4. # 在当前会话中修改管理员用户密码
  5. alter user highgo password 'Hello@123' valid until 'infinity';
复制代码
  1. # 修改postgresql.conf
  2. # 默认
  3. #password_encryption = sm3                # md5, sm3 or scram-sha-256
  4. # 密码加密方式的值修改为md5
  5. password_encryption = md5
复制代码
  1. # 修改pg_hba.conf
  2. # 连接加密方法,sm3全部改为md5
  3. # TYPE  DATABASE        USER            ADDRESS                 METHOD
  4. # IPv4 local connections:
  5. # host    all             all             127.0.0.1/32            md5
  6. host    all             all             0.0.0.0/0               md5
  7. # IPv6 local connections:
  8. host    all             all             ::1/128                 md5
  9. # Allow replication connections from localhost, by a user with the
  10. # replication privilege.
  11. host    replication     all             127.0.0.1/32            md5
  12. host    replication     all             ::1/128                 md5
复制代码
  重启数据库,第三方工具实行连接
    三、通过sql查看认证信息
  1. # 登录数据库,通过sql查看认证信息,通过rolpassword可以看出密码采用哪种加密方式。例如highgo的密码采用的sm3加密方式,test用户的密码采用md5加密方式。
  2. highgo=# select rolname,rolpassword from pg_authid;
  3.           rolname          |                             rolpassword
  4. ---------------------------+---------------------------------------------------------------------
  5. pg_monitor                |
  6. pg_read_all_settings      |
  7. pg_read_all_stats         |
  8. pg_stat_scan_tables       |
  9. pg_read_server_files      |
  10. pg_write_server_files     |
  11. pg_execute_server_program |
  12. pg_signal_backend         |
  13. highgo                    | sm3ae987c45185be33b5cc98702bb7c18879ffe4da1e9e790ff0b683a33052420fd
  14. test                      | md551d7479414a868138fccd56a558ccc06
  15. (10 行记录)
复制代码
  四、psql相关操纵
  1. 联接选项:
  2.   -h, --host=主机名        数据库服务器主机或socket目录(默认:"本地接口")
  3.   -p, --port=端口          数据库服务器的端口(默认:"5866")
  4.   -U, --username=用户名    指定数据库用户名
  5.   -d, --dbname=DBNAME      指定要连接的数据库
  6. # 连接瀚高数据库时,常用写法。注意,如果pg_hba.conf中配置了多种访问加密方法,连接字符串中尽量写明-h ip地址, 不然可能会匹配不上(有待研究)。
  7. psql -U highgo
  8. psql -U highgo -h 127.0.0.1
  9. psql -U highgo -p 5866 -h 127.0.0.1
  10. psql -U highgo -p 5866 -h 127.0.0.1 -d highgo
复制代码
  五、其他留意事项
  1. # 修改密码会重置账户有效期,默认七天
  2. alter user test password 'Word@123';
  3. # 修改密码时,需要加上valid until 'infinity',指定密码无期限
  4. alter user test password 'Word@123' valid until 'infinity';
  5. # 不修改密码,设置密码过期时间为无期限
  6. alter user highgo valid until 'infinity';
复制代码
  小尾巴~~
只要有积累,就会有进步

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

鼠扑

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表