Files
mosquitto/www/pages/documentation/persistence/sqlite.md
Roger A. Light 66486e4748 Improve sqlite docs
Including removing the errant references to acl files.

Closes #3508. Thanks to Ulrich Berkmueller.
2026-02-17 00:19:24 +00:00

2.0 KiB

Introduction

Available since version 2.1.

This plugin provides a replacement for the traditional mosquitto persistence normally enabled with persistence true.

This plugin should be preferred when you are interested in persistence, because it saves changes to disk as they are made, where as the traditional persistence only takes periodic snapshots.

Note that it is not possible to run both the traditional persistence and the sqlite persistence plugin at the same time.

Usage

The plugin requires minimal configuration.

The database is stored at the location specified by the persistence_location option and is named mosquitto.sqlite3. As an alternative, the file can be specified directly using the plugin_opt_db_file` option.

The plugin_opt_sync option can be set to extra, full, normal, or off, with a default of normal. This option controls how hard sqlite works to ensure data is on the disk before continuing. This is better described by sqlite themselves.

The plugin_opt_page_size option sets the database page size, as described here.

The plugin_opt_flush_period option is a positive integer number of seconds, defaulting to 5, that the plugin will batch database updates over in order to improve performance.

Config

Windows:

persistence_location <path to save mosquitto.sqlite3>
global_plugin C:\Program Files\Mosquitto\mosquitto_persist_sqlite.dll

Other:

persistence_location <path to save mosquitto.sqlite3>
global_plugin /path/to/mosquitto_persist_sqlite.so

Migration

A script is available to help migrate from the traditional persistence.