Ich habe beschlossen, meine XAMPP-Installation auf ein externes Laufwerk zu verschieben. Es ist ein USB3 3 TB Seagate-Laufwerk. Leider will mysql nicht starten. Alles funktioniert einwandfrei, wenn ich XAMPP auf Laufwerk C installiere, es aber nicht funktioniert, wenn ich dasselbe auf einem externen Laufwerk versuche. Ich habe den Computer viele Male deinstalliert und neu gestartet, habe alle Spuren von MySQL vom Computer entfernt und erhalte immer noch den gleichen Fehler.
Dies ist eine Neuinstallation und ich habe keine Daten in der Datenbank. Ich habe auch eine Null-Byte-Datendatei gelöscht, wie im Fehlerprotokoll vorgeschlagen, aber die Datei wird jedes Mal neu erstellt, wenn ich einen Neustart versuche.
Dies ist der Inhalt der Protokolldatei:
131003 11:36:20 [Note] Plugin 'FEDERATED' is disabled.
131003 11:36:20 InnoDB: The InnoDB memory heap is disabled
131003 11:36:20 InnoDB: Mutexes and rw_locks use Windows interlocked functions
131003 11:36:20 InnoDB: Compressed tables use zlib 1.2.3
131003 11:36:20 InnoDB: Initializing buffer pool, size = 16.0M
131003 11:36:20 InnoDB: Completed initialization of buffer pool
InnoDB: Error: space header page consists of zero bytes in data file F:\design\code\mysql\data\ibdata1
131003 11:36:20 InnoDB: Could not open or create data files.
131003 11:36:20 InnoDB: If you tried to add new data files, and it failed here,
131003 11:36:20 InnoDB: you should now edit innodb_data_file_path in my.cnf back
131003 11:36:20 InnoDB: to what it was, and remove the new ibdata files InnoDB created
131003 11:36:20 InnoDB: in this failed attempt. InnoDB only wrote those files full of
131003 11:36:20 InnoDB: zeros, but did not yet use them in any way. But be careful: do not
131003 11:36:20 InnoDB: remove old data files which contain your precious data!
131003 11:36:20 [ERROR] Plugin 'InnoDB' init function returned error.
131003 11:36:20 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
131003 11:36:20 [ERROR] Unknown/unsupported storage engine: InnoDB
131003 11:36:20 [ERROR] Aborting
131003 11:36:20 [Note] f:\design\code\mysql\bin\mysqld.exe: Shutdown complete
Ich habe bereits einige Vorschläge ausprobiert, die in anderen Themen wie diesem erwähnt wurden
innodb_buffer_pool_size = 256M
innodb_log_file_size = 256M
innodb_thread_concurrency = 16
innodb_flush_log_at_trx_commit = 2
Immer noch keine Veränderung. Jede Hilfe wäre dankbar.
EDIT: Gelöst (siehe unten)
Antworten:
Nach einigem Nachforschen, Experimentieren und Kopfschmerzen (das stört mich seit letzter Nacht) habe ich die Lösung gefunden. Zusätzlich zu den oben genannten Änderungen an der
my.ini
DateiIch habe diese Zeile auch am Ende der
my.ini
Datei hinzugefügtJetzt funktioniert alles super. Dies scheint ein Fehler zu sein, der mit der Größe eines großen Sektors auf Festplatten mit mehr als 2 TB zusammenhängt. Die Quelle für diese Lösung finden Sie auf dieser Seite .
quelle
innodb_use_native_aio=0
im[mysqld]
Abschnitt Ihrermy.cnf
Datei, da ZFS unter Linux AIO nicht unterstützt. dev.mysql.com/doc/refman/5.5/en/…Ändern Sie Ihr Backend zu
MyISAM
vonInnoDB
, Ihrmysql
kompiliert ohneInnoDB
quelle