I have an embedded device running a MySQL database with a web based application.

The problem is when I shutdown my embedded device it just cuts off the power, and I can not have a controlled shutdown. Given this situation how can I configure MySQL to prevent it from failures and in case of a failure, I should have maximum support to recover my database.

While searching this, I came across InnoDB Engine as well as some configuration options to set like sync_binlog=1 & innodb_flush_log_at_trx_commit=1. I have noticed my default Engine is InnoDB and binary logs are also enabled.

What are other configurations to make for best possible failure & recovery support?

I have absolutely no experience with databases and MySQL.

  • It might just be me but it seems like you are flirting with an XY problem. An embedded device running a MySQL database and a web server seems like you're asking a lot, or using some very customized hardware that isn't applicable to our general audience. Regardless you are probably going to need some specialized code/fail safes if you expect power to be cut at any time. This isn't the standard operating model of most RDBMS.
    – Erik
    Oct 1, 2015 at 20:32

2 Answers 2


You can do many things to prevent this.

  1. Move DB server to somewhere else (hosting)
  2. Buy an UPS
  3. Change to a simpler DB software (SQLite, Files)
  4. Make your code to always save the latest changes, so when power up, programs keep running from last saved point.

One of the most important actions, in your code, is to use transaction. This way, you can be sure that a write has been correctly applied to the database in case of a power failure. This is one of the details that needs to be used to ensure the data integrity.

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.