Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте. У меня возникла следующая проблема:
Работал с базой данных состоящей из таблиц InnoDB, на очередном запросе сервер завис.
После перезагрузки сервера при обращении к базе данных начал выдавать ошибку 1049 - неизвестная БД. Причем эту ошибку не только для этой, но и для други базы данных(с таблицами MyISAM).
Сделал резервную копию папки data и переустановил сервер. Скопировал обратно папку data.
После переустановки сервера, базы данных с таблицами MyISSAM восстановились без проблем, а в с таблицами InnoDB восстановились только представления, без таблиц.
Как можно восстановить таблицы InnoDB? Хотя бы структуру таблиц без данных. Помогите пожалуйста.
Неактивен
Данные Innodb хранятся в отдельный файлах, вне каталога базы данных.
Восстановление структуры обсуждалось: http://sqlinfo.ru/forum/viewtopic.php?id=793
Неактивен
Для того, чтобы заработал InnoDB, нужно, чтобы на тех же местах были все файлы InnoDB
(ibdata, ib_logfile, *.ibd), файлы описания таблиц *.frm, а так же были бы теми же самыми все
настройки InnoDB, касающиеся размеров этих файлов.
Скорее всего, в журнале ошибок написано, какой конкретно файл не подцепился.
Неактивен
Спасибо, rgbeast. Помогло
Неактивен
Здравствуйте. Все таблицы восстановил.
Теперь начал забивать их данными, данные вставляются нормально, но при выборе данных соединение с сервером почему то разрывается.
Никак не могу понять в чем проблема. При этом при просмотре через EMS Manager данные отображаются, а при выполнение запроса через SQL-скрипт в том же EMS Manager происходит нижеописанное. Но ведь он выполняет точно такой же запрос(?).
Вот лог действий:
Выполнено : 06.09.2008 9:30:53
Операция : BEGIN
Результат : "OK."
Выполнено : 06.09.2008 9:31:05
Операция : use stroyinfo
Результат : "OK."
Выполнено : 06.09.2008 9:31:07
Операция : select * from streets
Результат : "Lost connection to MySQL server during query"
Выполнено : 06.09.2008 9:31:07
Операция : ROLLBACK
Результат : "MySQL server has gone away"
Выполнено : 06.09.2008 9:31:08
Операция : BEGIN
Результат : "Can't connect to MySQL server on 'localhost' (10061)"
Неактивен
Сам скрипт такой:
use stroyinfo;
select * from streets;
Так происходит со всеми таблицами
Неактивен
Вы восстановили структуру таблиц, но они по сути битые. Нужно сделать
SHOW CREATE TABLE streets;
получится запрос CREATE TABLE streets ...
Запишите его для всех таблиц. затем удалите файлы, которые создавали полностью. Затем создайте все таблицы с помощью команд CREATE TABLE
Неактивен
Спасибо Можно было и самому догадаться.
Неактивен