Set up a mariadb SQL server. It supports multiple databases, users and permission settings. If you want to only connect from inside Home Assistant use core-mariadb as the host address.

  "databases": ["homeassistant"],
  "logins": [
      "username": "hass",
      "host": "homeassistant",
      "password": "securePassword"
  "rights": [
      "username": "hass",
      "host": "homeassistant",
      "database": "homeassistant",
      "grant": "ALL PRIVILEGES ON"

Configuration variables:

  • databases (Require): List of databases.
  • logins (Require): List of SQL accounts to create or update.
    • username (Require): Username for account.
    • host (Require): Host for account. If you need an account on multiple hosts, use ‘%’.
    • password (Require): Password for account.
  • rights (Require): List of rights to be granted.
    • username (Require): Username for granted rights.
    • host (Require): Host is a part of username like above.
    • database (Require): Database name on which to grant user rights.
    • grant (Require): SQL grant part for access too.

Home Assistant configuration

Use the following configuration in Home Assistant to use the database above:

  db_url: mysql://hass:securePassword@core-mariadb/homeassistant