T
T
Timofey2019-10-05 01:47:15
linux
Timofey, 2019-10-05 01:47:15

How to restore InnoDB tables if they have been damaged?

Good day.
The other day I ran into a problem, after restarting the system, one of the plates fell down.
When I try to get data from it, I get `Table 'mydb.mytable' doesn't exist in engine`
When I try to recover data from a table using innodb_force_recovery, I get
`InnoDB: Table 'mydb.mytable' is corrupted.` I
also noticed during recovery attempts that the muscle complains that other plates are damaged (although they work)
Well, after seeing this, I decided to try to restore at least them, but after CHECK TABLE REPAIR TABLE these plates also broke, returning `The storage engine for the table doesn't support repair`
Please tell me what breaks my tablets, how to prevent this, and is it possible to recover data from the first broken tablet (There is a backup for the rest)?
Some technical details:
Server - A small VDS rented from a hoster.
System - Ubuntu 18.04.3 LTS
DBMS - MariaDB 10.4.8
I almost forgot to clarify, in the logs there is such an error
[ERROR] InnoDB: Table `mydb.mytable` contains unrecognizable instant ALTER metadata
Other users have similar problems:
https://www .reddit.com/r/mariadb/comments/d01s5z/t...
https://jira.mariadb.org/browse/MDEV-20198

Answer the question

In order to leave comments, you need to log in

3 answer(s)
A
Alexander Chernykh, 2019-10-05
@sashkets

It's a sour thing.
But if you have tried something like this and this recipe and nothing..., alas, alas, alas.
Inna is restored only from a backup. I sympathize with you sincerely

M
Mikhail Small, 2021-01-20
@smolfree

Good day, I ran into a similar problem and sat for several days, including stumbled upon this post. I understand that it's too late, but I found a solution that helped, very much, because nothing else helped. Hope it helps someone else.
Repo with a set of TwinDB data recovery toolkit scripts: https://github.com/chhabhaiya/undrop-for-innodb#:~...
The site itself and descriptions of recovery options: https://twindb.com/mysql-data-recovery /
And a video where he explains and shows what and how: https://www.youtube.com/watch?v=-1LeLhGjAWM

B
Bodrosh, 2021-07-22
@Bodrosh

It may also be a lack of RAM, I also encountered the problem of falling tables like:

[ERROR] mysqld: Table './br_db/br_usermeta' is marked as crashed and should be repaired

When trying to restore mysqlcheck - Innodb type is not suitable,
The storage engine for the table doesn't support repair

and in mysql through REPAIR TABLE issued OK, but did not help.
Tried to recreate the tables
CREATE TABLE br_options2 LIKE br_options;
INSERT INTO br_options2 SELECT * FROM br_options;
DROP TABLE br_options;
RENAME TABLE br_options2 TO br_options;

But the same errors appeared, the reason was eventually found - lack of memory ...

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question