Tip: How reduce DB stat size

Alas this no longer works.

sqlite> DELETE FROM queries WHERE timestamp <= strftime('%s', datetime('now', '-30 day'));
Error: cannot modify queries because it is a view

But this seems to work:

sqlite> DELETE FROM query_storage WHERE timestamp <= strftime('%s', datetime('now', '-30 day'));

EDIT: I didn't have enough space to run either the DELETE or the VACUUM SQL commands. Lots of time wasted, though. :slight_smile:

So I wound up tossing the old database and starting new. I changed pihole-FTL.conf to add MAXDBDAYS=180. Hopefully, that will prevent the database from growing so large next time (it was 11G, btw). The following log entry after restarting seems to confirm that:

[2023-08-12 22:15:02.734 2784M]    MAXDBDAYS: max age for stored queries is 180 days

(The default is 365 days.)

Then:

systemctl stop pihole-FTL.service
rm /etc/pihole/pihole-FTL.db
systemctl start pihole-FTL.service

I read in this thread that pihole-FTL recreates an empty database if you do this as described above.

The following log entry (and subsequent apparent happiness of the system) seems to confirm that:

[2023-08-12 22:15:02.744 2784M] No database file found, creating new (empty) database

My pihole is apparently back in business. I hope this helps someone else out there.

1 Like