Restore from corrupted file backup

What shouldn’t happen, happend to me this weekend. One of my servers stopped working because of severe data corruption. What’s worse is that this corruption is part of the backups of the last 3 weeks so that I’m out of a lot of recent data.

I was able to restore the more recent database with the exception of the table store_provider_sdb, i.e. the blob data. So, my idea was to take this newer database and just replace the store_provider_sdb table with the older one that still has a lot of data in it. I’ll lose the file attachments of the last 3 weeks. It’s bad but bearable.

Unfortunately, I’m not sure where to go from here. Here is the process as I was planning to go through with:

  • Using pg_dump, create a db dump from the manually recreated database which should be complete with exception of the one table mentioned.
  • Set up a new system and zammad from scratch, with same versions as on the broken system
  • Delete the zammad database on this system, create a new one, grant all privileges to zammad role
  • Import all zammad db information from the previously created db dump.
  • Start Zammad

Should these steps be sufficient or is there something else I need to add? I was able to salvage some other parts of the zammad folder but I was under the impression that those are files which are anyway recreated with a new install.

Thanks for your help in advance.

If your file system and database are out of sync, you have to consider your Zammad installation to be broken. Future attachments may be corrupt / not existing due to this error.

You may want to consider having a clear cut. Clearing up non existing attachments is a very very long and annoying process (we’re talking about hours to days here). As this is a very sensitive area I’m not going to give you further hints on how, I’m sorry - it’s for everyones safety.