I have an application running on a x86 system with MySQL InnoDB database. This application store many rows per day and yesterday, due to a power failure, I experienced a rollback of a one entire day of data. Simply I have a hole of data of the day before the power failure, and I'm sure there were many data before the power failure because I checked backup dumps.

How can a power failure involving data committed and so many rows? Is because of the log structure of innodb? Can I do something in MySQL configuration (expect to avoid power failure)?

My configuration is a standard-default of the mysql installer in Windows x64 7 environment.

  • 1
    What is your machine's configuration? What is the OS? Load on your system? Lots more detail required if we are even going to attempt an answer! Caching occurs at many levels in IT systems - database, OS, disk arrays. Although, I have to say that losing an entire day's data is rather a lot! Are there some batch processes in the background?
    – Vérace
    Oct 3, 2017 at 11:50
  • I edited the question with some informations, there is no batch, scheduled and so on. What I'm scarried about is the windows automatical restore after a configuration failure. Can this rollback the innofb log file? For this reason I moved the mysq data path away from c:\programData to a custom path c:\mysqldata. But it was not enough
    – Tobia
    Oct 3, 2017 at 17:18
  • Did you do anything to recover from the failure? Or it simply powered up on its own?
    – Rick James
    Oct 7, 2017 at 2:17
  • Are all your tables InnoDB? What are the values for %sync% and innodb%?
    – Rick James
    Oct 7, 2017 at 2:18
  • The user simply powered on the pc, and then found data loss, all tables are innodb. I cannot connect to use db to get that values, but they should be the default for mysql standard community installer for version 5.6.26
    – Tobia
    Oct 9, 2017 at 15:43

1 Answer 1


I'm quite sure that the rollback was made by automatic Windows 7 System Restore after the power failure. This restored the mysql data folder. I cannot understand how a OS restore can move files from other applications even becuse I was using a custom path for mysql-data: c:\mysqldata and not the standard c:\programData\Mysql\.... My solution is to disabled the windows restore, but I think can be a better solution.


The problem is the IBD data files of Mysql/MariaDB, these are a "monitored extension" and Windows rollbacks them anywhere in the volume.


Seems that switching innodb_file_per_table option to OFF solved the problem because new tables (only new ones) will not use IBD files.

  • Ouch! This makes Windows a really bad OS for running a database??
    – Rick James
    Jan 22, 2018 at 12:57
  • Is this a question?
    – Tobia
    Jan 22, 2018 at 15:09
  • Incredulity....
    – Rick James
    Jan 23, 2018 at 2:28
  • @Tobia Does this apply also for windows 10 ? or only 7 ? Thanx u help so Apr 30, 2019 at 8:43
  • I guess it is the same for Win10, but I did not test it yet.
    – Tobia
    May 2, 2019 at 7:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.