Подтвердить что ты не робот

Восстановить базу данных базы данных MySQL с восстановленного жесткого диска

Мне удалось восстановить папку базы данных сервера MySQL 5.5 поврежденной операционной системы (Windows XP) в

C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\data\

Как я могу вручную восстановить его на новый MySQL Server? Когда я открываю папку, я обнаружил несколько папок, и я полагал, что это базы данных. Я не загружал файлы SQL.

4b9b3361

Ответ 1

Хорошо, я получил ответ на свою собственную проблему.

Возможный сценарий

  • Программа MYSQL повреждена и не запускается. Свежая установка MYSQL не восстановили данные.
  • Компьютер разбился, но жесткий диск все еще работая
  • Windows повреждена и не запускается, но данные безопасны.

Для вашей информации в MYSQL файлы с расширением MYD - это данные таблицы, FRM - это определение таблицы, а MYI - индексы таблицы. Существует также файл ibdata, указанный в файле my.ini, который является файлами tablesapce InnoDB. Вы должны быть administrator, чтобы иметь доступ к папке "Документ" и "Настройки" или папке "Файлы программ".

  • Откройте проводник Windows (Windows Key + E) или откройте Мой компьютер и перейдите в папку с данными, в которой находятся файлы базы данных.
  • Я бы рекомендовал вам скопировать все папки в папку данных, а не просто выбрать несколько для копирования. Скопируйте папки базы данных и файл ibdata (НЕ КОПИРУЙТЕ файлы ib_logfile (x)!) Обратите внимание, что файл ibdata может находиться не в том же месте, что и файлы данных. Чтобы узнать, где это может быть, прочитайте "Как найти файлы базы данных MYSQL в Windows".
  • Перейдите на целевой компьютер, Откройте системные службы. (Введите services.msc в меню Windows "Поиск программы и файлы" ).
  • На правой панели окна "Службы" прокрутите список и найдите имя "MYSQL". Выберите MYSQL и щелкните правой кнопкой мыши и щелкните. Как только он остановится, ваш статус станет пустым, а не.
  • Аналогичным образом найдите расположение папки данных. Как только вы его разместите, я рекомендую вам создать резервную копию папки или просто переименовать ее. Вставьте папки и файл ibdata, которые вы скопировали с исходного компьютера в папку с данными.
  • Вернитесь в окно "Службы" и выберите обратно MYSQL. Щелкните правой кнопкой мыши по нему и нажмите, чтобы возобновить службу MYSQL.
  • Откройте администратор MYSQL и войдите в систему на своем сервере базы данных, и вы сможете увидеть свою переданную базу данных вместе со своими данными.

Ответ 2

@JohnWoo ответ только для движка базы данных MYSIAM. Мой ответ строго для механизма хранения InnoDb, т.е., FRM и IBD файлов


Чтобы восстановить базу данных InnoDb , я выполнил эти шаги успешно. Прежде чем указывать шаги, я хотел бы сказать вам, что я выполнил восстановление с восстановленного жесткого диска Wndows XP и перенес его в Windows 7. Таким образом, это поможет пользователям Windows XP и Windows 7. Итак, следующие шаги: -
  • Сервер MySQL на обеих машинах ДОЛЖЕН быть остановлен. Конечно, если ОС/жесткий диск разбился, сервер на этом компьютере уже остановлен.
  • Теперь установка MySQL находится в 2 папках (для меня как минимум) →
    1. Программные файлы/программные файлы (x86) и
    2. C:\Program Data\MySQL в Windows 7 и C:\Users\All users\Application Data\MySQL в Windows XP. Обратите внимание, что данные программы (win7), а также данные приложения (WinXP) являются скрытыми папками.
  • Мы ТОЛЬКО ОДОБРЕНЫ с папкой MySQL Server ** в папках данных приложения или программных данных. Папка Mysql в Program Files бесполезна, поскольку у нее нет данных.
  • Теперь скопируйте файл my.ini в папку MySQL Server **.
  • Откройте папку с данными и скопируйте эти файлы
    <Б > 1. Все файлы ib_logfile *
     2. Все файлы ibdata *
    3. Папки базы данных (которые вы хотите), содержащие файлы .frm и .ibd.
  • Теперь скопируйте файлы, указанные в указанных выше двух точках на машине назначения. Настоятельно рекомендуется сделать резервную копию замененных файлов на конечном компьютере.
  • Теперь перезапустите сервер. Если вы поедете правильно, вы сможете восстановить свои базы данных без каких-либо ошибок.

Я бы порекомендовал вам взглянуть на метод холодной резервной копии для InnoDB в документах mysql на dev.mysql.com/doc/mysql-backup-excerpt/5.5/en/innodb-backup.html

Ответ 3

Я думаю, что управление файлами MySQL по умолчанию довольно просто. Создайте простую новую базу данных и скопируйте восстановленные файлы в подпапку mysql, которая создается в ответ, заменив любые созданные файлы базы данных. Если это не сработает, создайте таблицу в новой базе данных, чтобы получить подсказку о том, что еще может понадобиться.