Unable to start service 'mysql'

Pas de saturation au niveau de la RAM ou de la SWAP ?

Pas de saturation au niveau de la RAM ou de la SWAP ?

Je ne sais pas. Comme je n’arrive plus à voir via l’interface web les services en marche de Yunohost, j’ai tenté en ligne de commande et cela m’a donné ça :

 sudo yunohost service status
Traceback (most recent call last):
  File "/usr/bin/yunohost", line 214, in <module>
    timeout=opts.timeout,
  File "/usr/lib/python2.7/dist-packages/moulinette/__init__.py", line 136, in cli
    moulinette.run(args, output_as=output_as, password=password, timeout=timeout)
  File "/usr/lib/python2.7/dist-packages/moulinette/interfaces/cli.py", line 425, in run
    ret = self.actionsmap.process(args, timeout=timeout)
  File "/usr/lib/python2.7/dist-packages/moulinette/actionsmap.py", line 523, in process
    return func(**arguments)
  File "/usr/lib/moulinette/yunohost/service.py", line 287, in service_status
    status = _get_service_information_from_systemd(name)
  File "/usr/lib/moulinette/yunohost/service.py", line 348, in _get_service_information_from_systemd
    systemd = d.get_object('org.freedesktop.systemd1', '/org/freedesktop/systemd1')
  File "/usr/lib/python2.7/dist-packages/dbus/bus.py", line 241, in get_object
    follow_name_owner_changes=follow_name_owner_changes)
  File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 248, in __init__
    self._named_service = conn.activate_name_owner(bus_name)
  File "/usr/lib/python2.7/dist-packages/dbus/bus.py", line 180, in activate_name_owner
    self.start_service_by_name(bus_name)
  File "/usr/lib/python2.7/dist-packages/dbus/bus.py", line 278, in start_service_by_name
    'su', (bus_name, flags)))
  File "/usr/lib/python2.7/dist-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Ce qui n’est pas bon…

Et pour la ram/swap ça me parait bon :

admin@arnauld:~ $ free -m
              total        used        free      shared  buff/cache   available
Mem:            926         331          99          39         495         493
Swap:           499          14         485

Désolé je ne vais pas pouvoir aider. Ça ressemble énormément aux problèmes que j’ai actuellement sur mon serveur (webadmin qui déconne, bdd qui saute) et je n’ai pas encore trouvé la cause. Je reviendrai ici si jamais j’ai du mieux. Jusqu’à présent, je ne fais que des redémarrages pour régler temporairement les problèmes.

Côté RAM et SWAP, ça me semble ok. Faudrait voir sur des pics de conso mais ça n’a pas l’air bloquant.

1 Like

dbus gère les échanges entre processus, il peut planter quand certains sont en rade donc à mon avis c’est un symptôme mais pas une cause.

1 Like

Bonjour,

Il est possible sur une Raspberry Pi d’augmenter la taille du fichier servant au swap :

ppr

1 Like

Merci.

Quand je fais un : sudo mysqlcheck -c -u root --all-databases j’obtiens :

...
mysql.user                                         OK
nextcloud.oc_accounts                              OK
nextcloud.oc_activity
Warning  : InnoDB: The B-tree of index "activity_time" is corrupted.
error    : Corrupt
nextcloud.oc_activity_mq                           OK
...

Aïe aïe aïe, il va sans doute falloir réparer l’index…
Avant toute chose, bien sauvegarder les données.
Ensuite on peut tenter :

# mysqlcheck --debug-info -u root --repair --all-databases

Maintenant j’ai :

mysqlcheck --debug-info -u root --repair --all-databases
mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111 "Connection refused") when trying to connect

ls -l /var/run/mysqld
Et aussi :
dpkg -l | grep mysql
et :
dpkg -l | grep mariadb

Merci, j’ai re-démarré mon Yunohost de nouveau at là tout semble marcher, y compris l’interface web qui ne fonctionnait pas totalement.

A quoi servent :

ls -l /var/run/mysqld
Et aussi :
dpkg -l | grep mysql
et :
dpkg -l | grep mariadb

OK oui, c’est un bon réflexe à avoir de redémarrer après des modifications, j’ai oublié de le préciser.

ls -l /var/run/mysqld permet de lister le contenu du dossier “/var/run/mysqld” pour voir si le socket est bien présent et avec les bonnes permissions (option -l)

dpkg -l | grep "terme de recherche" permet de lister les paquets comportant le terme de recherche dans leur nom, ça aurait permis de voir quels paquets de mysql et de mariadb sont présents sur le système, pour être sûr qu’il n’en manque pas.

Mais si tout fonctionne pour l’instant alors c’est très bien, la réparation de la base a dû faire son effet.
Si jamais cela est effectivement le cas, ne pas oublier de noter le message expliquant comment réparer la base comme solution, ça aide au suivi du support pour le forum. Merci !

1 Like

Ok, j’attends un jour pour voir si tout tient car j’ai l’impression que mysql tombe en rade après un certain temps…
Merci.

Eh non, mysql est tombé en rade de nouveau et je ne peux pas le redémarrer, il reste avec le statut : Start on boot: Enabled Status: activating

Via le terminal si j’essaye de faire de nouveau sudo mysqlcheck -c -u root --all-databases j’obtiens :

~ $ sudo mysqlcheck -c -u root --all-databases
mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111 "Connection refused") when trying to connect
admin@arnauld:~ $ ls -l /var/run/mysqld

Ce que je n’avais pas avant.

Ok. D’où ma suggestion de la commande :

ls -l /var/run/mysqld

… pour savoir si le socket est bien présent et avec les bonnes permissions.
Renvoie-t-elle quelque chose ?

Pour un diagnostic rapide :

mysqladmin -u root status

Vérifier aussi si le fichier /etc/mysql/my.cnf contient bien la ligne :

socket          = /var/run/mysqld/mysqld.sock

Bonjour,

ce matin tout était tombé, j’ai du re-démarrer Yunohost en débranchant sauvagement le Pi car je n’avais accès ni à l’interface web ni en ssh.

Après re-démarrage j’ai maintenant accès en ssh et une partie de l’administration web.
Dans l’administration web si je clique sur “Applications” ou “System update” rien ne se passe. Les autres menus ouvrent bien les sous-menus par contre.

En ssh, si je fais :

admin@arnauld:~ $ ls -l /var/run/mysqld
total 0
srwxrwxrwx 1 mysql mysql 0 Mar  3 11:57 mysqld.sock

et

admin@arnauld:~ $ mysqladmin -u root status
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111 "Connection refused")'
Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!

/etc/mysql/my.cnf contient bien la ligne :

socket = /var/run/mysqld/mysqld.sock

L’interface web de Nextcloud n’affiche rien et l’interface web de roundcube m’affiche :

DATABASE ERROR: CONNECTION FAILED!
Unable to connect to the database!
Please contact your server-administrator.

Merci.

A tout hasard, vérifie ton disque dur (ça ne peut pas faire de mal) avec smartmontools.

Peut être qu’une réinstallation complète de mysql aiderait, mais je connais pas les commandes par cœurs. De mémoire il faut sauvegarder, régénérer l’espace où sont stockées les données et réimporter les données

Merci, mais c’est pas gagné :

admin@arnauld:~ $ sudo smartctl -a /dev/sda
smartctl 6.6 2016-05-31 r4324 [armv7l-linux-4.19.66-v7+] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

/dev/sda: Unknown USB bridge [0x1058:0x259c (0x1005)]
Please specify device type with the -d option.

Use smartctl -h to get a usage summary

Ok. Je pencherais plutôt pour un problème d’utilisateur/mot de passe pour accéder à la bdd.
Que donne :

$ mysql -u root -p$(cat /etc/yunohost/mysql) mysql

?

S’il y a du plantage, essayer :

$ yunohost service --regen-conf mysql -f

… et éventuellement redémarrer.