Восстановление базы данных mysql без бэкапа

В базах сайтов на Joomla есть все файлы frm и половина MYD MYI, а в базе сайта на WP остались только frm.

У WP сейчас по умолчанию таблицы переведены на InnoDB, кроме wp_termsmeta и wp_datalist. Соответственно, у этих двух должны быть файлы MYD и MYI. У InnoDB по умолчанию данные складываются в файл ibdata1, можно сделать в отдельные файлы. Это зависит от настройки в конфиге innodb_file_per_table = 1.
У вас всё в одном лежит и скорее всего, в основном, целое.
FRM - только структуры таблиц.
По Joomla не смотрел.
Сделайте выборки select по таблицам, из командной строки и поймёте что у вас целое, а что нет.
 
Сделайте выборки select по таблицам, из командной строки и поймёте что у вас целое, а что нет.
Я уже сделал. На WP не работают только таблицы WPML.
Прошу прощения если что то не то сказал, я в MySQL не очень силен. У меня был случай когда база сайта на Joomla состояла из двух типов таблиц Innodb, MyISAM и сайт работал нормально. А что если попробовать восстановить таблицы в Innodb?
 
А что если попробовать восстановить таблицы в Innodb?
В случае, когда InnoDB таблицы, в одном файле, самостоятельно никак. Мне не приходилось. Где-то читал на форумах, что платно такие услуги оказывают, специальным софтом разбирают файл на страницы таблиц. Только на будущее сделать настройки, чтобы все таблички хранились в разных файлах.

На WP не работают только таблицы WPML.
То есть по WP вы можете всё восстановить. WPML не критичен.

А по Joomla выборки не проходят ?

Предлагаю вам выгрузить данные WP для начала.
И если не проходят выборки по Joomlа, то искать того, кто может вам помочь, видимо за $
Если надеятся остается только на себя, то сделайте ремонт таблиц как последний шаг.
Индексы у меня падали неоднократно, полная иллюзия что база всё. Реально же поднимать с бэкапа пришлось только раз, остальное разрешилось ремонтом таблиц.
 
сделайте ремонт таблиц
Я этим еще не занимался. Не могли бы Вы дат ссылку на сайт где рассказывать как это делать?
Попробовал через SSH команду myisamchk -css имя_базы/*.MYI. Мне выдало: "myisamchk command not found".
 
Последнее редактирование:
У вас Web интерфейс к базе есть ? phpMyAdmin или что-то ещё ?
Если есть то к примеру, Для просмотра ссылки Войди или Зарегистрируйся.
Если нет или там не проходит, то из Для просмотра ссылки Войди или Зарегистрируйся

Из командной строки, может понадобиться указывать полный путь к бинарнику.
 
Спасибо за помощь.
Если есть то к примеру, Для просмотра ссылки Войди или Зарегистрируйся.
Это метод не подходит так как phpMyAdmin не видеть поломанных таблицы.
Если нет или там не проходит, то из Для просмотра ссылки Войди или Зарегистрируйся
Этот метод выдает ошибку: "Error: mysqlcheck doesn't support multiple contradicting commands."
Продолжаю на локалке эксперименты по восстановлению баз. Подгрузил две таблицы в InnoDB в базу Joomla пока все нормально. Однако это не выход. Хотелось бы восстановить данные.
 
Последнее редактирование:
1. Чаще всего слетают таблицы MyISAM. На будущее, переведите таблицы в InnoDB и надежность существенно возрастёт.
2. Если у меня слетают таблицы, а бэкапов нет, использую команду mysql: optimize table <tablename>. Сломанная таблица заработает, но не факт что данные восстановятся.
3. Делайте бэкапы. Тут уместна поговорка: админы делятся на два типа, первый тип - это те, которые ЕЩЕ не делали Backup, и второй - те кто УЖЕ делает.
 
Назад
Сверху