October 30, 2014

Innodb Undelete and Sphinx Support

At Percona we are pleased to announce couple of services which should be helpful to MySQL Community and which are not offered by MySQL, Oracle and other companies I know about.

First we now do Data Recovery for MySQL. We’re mainly focused on Innodb with this one because it has distinct page structure which allows good data recovery possibilities even in extreme cases such as melt down file system or broken down RAID. We can undelete Innodb data – Heikki was very nice and treats deleted rows very gently allowing them to be 100% recovered if they were not overwritten yet, as well as recover dropped Innodb tables. We also can get some data recovered from covering indexes and other areas, continually improving our tool set.

This service was mainly created on demand – we had Alexa 100 companies contacting us with recovery request because neither MySQL nor Oracle could help them to recover the date so we had to get our hands dirty and Alexey had series of sleepless nights digging into Innodb page and row structure. When few more companies followed, so we continued to improve our recovery toolset and as we have both tools and experience now it would be silly not to announce it to the public.

Recovering Innodb is not the only recovery task we had to do over last year and a bit. We had to recover data using query log, corrupted binary log and dig into MyISAM tables.

You would ask who would ever need such recovery services – should not people just relay on backups ? Sure they should and most of the people we help started to take their backups much more seriously after they had to go through recovery process and lost some of their data, and we helped to implement proper backup strategy for some.

Sometimes backups stop working in others they are never setup, yet another nice case is weekly backups with no binary log enabled when managed hosting support would happily point to the backups but they are too old to be really useful.

The reason to lose data also varies. It could be SQL injection, full server being compromised or staff mistakes. Many of these would not be helped by having the slave MySQL server – so do not think about your Slave as your backup. Hard Drive failure is also less frequent issue – I think everyone understand risk of loosing hard drive well and important data is stored on RAID or at least replicated.

Alexey also has a task to write more details about Innodb data recovery process and release code for our innodb recovery toolset, so you can recover your data for free if you’re ready to spend time on it.

The other Service is official Sphinx Support and Consulting . We’re working together with Sphinx Project Team to bring you first hand support and consulting services for Sphinx. We can support your production Sphinx installation help you with development or organize custom feature development for Sphinx project.

We have been active Sphinx users from very early stages and we helped many customers to roll out sphinx solutions so this was quite a natural step.

About Peter Zaitsev

Peter managed the High Performance Group within MySQL until 2006, when he founded Percona. Peter has a Master's Degree in Computer Science and is an expert in database kernels, computer hardware, and application scaling.

Comments

  1. Peter,

    This is truly a nice service. However …

    I think you have not stressed enough on all “IF’s” and “MAY BE’s” when it comes to MyISAM undelete. In MyISAM, there will be ALWAYS a number of columns that can not be undeleted. This number depends on the size of offset pointer, number of NULLable columns and on the size of columns themselves, those at the start of the row.

    We, at MySQL Support, provide undelete service for MyISAM, only when it is feasible and for a definite niche of customers. This is due to the fact that undeleting requires writing dedicated programs, especially when dealing with packed records, which are most frequent type of MyISAM tables.

  2. peter says:

    Sinisa

    Absolutely. I think I generally pointed out you can’t always recover data 100% and MyISAM is indeed the case when some data going to be overwritten by delete operation.

    If you look at the details of how we offer recovery services in general you’ll see access (for free) how much of the data is possible to recover and only proceed with real recovery if customer understands all implications about recovered data. Because we only charge on success basics we need to ensure we’re on the same page.

Speak Your Mind

*