MySQL Corruption

Hello! I am considering Seafile for 500GB-1TB of data.

I’m scared about using MySQL and backups due to consistency issues – or corruption that I didn’t know about. I’m also afraid of the files themselves getting corrupted because these files are very important to me.

What recourse do I have in the case that the MySQL database is unrecoverably corrupt? Pretend it does not exist at all. Is there a fsck option that can rebuild the DB?
What if my files are corrupt? Can I recover them in any way?

Just want to cover all my bases before moving away from filesystem management to trusting Seafile with my important data in their “proprietary” (block, meaning non-filesystem based) format.

The MySQL database doesn’t store anything critically important to the current state of the files - I think it’s primarily for ownership, sharing and stuff.
You can read about seaf-fsck here at https://manual.seafile.com/maintain/seafile_fsck.html where you also see the --export option that can be used to export the current library content without the database at all (in case of desaster recovery etc.).
But is there any particular reason why you don’t trust MySQL? We do regular mysqldump runs that export the whole database. In case anything happens to the database, we could restore from them.

Thanks for the --export option! That is exactly what I needed!

Don’t take it as anything but paranoia. I am afraid of losing all my photos, as I have once before (it was my fault).

I’m excited for Seafile Drive to come out for Mac, because I’m almost out of space on my laptop. In preparation for that, I’m setting up Seafile (obviously) and using it to host all my photos. That way when Seafile Drive comes to Mac, I can offload them all to my server. I’m then using Percona XtraBackup to take MySQL backups on my MySQL server and Attic to copy the backups from MySQL remotely and also to backup /opt/seafile remotely. Hopefully that will all be sufficient backup and redundancy.

I simply want to make sure I have all my bases covered and that I can recover from anything. Making sure that a MySQL failure won’t cause me to lose my images is important because I don’t want to introduce another point of failure unnecessarily.

Thanks for the help!

I have a NAS at home which holds a copy of my photos and videos (not movies!), copying them via WEBDAV from two Seafile LIBs using rsync to sync both ways. Same goes for all libraries from Seafile that hold important data.

If this data is very important I would never just have a Backup build on ONE single system/solution.