acpl / flarum-db-snapshots
Create and restore database snapshots for Flarum via CLI
Package info
github.com/android-com-pl/flarum-db-snapshots
Type:flarum-extension
pkg:composer/acpl/flarum-db-snapshots
Fund package maintenance!
v1.0.1
2026-03-11 00:18 UTC
Requires
- php: ^8.1
- flarum/core: ^v1.8.14
- spatie/db-dumper: ^3.8.3
README
This extension provides commands to quickly create and restore database snapshots for Flarum.
Installation
composer require acpl/flarum-db-snapshots
Create Snapshot
Create a database snapshot using the snapshot:create command.
Basic usage:
# Dump to storage/snapshots/snapshot-Y-m-d-His.sql php flarum snapshot:create # Dump to a specific path/file php flarum snapshot:create /path/to/backup.sql php flarum snapshot:create ../backups/forum.sql # Dump with compression (based on extension) php flarum snapshot:create /backups/dump.sql.gz # gzip compression php flarum snapshot:create /backups/dump.sql.bz2 # bzip2 compression # Create a backup on a live site without locking tables (recommended for production) php flarum snapshot:create --single-transaction --quick --lock-tables=false
Options for Creation
--compress: Compression type (gzorbz2).--include-tables=table1,table2: Include only specific tables in the snapshot.--exclude-tables=table1,table2: Exclude specific tables from the snapshot.--skip-structure: Skip table structure and do not includeCREATE TABLEstatements.--no-data: Dump schema only, without row data.--skip-auto-increment: SkipAUTO_INCREMENTvalues.--no-column-statistics: Disable column statistics.--binary-path=/path/to/binary: Custom path to themysqldumpbinary.
Most standard mysqldump options are also supported, such as --single-transaction, --quick, and --lock-tables. See the mysqldump documentation for details.
Load Snapshot
Restore a database from an existing snapshot using the snapshot:load command.
Basic usage:
# Restore from a standard SQL file php flarum snapshot:load /path/to/backup.sql # Restore directly from a compressed file (automatically decompressed on the fly) php flarum snapshot:load /path/to/backup.sql.gz php flarum snapshot:load /path/to/backup.sql.bz2
Options for Loading
--drop-tables: Drop all existing tables before loading the snapshot. Useful when restoring a full backup into an existing database to avoid conflicts.--binary-path=/path/to/binary: Custom path to themysqlbinary.
Requirements
mysqlandmysqldumpbinariesgzipfor.gzsnapshotsbzip2for.bz2snapshots