Восстановление структуры таблиц InnoDB
Бывает, что при перемещении базы sql-дамп не получается создать и остаются только файлы "*.frm", вы их заливаете в каталог "/var/db/mysql" и в надежде что заработают innodb-таблицы приходите в отчаянье, потому что они не работают...
Например при mysqldump, может выпасть ошибка:
Got error: 1146: Table `table_name` doesn't exist when using LOCK TABLES
Вам поможет этот хитрый трюк
Создаёте базу данных "my_test":
mysql> create database my_test; mysql> use my_test;
после чего, создаёте там соответствующую названию файлу "table_name.frm" пустую таблицу:
mysql> create table `table_name` (`id` int primary key) ENGINE=Innodb;
после, замените созданный вами файл в тестовой таблице "my_test" исходным файлом таблицы:
cp /var/db/mysql/database_name/table_name.frm /var/db/mysql/my_test/table_name.frm
А теперь посмотрим структуру нашей таблицы:
mysql> use my_test; mysql> show create table table_name;
и вы увидите структуру, а дальше можете делать дамп или что вы там делали!
Также вы можете перенести все ваши побитые таблицы и переименовать базу в прежнее имя (удалив при этом старую естественно).
З.Ы. Почитайте полезную статью Восстановление данных InnoDB в MySQL
Комментарии
перепечатка с mylsqperformanceblog.com на данный момент очень часто не работает, клиента на оригинальном сайте написал что ему выдается и сообщение так и осталось без ответа.
Vasiliy G Tolstov, какая перепечатка, этот пост основан на моем личном опыте, собранном с нескольких форумов, но ни как не с "mylsqperformanceblog"
100206 20:22:12100206 20:22:12
как бы это вылечитьДык то что там написано не помогает?
не помогло =(
и
тоже
не могли бы вы написать как в упрощеном варианте использовать innodb-tools от google было бы круто :)
http://code.google.com/p/innodb-tools/
Блин, работает! Биг спс. Час втыкал то, что написано на mylsqperformanceblog, но ничего не получалось - процесс mysqld постепенно занимал 128 МБ памяти и помирал. А этот способ сработал сразу.
Отличный метод, уже почти опустил руки и вот оно решение!))
Оставьте свой комментарий