更新时间:2024-06-12 15:54:46
  1. 登陆WEB界面。

  2. 进入左侧资源导航栏,选择客户端与执行器

  3. 选择对应的客户端机器,点击机器“名称”位置,进入右侧的权限配置栏。

  4. 选择PostgreSQL图标,逐级展开数据源至实例层级,点击实例右侧的未授权按钮。

  5. 在弹出的授权界面,按照实际情况填写用户名,密码,点击确定,授权完成。

    若选择添加实例,需要输入实例名,实例名格式为数据库用户: PostgreSQL_端口号, 如postgres:PostgreSQL_5432。

    其中用户权限不同,检查配置也不同,说明如下:

    • 数据库用户为超级用户,直接授权即可。

    • 如数据库版本为10.0以上,授权用户可为普通用户,按照以下步骤操作,赋予用户权限:

      1. 创建用户,若已创建可跳过:CREATE USER testuser WITH PASSWORD 'testuser';

      2. 授权数据库权限:GRANT ALL PRIVILEGES ON DATABASE postgres TO testuser;

      3. 连接Postgres数据库,以下sql语句必须在所要操作的数据库里执行:\c postgres;

      4. 授权所有表权限:GRANT ALL PRIVILEGES ON all tables in schema public TO testuser;

      5. 授权开始备份函数权限:GRANT ALL PRIVILEGES on function pg_start_backup to testuser;

      6. 授权结束备份函数权限:GRANT ALL PRIVILEGES on function pg_stop_backup() to testuser;

      7. 授权查看配置权限:GRANT pg_read_all_settings to testuser;

      8. 授权切换日志函数权限:

        高版本:GRANT ALL PRIVILEGES on function pg_switch_wal() to testuser;

      9. 授权应用日志恢复函数权限:

        高版本:GRANT ALL PRIVILEGES on function pg_wal_replay_resume() to testuser;

      image14.png

      普通用户赋权

      image15.png

      实例授权

注意:

  • 若客户端未安装netstat或者数据库用户(如postgres)下没有netstat没有执行权限时,在授权时,展开数据源不会自动发现实例,需要手动进行添加;可在客户端数据库用户下(postgres)直接执行netstat命令查看是否拥有此命令以及执行权限。
  • 若配置了密码验证,用户名密码必须填写正确,否则授权失败。
  • 普通用户可以授权成功,但需要配置权限,否则执行备份任务会失败。
  • 请确保实例下存在默认的postgres的数据库,否则会连接数据库失败。若不存在,请手动创建数据库postgres。