我是如何解决“如何从 GUI 直接编辑 Discourse 数据库?”这个问题的,因为现有回答并未满足我的需求。
请勿在生产环境中执行此操作。
本文使用的是 PostgreSQL 推荐的 admin 工具 pgAdmin 4。
此操作是在我的本地机器上进行的,目的是更深入地了解 Discourse,例如安装、配置、调优、开发插件、使用 API、webhooks 等。
注意:Discourse 是根据《在 Windows 10 上安装 Discourse 进行开发的初学者指南》(Beginners Guide to Install Discourse on Windows 10 for Development),安装在 Windows 10 上的 WSL 2 中的 Ubuntu 18.04 系统上。
注意:WSL 2 默认不包含 systemd。参见 Issue 457。
以下操作参考了《在 Ubuntu 20.04/18.04/16.04 上安装 pgAdmin 4》(Install pgAdmin 4 on Ubuntu 20.04/18.04/16.04)一文。
使用 BASH
$ echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee /etc/apt/sources.list.d/pgdg.list
deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main
$ sudo apt update
$ sudo apt install pgadmin4 pgadmin4-apache2
pgAdmin4 用户邮箱:postgres@localhost
pgAdmin4 密码:<password 1>
$ sudo /etc/init.d/apache2 restart
$ sudo ufw allow http
$ sudo ufw allow https
$ hostname -I
记录 <address>
$ whoami
记录 <user name>
下一步可能并不需要,因为我不清楚如何获取 PostgreSQL 数据库用户的密码(我并非 PostgreSQL 专家),或者是否有其他方式为 pgadmin4 设置所需的数据库登录信息。
$ psql postgres
使用 PSQL
postgres=# ALTER ROLE <user name> '<password 2>';
使用互联网浏览器
http://<address>/pgadmin4
用户:postgres@localhost
密码:<password 1>
启动 pgAdmin4 后
使用 pgAdmin4
创建服务器连接
标签页:常规 (General)
名称:Discourse Development
服务器组:Servers
标签页:连接 (Connection)
主机:localhost
端口:5432
维护数据库:postgres
用户名:<user name>
密码:<password 2>
这并非完美方案,但确实可行,总比没有好。欢迎提供反馈和建议。
额外内容
PostgreSQL
软件目录 - 管理/开发工具