Home Assistant 提高篇 - 数据库替换
注意:新版 Home Assistant 已经加入数据库定时清理机制,因此非高级玩家没有任何必要更换数据库,望周知!
Home Assistant 原生使用 SQLite 作为数据库,使用体验如何大家肯定都有感触了:加载数据慢 + 数据文件庞大,必须换。需要声明的是数据库的替换并不会转移之前的数据,因此尽量在初次安装后即进行数据库替换工作。原数据都存放在配置文件夹的 home-assistant_v2.db
文件中。
既然 HA 数据库是 SQL 架构,意味着我们的选择面很广。DB-Engines 上排名靠前的几个关系型数据库都能使用,例如 MySQL、MariaDB、PostgreSQL 和 MS SQL Server。本教程将重点放在 PostgreSQL 上。
Mossbian(Hassbian) 用户只需要一行指令就可以安装软件包和相关依赖了:sudo hassbian-config install postgresql
但是数据库和用户都需要手动创建,请参考下文。
手动安装方法如下:
安装 PostgreSQL:
sudo apt-get install postgresql-9.6 postgresql-server-dev-9.6
版本号随着更新变动,请自行查证。
然后安装 psycopg2
,注意如果是在 Python 虚拟环境中运行的 HA,请进入虚拟环境后操作。当然,Mossbian 脚本安装的用户无须此步。
sudo su -s /bin/bash homeassistant source /srv/homeassistant/homeassistant_venv/bin/activate pip3 install psycopg2
接着创建数据库用户,这里就要留意一下运行 HA 环境的用户名了。如果是通过 All-in-one 或者 Hassbian 安装的用户,用户名为 homeassistant
,密码也设为 homeassistant
,好记:
sudo -u postgres createuser homeassistant sudo -u postgres psql ALTER USER homeassistant WITH PASSWORD 'homeassistant'; q
其他安装环境用户请自行修改。
之后创建数据库,统一命名为 homeassistant
,好记:
sudo -u postgres createdb -O homeassistant homeassistant
最后,在 HA 的配置文件 configuration.yaml
中添加以下字段:
recorder: db_url: postgres://homeassistant:homeassistant@localhost/homeassistant
大功告成,重启 HA 后,新的数据库就正式启用了。初次启用需要一定时间生成数据,但是在之后的重启中你就能切实感受到 HA 迅速开启的快感了~~
版权声明
1.本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行测试。
2.本站资源仅供学习和交流使用,版权归资源原作者所有,请在下载后24小时之内自觉删除。
3.若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,与本站无关。
4.若内容涉及侵权或违法信息,请联系本站管理员进行下架处理,邮箱ganice520@163.com(本站不支持其他投诉反馈渠道,谢谢合作)
发表评论