Возникла ошибка при подключении сервера баз данных (innodb)

MySQL, PostgreSQL, InterBaseSQL etc

Модераторы: Art.i, vasya

Возникла ошибка при подключении сервера баз данных (innodb)

Сообщение dofin » Чт авг 01, 2013 5:06 pm

Разом перестали работать все сайты на сервере. Обратился в ТП, сказали что накрылся основной жесткий диск. Восстановили информацию, заменили диск, сделали на всякий случай зеркальный. Через пару часов отключились снова все сайты уже с ошибкой, что не могут подключиться к БД. В сервисах mysql не запускается, по ssh top процесс идет. Снова отписался в ТП, порекомендовали изменить конфигурацию на администрируемую либо нанять тех кто работает по часам. Попробовал сам посмотреть снова что к чему, но так ничего и не понял.

В папке /var/run/mysqld не нашел файла mysqld.sock, думал проблема в этом, но файл создать не сумел. Логи:

Код: выделить все
key_buffer_size=16777216
read_buffer_size=131072
max_used_connections=0
max_threads=151
thread_count=0
connection_count=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 346531 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0 thread_stack 0x30000
130801 15:28:12 [Note] Event Scheduler: Loaded 0 events
130801 15:28:12 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.66-0+squeeze1'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  (Debian)
/usr/sbin/mysqld(my_print_stacktrace+0x29) [0x7f551e814219]
/usr/sbin/mysqld(handle_fatal_signal+0x483) [0x7f551e6282f3]
/lib/libpthread.so.0(+0xeff0) [0x7f551dd78ff0]
/lib/libc.so.6(gsignal+0x35) [0x7f551c81b1b5]
/lib/libc.so.6(abort+0x180) [0x7f551c81dfc0]
/usr/sbin/mysqld(+0x596e6f) [0x7f551e73ce6f]
/usr/sbin/mysqld(flst_insert_before+0x278) [0x7f551e71ad58]
/usr/sbin/mysqld(trx_purge_add_update_undo_to_history+0xfa) [0x7f551e78082a]
/usr/sbin/mysqld(trx_undo_update_cleanup+0x1e) [0x7f551e791e8e]
/usr/sbin/mysqld(trx_commit_off_kernel+0x1d9) [0x7f551e7903e9]
/usr/sbin/mysqld(trx_finish_rollback_off_kernel+0x48) [0x7f551e788018]
/usr/sbin/mysqld(+0x5aa3e3) [0x7f551e7503e3]
/usr/sbin/mysqld(que_run_threads+0x13e) [0x7f551e7505ee]
/usr/sbin/mysqld(trx_rollback_or_clean_all_without_sess+0x367) [0x7f551e789687]
/lib/libpthread.so.0(+0x68ca) [0x7f551dd708ca]
/lib/libc.so.6(clone+0x6d) [0x7f551c8b8b6d]
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.
130801 15:28:12 mysqld_safe Number of processes running now: 0
130801 15:28:12 mysqld_safe mysqld restarted
130801 15:28:12 [Note] Plugin 'FEDERATED' is disabled.
130801 15:28:12  InnoDB: Initializing buffer pool, size = 8.0M
130801 15:28:12  InnoDB: Completed initialization of buffer pool
InnoDB: Log scan progressed past the checkpoint lsn 1 1543394385
130801 15:28:12  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
InnoDB: Doing recovery: scanned up to log sequence number 1 1544160060
InnoDB: 1 transaction(s) which must be rolled back or cleaned up
InnoDB: in total 1 row operations to undo
InnoDB: Trx id counter is 0 21364992
130801 15:28:12  InnoDB: Starting an apply batch of log records to the database...
InnoDB: Progress in percents: 0 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 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
InnoDB: Apply batch completed
InnoDB: Starting in background the rollback of uncommitted transactions
130801 15:28:13  InnoDB: Rolling back trx with id 0 21364510, 1 rows to undo
130801 15:28:13  InnoDB: Started; log sequence number 1 1544160060
130801 15:28:13  InnoDB: Assertion failure in thread 139994508891904 in file ../../../storage/innobase/include/buf0buf.ic line 169
InnoDB: Failing assertion: block->state == BUF_BLOCK_FILE_PAGE
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.1/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
11:28:13 UTC - mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed,
something is definitely wrong and this may fail.

key_buffer_size=16777216
read_buffer_size=131072
max_used_connections=0
max_threads=151
thread_count=0
connection_count=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 346531 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0 thread_stack 0x30000
130801 15:28:13 [Note] Event Scheduler: Loaded 0 events
130801 15:28:13 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.66-0+squeeze1'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  (Debian)
/usr/sbin/mysqld(my_print_stacktrace+0x29) [0x7f530a68e219]
/usr/sbin/mysqld(handle_fatal_signal+0x483) [0x7f530a4a22f3]
/lib/libpthread.so.0(+0xeff0) [0x7f5309bf2ff0]
/lib/libc.so.6(gsignal+0x35) [0x7f53086951b5]
/lib/libc.so.6(abort+0x180) [0x7f5308697fc0]
/usr/sbin/mysqld(+0x596e6f) [0x7f530a5b6e6f]
/usr/sbin/mysqld(flst_insert_before+0x278) [0x7f530a594d58]
/usr/sbin/mysqld(trx_purge_add_update_undo_to_history+0xfa) [0x7f530a5fa82a]
/usr/sbin/mysqld(trx_undo_update_cleanup+0x1e) [0x7f530a60be8e]
/usr/sbin/mysqld(trx_commit_off_kernel+0x1d9) [0x7f530a60a3e9]
/usr/sbin/mysqld(trx_finish_rollback_off_kernel+0x48) [0x7f530a602018]
/usr/sbin/mysqld(+0x5aa3e3) [0x7f530a5ca3e3]
/usr/sbin/mysqld(que_run_threads+0x13e) [0x7f530a5ca5ee]
/usr/sbin/mysqld(trx_rollback_or_clean_all_without_sess+0x367) [0x7f530a603687]
/lib/libpthread.so.0(+0x68ca) [0x7f5309bea8ca]
/lib/libc.so.6(clone+0x6d) [0x7f5308732b6d]
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.
130801 15:28:14 mysqld_safe Number of processes running now: 0
130801 15:28:14 mysqld_safe mysqld restarted
130801 15:28:14 [Note] Plugin 'FEDERATED' is disabled.
130801 15:28:14  InnoDB: Initializing buffer pool, size = 8.0M
130801 15:28:14  InnoDB: Completed initialization of buffer pool
InnoDB: Log scan progressed past the checkpoint lsn 1 1543394385
130801 15:28:14  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
InnoDB: Doing recovery: scanned up to log sequence number 1 1544160060
InnoDB: 1 transaction(s) which must be rolled back or cleaned up
InnoDB: in total 1 row operations to undo
InnoDB: Trx id counter is 0 21364992
130801 15:28:14  InnoDB: Starting an apply batch of log records to the database...
InnoDB: Progress in percents: 0 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


Обратился в контору с почасовой оплатой. Результат, сайты работают, но:

mysql запустил с innodb_force_recovery = 4 Там проблема с таблицами innodb. Таблицы myisam починить удалось, а вот с innodb проблемы. В другом режиме сервер не запускается. Часть сайтов должна работать. К сожалению, с проблемой innodb мы помочь не сможем.


Боюсь после перезагрузки сервера mysql снова не будет работать как положено.

ВОПРОС: Как мне поступить и что делать? Забекапить все сайты и переустановить сервер?
dofin
 
Сообщений: 84
Зарегистрирован: Чт июл 02, 2009 9:39 am

Re: Возникла ошибка при подключении сервера баз данных (inno

Сообщение dofin » Пт авг 02, 2013 3:22 am

Соответственно и в меню слева не отображаются ссылки для управления БД.
dofin
 
Сообщений: 84
Зарегистрирован: Чт июл 02, 2009 9:39 am

Re: Возникла ошибка при подключении сервера баз данных (inno

Сообщение Poliarnik » Пт авг 02, 2013 12:05 pm

Зайдите у "Возможности" и включите БД
Poliarnik
 
Сообщений: 8
Зарегистрирован: Ср ноя 28, 2012 8:34 pm

Re: Возникла ошибка при подключении сервера баз данных (inno

Сообщение ls » Вт авг 06, 2013 2:52 pm

Надо сделать дамп всех баз, затем почистить содержимое /var/lib/mysql (сами базы физически), перезапустить mysql сервер (уже без force recovery) и он создаст пустую базу mysql с пользователем mysql root без пароля, после чего нужно будет залить содержимое дампа обратно
* FirstVDS в twitter в facebook и в вконтакте *
ls
Support team
 
Сообщений: 6405
Зарегистрирован: Чт мар 01, 2007 10:36 am
Откуда: FirstVDS


Вернуться в Базы данных

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron