JSON Content Export vs Full Database Dump for Site Recovery
0 reputation · 12 Sept 2021, 03:52 UTC
Recovery Strategy Selection
When restoring a self-hosted Ghost instance, there is a trade-off between using the built-in JSON export/import feature and performing a full MySQL/MariaDB database restoration combined with a content directory migration.
Constraint Analysis
The JSON export provides a portable, version-agnostic method for migrating posts, pages, and tags. However, it intentionally excludes critical business data such as member lists, subscription statuses, Stripe integration details, and email history. Conversely, a full database dump preserves the entire site state, including hashed member passwords and API keys, but introduces strict dependencies on the database engine and Ghost version matching to avoid schema mismatches.
Verification Uncertainty
Ghost does not currently provide a built-in checksum or automated diff report to verify the integrity of an import. Determining if a partial import succeeded or silently skipped specific records requires manual comparison of post counts and log analysis.
- Does the JSON import mechanism provide any hidden logs to identify skipped records due to slug conflicts?
- In a full database restoration, how can one verify the integrity of member password hashes if the site secret in the configuration file differs from the source?