Bonjour,
Suite à une coupure de courant, mon petit serveur NextCloud s'est arrêté inopinément.
Au redémarrage, la cata, disque corrompu, même Ubuntu ne démarrait plus.
Quelques fsck plus tard, ça démarre enfin.
Mais si Apache semble ne pas avoir trop souffert (enfin... on verra plus tard) ce n'est pas le cas de MariaDB qui n'arrive plus à démarrer.
Impossible de trouver le fichier de log pour avoir plus d'infos : le dossier /var/log/mysql est vide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 sylvain@mycloud:~$ sudo systemctl status mariadb.service × mariadb.service - MariaDB 10.6.12 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Thu 2023-12-07 11:08:04 CET; 14min ago Docs: man:mariadbd(8) <a href="https://mariadb.com/kb/en/library/systemd/" target="_blank">https://mariadb.com/kb/en/library/systemd/</a> Process: 2811 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS) Process: 2812 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 2814 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS) Process: 2846 ExecStart=/usr/sbin/mariadbd $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE) Main PID: 2846 (code=exited, status=1/FAILURE) Status: "MariaDB server is down" CPU: 177ms Dec 07 11:08:04 mycloud mariadbd[2846]: 2023-12-07 11:08:04 0 [ERROR] InnoDB: Plugin initialization aborted with error I/O error Dec 07 11:08:04 mycloud mariadbd[2846]: 2023-12-07 11:08:04 0 [Note] InnoDB: Starting shutdown... Dec 07 11:08:04 mycloud mariadbd[2846]: 2023-12-07 11:08:04 0 [ERROR] Plugin 'InnoDB' init function returned error. Dec 07 11:08:04 mycloud mariadbd[2846]: 2023-12-07 11:08:04 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. Dec 07 11:08:04 mycloud mariadbd[2846]: 2023-12-07 11:08:04 0 [Note] Plugin 'FEEDBACK' is disabled. Dec 07 11:08:04 mycloud mariadbd[2846]: 2023-12-07 11:08:04 0 [ERROR] Unknown/unsupported storage engine: InnoDB Dec 07 11:08:04 mycloud mariadbd[2846]: 2023-12-07 11:08:04 0 [ERROR] Aborting Dec 07 11:08:04 mycloud systemd[1]: mariadb.service: Main process exited, code=exited, status=1/FAILURE Dec 07 11:08:04 mycloud systemd[1]: mariadb.service: Failed with result 'exit-code'. Dec 07 11:08:04 mycloud systemd[1]: Failed to start MariaDB 10.6.12 database server.
Je n'arrive pas à trouver où les logs pourraient être ailleurs, et je ne trouve pas comment focer MariaDB à me générer de nouveaux logs au démarrage.
J'ai essayé d'ajouter :
Mais aucun fichier ne se crée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3[mariadb] error_log=/var/log/mysql/mariadb.err
J'ai tenté d'éplucher le web à la recherche de choses à vérifier, mais je ne trouve rien de probant.
Le seul truc que j'ai trouvé, c'est la suppression complète de MariaDB puis réinstallation, mais :
- c'est franchement bourrin je trouve... déjà un truc qui vérifie les fichiers d'installation et permet de les restaurer me semblerait plus propre
- les procédures que j'ai trouvé détruisent systématiquement les bases de données
Sauf que c'est la cata...
J'ai bien un disque USB et un script qui tourne tous les soirs et sauvegarde...
- le dossier data de NextCloud (il est complet, c'est le principal on va dire)
- le dossier www de NextCloud (si ça peut m'éviter de réinstallaer, pourquoi pas)
- un backup de la base de données
C'est sans compter sur le fait que le script a tourné hier soir... n'a pas réussi à se connecter à MySQL et a sauvegardé un backup vide !
Donc plus de backup...
Sauf si vous savez comment je peux récupérer le contenu d'un fichier qui est passé de quelques centaines de Mo à 0 octets...
Evidement, j'avais pas mis en place de roulement, j'ai donc que ce dernier backup.
Donc pas moyen de restaurer un backup.
Je dois déjà tenter de réparer mon instance (au moins la faire démarrer !) sans casser ma base de données avant de voir si elle est vraiment perdue ou non...
Des idées pour faire une sorte de "réinstallation" de MariaDB sans écraser les bases existantes (osef pour les fichiers de config par contre, j'avais aucune config particulière, donc aucun scrupule à repartir d'une config vierge) ?
Partager