New 24/7 monitoring and daily cloud backups now included in every Shield Pro plan.

Backups

How to restore WordPress from a backup

Restoring is harder than backing up because wrong import order or URL mismatches break login and media links. Follow a sequence that puts files and database back in sync.

Time: 45-90 minutes Level: Intermediate

What this problem looks like

Restore order matters: files first or database first both work if you avoid using the site mid-restore. Many hosts offer one-click snapshot restore that beats manual imports when the whole server is intact.

Partial restores, such as posts only or plugins only, need matching database rows. Importing posts SQL without uploads breaks featured images.

Importing a database overwrites live content. Confirm you have the correct SQL file and a fresh backup of the current broken state.

Full restore on the same domain

  1. Delete or rename current wp-content if it is corrupted.
  2. Upload backup wp-content via SFTP.
  3. Drop all tables or use a fresh database, then import the SQL file.
  4. Log into wp-admin and save Settings → Permalinks.

Import database with phpMyAdmin

Large imports may exceed upload limits. Split the file, use SSH mysql command, or ask the host to import for you.

bash
mysql -u DB_USER -p DB_NAME < ~/backups/mysite-2026-07-08.sql
wp db import ~/backups/mysite-2026-07-08.sql

Restore with a backup plugin

UpdraftPlus and similar tools restore from archives inside wp-admin. Install a fresh WordPress copy if wp-admin is dead, then upload the plugin and restore components in the order the wizard suggests.

Plugin restores often need the same plugin version that created the backup.

Fix broken media and permalinks

If images 404 after restore, uploads folder path or year/month structure is wrong. Confirm wp-content/uploads matches database attachment paths.

Resave permalinks and clear CDN cache after any restore.

When restore fails login

Database URL options may point at the old domain. Update siteurl and home or run wp search-replace. See our password and URL tutorials if admin still loops.

When to stop DIY and hire help

A bad restore can leave mixed old and new data. BugShield restores WordPress sites from backup at a fixed price when DIY imports fail or time matters.

FAQs

Can I restore only the database?

Yes for content recovery, but media must exist in uploads from the same backup period.

Why does import stop with max_allowed_packet?

MySQL packet size is too small for big dumps. Ask the host to raise the limit or import via command line.

Will restore bring back malware?

If the backup was infected, yes. Scan files before restore and patch plugins after recovery.

How long does restore take?

Small blogs finish in under an hour. Large shops with gigabyte uploads can take several hours over SFTP.

Rather someone else fixed it?

Request a fix at a confirmed price. Named UK developer, secure Vault, direct chat.

Request a Fix