InnoDB: Ignoriert das Redo-Protokoll aufgrund fehlenden MLOG_CHECKPOINT

10

Ich arbeite mit MySQL Version 5.7.14 (Homebrew-Installation unter OS X El Capitan). Mein System wurde nicht ordnungsgemäß heruntergefahren, während MySQL ausgeführt wurde, und nach dem Neustart beim Versuch, den MySQL-Daemon zu starten, werden die folgenden Fehler angezeigt.

2017-02-07T10:11:42.224506Z 0 [Note] mysqld (mysqld 5.7.14) starting as process 18234 ...
2017-02-07T10:11:42.227375Z 0 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive
2017-02-07T10:11:42.228809Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-02-07T10:11:42.228821Z 0 [Note] InnoDB: Uses event mutexes
2017-02-07T10:11:42.228826Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2017-02-07T10:11:42.228830Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-02-07T10:11:42.229114Z 0 [Note] InnoDB: Number of pools: 1
2017-02-07T10:11:42.229227Z 0 [Note] InnoDB: Using CPU crc32 instructions
2017-02-07T10:11:42.230512Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
2017-02-07T10:11:42.239632Z 0 [Note] InnoDB: Completed initialization of buffer pool
2017-02-07T10:11:42.270103Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
2017-02-07T10:11:42.270567Z 0 [ERROR] InnoDB: Ignoring the redo log due to missing MLOG_CHECKPOINT between the checkpoint 44002250712 and the end 44002250240.
2017-02-07T10:11:42.270606Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
2017-02-07T10:11:42.577436Z 0 [ERROR] Plugin 'InnoDB' init function returned error.
2017-02-07T10:11:42.577470Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2017-02-07T10:11:42.577484Z 0 [ERROR] Failed to initialize plugins.
2017-02-07T10:11:42.577488Z 0 [ERROR] Aborting

Ich habe versucht, mysqld neu zu starten, innodb-force-recovery=1aber ohne Erfolg. Kann mich jemand anleiten, wie ich mich von diesem Zustand erholen kann?

Dushyant Sabharwal
quelle
Hast du hier Glück? Ich stecke bei genau dem gleichen Problem fest.
MMagician

Antworten:

16

Versuche Folgendes:

  1. Setzen Sie innodb_log_checksums = ONauf Master und Slave.
  2. Entfernen rm /var/lib/mysql/ib_logfile*.
  3. Neu starten.
Sunil Namdev
quelle
Wenn Sie ib_logfile entfernen, gehen Ihre Daten verloren.
digz6666
@ digz6666 was bringt dich dazu das zu sagen?
Brian Leishman
@BrianLeishman versuchen Sie es mit Demo-Daten :)
digz6666
2
@ digz6666 Ich habe getan, bevor ich kommentierte, es hat gut funktioniert, nichts verloren, und die DB startete direkt lol
Brian Leishman
1
Als Referenz habe ich dies auch getestet (allerdings auf WAMP) und die Datenbank wiederhergestellt. Es gingen keine Daten verloren.
Jeff F.