在 Entware 中安装设置 PostgreSQL

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

安装 PostgreSQL

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

opkg update
#安装pgsql
opkg install sudo pgsql-cli pgsql-cli-extra pgsql-server
source ~/.bashrc
#新建文件夹,赋权给postgres
mkdir -p /opt/var/pgsql/data
chown postgres /opt/var/pgsql/data
#初始化数据库
sudo -u postgres pg_ctl -D /opt/var/pgsql/data initdb
#启动pgsql
/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

发表评论

电子邮件地址不会被公开。 必填项已用*标注