在 Entware 中安装设置 PostgreSQL

出于某些不愿多说的原因,把 Home Assistant 的数据库切换到了 MariaDB(MySQL),可能是设置问题,MariaDB 导致系统负载很高。还是换回 PostgreSQL(pgsql),系统负载低了很多。

安装 PostgreSQL

这次在 Entware 中安装,比较绿色。

  1. opkg update

  2. #安装pgsql

  3. opkg install sudo pgsql-cli pgsql-cli-extra pgsql-server

  4. source ~/.bashrc

  5. #新建文件夹,赋权给postgres

  6. mkdir -p /opt/var/pgsql/data

  7. chown postgres /opt/var/pgsql/data

  8. #初始化数据库

  9. sudo -u postgres pg_ctl -D /opt/var/pgsql/data initdb

  10. #启动pgsql

  11. /opt/etc/init.d/S98postgresql start

不同于通过 apt-get 安装的,安装完成就已经可用了;在 Entware 中安装的软件,需要手动完成初始化等设置。

配置 PostgreSQL 远程连接

如果 PostgreSQL 安装在其他设备,或者要使用 Adminer 来远程管理,则需要远程连接。这时需要修改 /opt/var/pgsql/data 目录下的 pg_hba.conf 和 postgresql.conf。

1、pg_hba.conf,配置对数据库的访问权限。

# IPv4 local connections:
host  all    all    127.0.0.1/32     trust

不需要特别严格的权限控制时,可以直接将 IPv4 下面的设置修改为以下代码即可,可根据需要设置IP段

host  all    all    0.0.0.0/0        trust

2、postgresql.conf,配置PostgreSQL数据库服务器的相应的参数。PostgreSQL安装完成后,默认只接受来在本机localhost的连接请求。

定位到 #listen_addresses='localhost',修改为

listen_addresses = '*'

允许监听来自任何主机的连接请求。

3、重启 PostgreSQL 后生效,/opt/etc/init.d/S98postgresql restart


文章来自:https://www.wilf.cn/post/install-postgresql-with-entware.html