powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Повреждена база данных
16 сообщений из 16, страница 1 из 1
Повреждена база данных
    #39742321
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
После аварийного отключения света перестала запускаться БД.
При запуске в логах пишет:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04 InnoDB: The InnoDB memory heap is disabled
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04 InnoDB: Mutexes and rw_locks use GCC atomic builtins
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04 InnoDB: Compressed tables use zlib 1.2.7
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04 InnoDB: Using Linux native AIO
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04 InnoDB: Initializing buffer pool, size = 128.0M
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04 InnoDB: Completed initialization of buffer pool
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04 InnoDB: highest supported file format is Barracuda.
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: Log scan progressed past the checkpoint lsn 9850189128906
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04  InnoDB: Database was not shut down normally!
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: Starting crash recovery.
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: Reading tablespace information from the .ibd files...
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: Restoring possible half-written data pages from the doublewrite
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: buffer...
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: Doing recovery: scanned up to log sequence number 9850190919680
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04  InnoDB: Error: page 1 log sequence number 9850196018772
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: is in the future! Current system log sequence number 9850190919646.
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: Your database may be corrupt or you may have copied the InnoDB
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: tablespace but not the InnoDB log files. See
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB:  http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html 
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: for more information.
Dec  4 11:55:04 srv-svc03 mysqld: 181204 11:55:04  InnoDB: Error: page 0 log sequence number 9850196018838
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: is in the future! Current system log sequence number 9850190919646.
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: Your database may be corrupt or you may have copied the InnoDB
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: tablespace but not the InnoDB log files. See
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB:  http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html 
Dec  4 11:55:04 srv-svc03 mysqld: InnoDB: for more information.
Значения innodb_force_recovery вплоть до 3 не помогают, БД не стартует.
Чего-то критически важного в БД нет, если будут потеряны изменения на несколько часов или даже повреждены отдельные записи, это приемлемо. Но в целом БД нужно сохранить, на ней находится какой-то сайт на WordPress.
Как можно восстановить БД без бэкапов?
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742324
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот полный лог с момента первой загрузки сервера:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
Dec  4 07:55:21 srv-svc03 mysqld_safe: Starting mysqld daemon with databases from /data/mysql
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name instead.
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 [Note] /usr/sbin/mysqld (mysqld 5.5.60-0+deb7u1) starting as process 3095 ...
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use the full name instead.
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 [Note] Plugin 'FEDERATED' is disabled.
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 InnoDB: The InnoDB memory heap is disabled
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 InnoDB: Mutexes and rw_locks use GCC atomic builtins
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 InnoDB: Compressed tables use zlib 1.2.7
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 InnoDB: Using Linux native AIO
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 InnoDB: Initializing buffer pool, size = 128.0M
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 InnoDB: Completed initialization of buffer pool
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21 InnoDB: highest supported file format is Barracuda.
Dec  4 07:55:21 srv-svc03 mysqld: InnoDB: Log scan progressed past the checkpoint lsn 9850189128906
Dec  4 07:55:21 srv-svc03 mysqld: 181204  7:55:21  InnoDB: Database was not shut down normally!
Dec  4 07:55:21 srv-svc03 mysqld: InnoDB: Starting crash recovery.
Dec  4 07:55:21 srv-svc03 mysqld: InnoDB: Reading tablespace information from the .ibd files...
Dec  4 07:55:21 srv-svc03 mysqld: InnoDB: Restoring possible half-written data pages from the doublewrite
Dec  4 07:55:21 srv-svc03 mysqld: InnoDB: buffer...
Dec  4 07:55:22 srv-svc03 mysqld: InnoDB: Doing recovery: scanned up to log sequence number 9850190919680
Dec  4 07:55:22 srv-svc03 mysqld: 181204  7:55:22  InnoDB: Error: page 1 log sequence number 9850196018772
Dec  4 07:55:22 srv-svc03 mysqld: InnoDB: is in the future! Current system log sequence number 9850190919646.
Dec  4 07:55:22 srv-svc03 mysqld: InnoDB: Your database may be corrupt or you may have copied the InnoDB
Dec  4 07:55:22 srv-svc03 mysqld: InnoDB: tablespace but not the InnoDB log files. See
Dec  4 07:55:22 srv-svc03 mysqld: InnoDB:  http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html 
Dec  4 07:55:22 srv-svc03 mysqld: InnoDB: for more information.
Dec  4 07:55:23 srv-svc03 mysqld: 181204  7:55:23  InnoDB: Error: page 0 log sequence number 9850196018838
Dec  4 07:55:23 srv-svc03 mysqld: InnoDB: is in the future! Current system log sequence number 9850190919646.
Dec  4 07:55:23 srv-svc03 mysqld: InnoDB: Your database may be corrupt or you may have copied the InnoDB
Dec  4 07:55:23 srv-svc03 mysqld: InnoDB: tablespace but not the InnoDB log files. See
Dec  4 07:55:23 srv-svc03 mysqld: InnoDB:  http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html 
Dec  4 07:55:23 srv-svc03 mysqld: InnoDB: for more information.
Dec  4 07:55:23 srv-svc03 mysqld: 181204  7:55:23  InnoDB: Starting an apply batch of log records to the database...
Dec  4 07:55:23 srv-svc03 mysqld: InnoDB: Progress in percents: 04:55:23 UTC - mysqld got signal 11 ;
Dec  4 07:55:23 srv-svc03 mysqld: This could be because you hit a bug. It is also possible that this binary
Dec  4 07:55:23 srv-svc03 mysqld: or one of the libraries it was linked against is corrupt, improperly built,
Dec  4 07:55:23 srv-svc03 mysqld: or misconfigured. This error can also be caused by malfunctioning hardware.
Dec  4 07:55:23 srv-svc03 mysqld: We will try our best to scrape up some info that will hopefully help
Dec  4 07:55:23 srv-svc03 mysqld: diagnose the problem, but since we have already crashed, 
Dec  4 07:55:23 srv-svc03 mysqld: something is definitely wrong and this may fail.
Dec  4 07:55:23 srv-svc03 mysqld: 
Dec  4 07:55:23 srv-svc03 mysqld: key_buffer_size=16777216
Dec  4 07:55:23 srv-svc03 mysqld: read_buffer_size=131072
Dec  4 07:55:23 srv-svc03 mysqld: max_used_connections=0
Dec  4 07:55:23 srv-svc03 mysqld: max_threads=151
Dec  4 07:55:23 srv-svc03 mysqld: thread_count=0
Dec  4 07:55:23 srv-svc03 mysqld: connection_count=0
Dec  4 07:55:23 srv-svc03 mysqld: It is possible that mysqld could use up to 
Dec  4 07:55:23 srv-svc03 mysqld: key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 346701 K  bytes of memory
Dec  4 07:55:23 srv-svc03 mysqld: Hope that's ok; if not, decrease some variables in the equation.
Dec  4 07:55:23 srv-svc03 mysqld: 
Dec  4 07:55:23 srv-svc03 mysqld: 1 Thread pointer: 0x0
Dec  4 07:55:23 srv-svc03 mysqld: Attempting backtrace. You can use the following information to find out
Dec  4 07:55:23 srv-svc03 mysqld: where mysqld died. If you see no messages after this, something went
Dec  4 07:55:23 srv-svc03 mysqld: terribly wrong...
Dec  4 07:55:23 srv-svc03 kernel: [   20.226030] mysqld[3100]: segfault at fffffffffffffffb ip 00007f67234399a5 sp 00007f6714c40bd0 error 5 in mysqld[7f6722dbb000+a80000]
Dec  4 07:55:23 srv-svc03 mysqld: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 
Dec  4 07:55:23 srv-svc03 mysqld_safe: mysqld from pid file /var/run/mysqld/mysqld.pid ended
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742342
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну делай копию и пробуй опцию 5...
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742346
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Копию файлов ib*?
Или вообще всех файлов каталога MySQL?
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742353
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На всякий случай скопировал все файлы.
Опции 5 не хватило, но на опции 6 сервер запустился.
Примерно полторы тысячи сбоев такого вида:
Код: plaintext
1.
2.
3.
4.
5.
6.
Dec  4 12:50:07 srv-svc03 mysqld: 181204 12:50:07  InnoDB: Error: page 10168 log sequence number 9850161699495
Dec  4 12:50:07 srv-svc03 mysqld: InnoDB: is in the future! Current system log sequence number 162263.
Dec  4 12:50:07 srv-svc03 mysqld: InnoDB: Your database may be corrupt or you may have copied the InnoDB
Dec  4 12:50:07 srv-svc03 mysqld: InnoDB: tablespace but not the InnoDB log files. See
Dec  4 12:50:07 srv-svc03 mysqld: InnoDB:  http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html 
Dec  4 12:50:07 srv-svc03 mysqld: InnoDB: for more information.
Нужно будет пересоздать все индексы?
Или этого недостаточно?
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742362
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Повредилась таблица в одной БД, она читается (select * from table), но вызывает ошибки или сбои при обновлении.
Данные в таблице не важны (это вспомогательная БД, она полностью создается из другого источника).
Но при попытке дропнуть таблицу или даже БД падает MySQL.
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742381
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вручную удалил каталог поврежденной БД, перезапустил MySQL.
mysqlcheck --check-upgrade --all-databases --auto-repair при запуске ошибок не находит.
Однако после старта MySQL в логах по прежнему много ошибок типа вышеприведенной.
Как можно проверить и исправить БД?
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742388
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даже innochecksum ошибок в ibd-файле не находит.
Однако проблемная база где-то осталась.
Если я удаляю каталог этой БД, то в СУБД этой базы более нет (смотрю через HeidiSQL).
Добавляю новую пустую БД с таким же именем — ок.
Добавляю в эту БД новую таблицу — выдает ошибку, что указанная таблица уже существует. Хотя HeidiSQL показывает, что БД пустая.
Пытаюсь дропнуть это пустую БД — MySQL падает.
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742395
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.проблемная база где-то осталасьУгу.. в системной таблице... боюсь, придётся пересоздавать system tablespace...
Попробуй дропнуть tablespace проблемной таблицы. А ну как поможет.
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742399
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообщем бэкапы нашлись, так что я просто удалил весь data-каталог и пересоздал пустую СУБД.
Основные таблицы для сайта WordPress теперь работают.
Но у меня на этом сервере есть еще пара баз. Эти базы вспомогательные, их содержимое формируется из другого источника данных.
Однако бэкапа структуры этих баз у меня нет, но есть сохраненный каталог с frm-файлами.
Можно из него воссоздать пустые БД?
Простое копирование каталога не сработала — после этого базы в списке видны, однако почему-то содержат только некоторые из таблиц (то есть вместо 20 таблиц в новой БД почему-то только 3 или 4 таблицы, хотя все frm-файлы скопированы).
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742415
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять - сведения о таблицах хранятся в системных метаданных. Одного копирования файлов - мало.
Для воссоздания структуры используй mysqlfrm .
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742421
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про эту утилиту я информацию уже нашел, но саму утилиту нигде найти не могу.
В пакете mysql-tools ее нет.
У меня подозрения, что она работает только со старыми версиями MySQL.
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742430
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тулза входит в пакет MySQL Utilities, которая снесён в архив. Но к скачиванию он вполне доступен.
https://downloads.mysql.com/archives/utilities/
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742438
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С установкой не так просто.
Во-первых этот пакет конфликтует с системным mysql-utilities.
Во-вторых он требует mysql-connector-python-commercial, который непонятно где брать.

Если у кого-то есть рабочая утилита mysqlfrm, не могли бы мне сконвертировать в sql где-то штук 15 frm-файлов?
...
Рейтинг: 0 / 0
Повреждена база данных
    #39742492
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашел онлайн-сервис: https://www.rebasedata.com/convert-myisam-to-mysql-online
Он принимает frm-файлы, вроде бы конвертирует, но на выходе выдает пустой SQL.

Вообщем вернул ранее сохраненный бэкап (с поврежденными данными) на место, стартовал MySQL, извлек в SQL из данных описания таблиц, потом вернулся к каталогу с нормальными данными и вручную создал таблицы из SQL.
Странно, что это не получилось сделать напрямую из frm-файлов, вроде бы в них вся необходимая информация есть.
...
Рейтинг: 0 / 0
Повреждена база данных
    #39750686
LiveMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alibek B.,

Я так понимаю, что уже поздно, но на всякий случай напишу.
В таких случаях innodb_force_recovery перебирается до 6 с целью запустить базу и снять бекап.
После чего надо сдернуть бекап(mysqldump), удалить ВСЕ(!!!) и начинать заново с создания системной бд и потом уже разворачивать бекап.
Что делать в таком случае если у вас база на много гб я не знаю, но при средних размеров бд (до 10-30гб) вполне рабочий вариант.

У меня в таких ситуациях обычно повреждались системные таблицы и используемые в момент аварии таблицы основной бд.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Повреждена база данных
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]