MySQL-Installation wird mit Fehler abgebrochen

MySQL-Installation wird mit Fehler abgebrochen

Ich versuche, MySQL auf Raspbian Jessie zu installieren. Auf einer anderen Maschine mit identischem Setup hat das problemlos funktioniert, auf der zweiten Maschine funktioniert es jedoch nicht.

Während der Paketkonfiguration werde ich zur Eingabe eines Passworts aufgefordert und nach einiger Wartezeit erhalte ich:

┌─────────────────────────────────────┤ Configuring mysql-server-5.5 ├──────────────────────────────────────┐    
│                                                                                                           │    
│ Unable to set password for the MySQL "root" user                                                          │    
│                                                                                                           │    
│ An error occurred while setting the password for the MySQL administrative user. This may have happened    │    
│ because the account already has a password, or because of a communication problem with the MySQL server.  │    
│                                                                                                           │    
│ You should check the account's password after the package installation.                                   │    
│                                                                                                           │    
│ Please read the /usr/share/doc/mysql-server-5.5/README.Debian file for more information.                  │    
│                                                                                                           │    
│                                                  <Ok>                                                     │    
│                                                                                                           │    
└───────────────────────────────────────────────────────────────────────────────────────────────────────────┘    

Als ich etwas tiefer nachforschte, fand ich heraus, dass dieser Fehler durch MySQL verursacht wurde, das nicht gestartet werden konnte. Ich untersuchte /var/log/mysql/error.log, das die folgenden Einträge enthält:

161217 23:33:16 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
161217 23:33:16 [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.
161217 23:33:17 [Note] /usr/sbin/mysqld (mysqld 5.5.53-0+deb8u1) starting as process 16476 ...
161217 23:33:17 [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.
161217 23:33:17 [Note] Plugin 'FEDERATED' is disabled.
161217 23:33:17 InnoDB: The InnoDB memory heap is disabled
161217 23:33:17 InnoDB: Mutexes and rw_locks use GCC atomic builtins
161217 23:33:17 InnoDB: Compressed tables use zlib 1.2.8
161217 23:33:17 InnoDB: Using Linux native AIO
161217 23:33:17 InnoDB: Initializing buffer pool, size = 128.0M
161217 23:33:17 InnoDB: Completed initialization of buffer pool
InnoDB: Error: auto-extending data file ./ibdata1 is of a different size
InnoDB: 0 pages (rounded down to MB) than specified in the .cnf file:
InnoDB: initial 640 pages, max 0 (relevant if non-zero) pages!
161217 23:33:17 InnoDB: Could not open or create data files.
161217 23:33:17 InnoDB: If you tried to add new data files, and it failed here,
161217 23:33:17 InnoDB: you should now edit innodb_data_file_path in my.cnf back
161217 23:33:17 InnoDB: to what it was, and remove the new ibdata files InnoDB created
161217 23:33:17 InnoDB: in this failed attempt. InnoDB only wrote those files full of
161217 23:33:17 InnoDB: zeros, but did not yet use them in any way. But be careful: do not
161217 23:33:17 InnoDB: remove old data files which contain your precious data!
161217 23:33:17 [ERROR] Plugin 'InnoDB' init function returned error.
161217 23:33:17 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
161217 23:33:17 [ERROR] Unknown/unsupported storage engine: InnoDB
161217 23:33:17 [ERROR] Aborting

161217 23:33:17 [Note] /usr/sbin/mysqld: Shutdown complete

161217 23:33:18 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended

Dies ist kein Upgrade, sondern eine Neuinstallation (abgesehen davon, dass ich MySQL ein paar Mal zu installieren versucht und mysql-server-5.5zwischen den Versuchen immer eine Bereinigung durchgeführt habe).

Ich sollte jedoch erwähnen, dass mir beim ersten Versuch der Speicherplatz ausging (die Root-Partition war knapp 2 GB groß). Ich habe versucht, dies zu beheben, indem ich die 2 GB SD-Karte durch eine 16 GB-Karte ersetzte, ddden Inhalt der alten auf die neue übertrug und die Partition erweiterte. Trotzdem kann ich es nicht zum Laufen bringen, während das erste System (das von Anfang an eine 4 GB-Karte hatte) einwandfrei funktionierte. Was ist hier das Problem und wie kann ich es beheben?

Antwort1

Offenbar wurde das Problem durch Speicherplatzmangel beim ersten Versuch verursacht: MySQL versuchte, eine Datendatei zu erstellen, was aufgrund von Speicherplatzmangel fehlschlug und eine beschädigte Datendatei sowie eine darauf verweisende Konfigurationsdatei zurückließ.

Soweit ich mich erinnere, bestand mein erster Versuch darin sudo apt-get remove, MySQL neu zu installieren. Dabei blieben die fehlerhaften Datendateien und die Konfiguration zurück, sodass sie bei der nächsten Installation aufgegriffen wurden und auf die gleiche Weise fehlschlugen.

Offensichtlich sudo apt-get purge mysql-server-5.5hat auch ein nachfolgender Befehl diese Elemente nicht entfernt. Bei mir hat die folgende Befehlsfolge endlich geholfen:

sudo apt-get purge mysql-server-5.5
sudo rm -R /etc/mysql
sudo rm -R /var/lib/mysql
sudo apt-get install mysql-server

Danach wurde MySQL angezeigt und ich konnte mich bei der MySQL-Konsole anmelden.

Wichtig: Dadurch werden sämtliche MySQL-Daten auf Ihrem System dauerhaft GELÖSCHT. Tun Sie dies nur bei einer Neuinstallation oder wenn Sie sich der Konsequenzen bewusst sind.

verwandte Informationen