[Debian] Coupure systèmatique de mysql

Résolu/Fermé
belair - 4 janv. 2009 à 09:25
 Max - 8 mars 2010 à 11:06
Bonjour,
Je dispose d'un serveur sous debian, cependant je rencontre quelques problèmes avec ce serveur.
Il arrive régulièrement que mysql bug et fasse bugger tout le serveur, je suis alors obligé de redémarrer le serveur via mon panel d'hébergement.
Après le redémarrage du serveur, mysql ne fonctionne pas et m'affiche l'erreur suivante : "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) [2002]". Je suis obligé de relancer manuellement mysql en espérant que ça marche.
Parfois après avoir démarrer mysql manuellement, j'obtiens l'erreur "Checking for corrupt, not cleanly closed and upgrade needing tables.". Je suis obligé de tuer les processus existants pour que ça marche.
Auriez-vous une idée du problème ?
C'est d'autant plus embêtant que je suis loin d'être disponible 24h/24 pour redémarrer le serveur et qu'ainsi mon site peut rester hors-ligne pendant plusieurs heures.
Merci d'avance.

43 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 12:37
Re,

Donc tu vois bien qu'il y a deux mysql

Maintenant on va tester le 1er
/etc/init.d/mysql start
et affiche ce que tu vois à l'écran
et aussi le résultat de
ps aux |grep mysql
0
Re,
Effectivement, c'est clair et net.

website:~# /etc/init.d/mysql start
Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!

website:~# ps aux |grep mysql
root 13867 0.0 0.2 3656 1280 ? S 12:35 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --user=mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/website.pid
mysql 13892 13.0 5.0 71188 25040 ? Sl 12:35 0:30 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/website.pid --skip-external-locking
root 14245 0.0 0.1 2848 700 pts/0 R+ 12:38 0:00 grep mysql
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 12:46
Re,

/etc/init.d/mysql stop && ps aux | grep mysql
0
Re,

website:~# /etc/init.d/mysql stop && ps aux | grep mysql

Stopping MySQL database server: mysqld.
root 13867 0.0 0.2 3656 1280 ? S 12:35 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --user=mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/website.pid
mysql 13892 15.6 5.4 73368 27048 ? Sl 12:35 1:53 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/website.pid --skip-external-locking
root 14784 0.0 0.1 2852 704 pts/0 R+ 12:47 0:00 grep mysql
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 12:49
Re,

/etc/init.d/mysqld stop && ps aux | grep mysql
/etc/init.d/mysqld start && ps aux | grep mysql
0
Re,

website:~# /etc/init.d/mysqld stop && ps aux | grep mysql

Stopping mysqld: [ OK ]
root 13867 0.0 0.2 3656 1280 ? S 12:35 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --user=mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/website.pid
mysql 13892 15.6 5.5 74344 27856 ? Sl 12:35 2:28 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/website.pid --skip-external-locking
root 14936 0.0 0.1 2852 704 pts/0 R+ 12:50 0:00 grep mysql

website:~# /etc/init.d/mysqld start && ps aux | grep mysql
Starting mysqld: [ OK ]
root 14947 0.0 0.2 3656 1280 pts/0 S 12:50 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --user=mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/website.pid
root 14949 0.0 0.1 2852 704 pts/0 R+ 12:50 0:00 grep mysql
mysql 14974 0.0 0.9 66864 4840 pts/0 Rl 12:50 0:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/website.pid --skip-external-locking
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 12:51
Re,

Et maintenant ça marche ta base, ton site?
0
Re,
Oui parfaitement.
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 12:58
Re,

En root
update-rc.d -f mysql remove
0
Re,

website:~# update-rc.d -f mysql remove
Removing any system startup links for /etc/init.d/mysql ...
/etc/rc0.d/K21mysql
/etc/rc1.d/K21mysql
/etc/rc2.d/S19mysql
/etc/rc3.d/S19mysql
/etc/rc4.d/S19mysql
/etc/rc5.d/S19mysql
/etc/rc6.d/K21mysql
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 13:02
Re,

Ok, maintenant redémarre ton pc pour voir ce qui ce passe au démarrage.
Après le redémarrage affiche
ps aux | grep mysql
Dit aussi si ton site et base fonctionnent.
0
Re,
Je viens de redémarrer le serveur.

website:~# ps aux | grep mysql
root 2069 0.0 0.2 2668 1320 ? S 13:06 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --user=mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/website.pid
mysql 2108 12.7 5.3 77540 26980 ? Sl 13:06 0:08 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/website.pid --skip-external-locking
root 2470 0.0 0.1 2848 664 pts/0 R+ 13:07 0:00 grep mysql

Le site fonctionne, tout comme la base de données.
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 13:14
Re,

Ok, pour le moment tout fonctionne. C'est bien.

Mais tu auras sûrement des problèmes après une mise à jour de système puisque les liens vers /etc/init.d/mysql seront créer automatiquement.

Pour éviter cela tu peux le supprimer (je parle de mysql installé avec les paquets)
aptitude remove mysql

Mais avant de valider affiche ce que te donne à l'écran cette commande

0
Re,

Cela donne ça :
website:~# aptitude remove mysql
Reading package lists... Done
Building dependency tree... Done
Reading extended state information
Initializing package states... Done
Writing extended state information... Done
Reading task descriptions... Done
Building tag database... Done
Couldn't find package "mysql", and more than 40
packages contain "mysql" in their name.
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 0B will be used.
Writing extended state information... Done

Après la fin de la procédure, je n'aurais plus de coupure soudaine de mysql et par conséquent d'arrêt du serveur ?

PS: Je vais manger, je ne répondrais donc plus avec la même fougue. :P
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 13:19
Re,

Affiche
aptitude search ^mysql
0
Re,

website:~# aptitude search ^mysql
p mysql-admin - GUI tool for intuitive MySQL administratio
p mysql-admin-common - Architecture independent files for MySQL A
p mysql-client - mysql database client (meta package depend
v mysql-client-4.1 -
i mysql-client-5.0 - mysql database client binaries
i mysql-common - mysql database common files (e.g. /etc/mys
v mysql-common-4.1 -
p mysql-navigator - GUI client program for MySQL database serv
p mysql-query-browser - Official GUI tool to query MySQL database
p mysql-query-browser-common - Architecture independent files for MySQL Q
i mysql-server - mysql database server (meta package depend
p mysql-server-4.1 - mysql database server (transitional packag
i mysql-server-5.0 - mysql database server binaries
p mysqltcl - Interface to the MySQL database for the Tc
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 13:56
Re,

aptitude remove mysql-server-5.0
Mais avant de valider affiche ce que te donne à l'écran cette commande
0
Re,

website:~# aptitude remove mysql-server-5.0
Reading package lists... Done
Building dependency tree... Done
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
Building tag database... Done
The following packages are BROKEN:
mysql-server
The following packages will be REMOVED:
mysql-server-5.0
0 packages upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 67.7MB will be freed.
The following packages have unmet dependencies:
mysql-server: Depends: mysql-server-5.0 but it is not installable
Resolving dependencies...
The following actions will resolve these dependencies:

Remove the following packages:
mysql-server

Score is -301

Accept this solution? [Y/n/q/?]
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
4 janv. 2009 à 14:31
Re,

Tu peux choisir Y
Après la désinstallation affiche
find /etc/{init.d,rc*} -name '*mysql*'

0
Re,

website:~# find /etc/{init.d,rc*} -name '*mysql*'
/etc/init.d/mysql
/etc/init.d/mysql-ndb-mgm
/etc/init.d/mysqld
/etc/init.d/mysql-ndb
/etc/rc0.d/K22mysql-ndb
/etc/rc0.d/K23mysql-ndb-mgm
/etc/rc0.d/K20mysqld
/etc/rc1.d/K22mysql-ndb
/etc/rc1.d/K23mysql-ndb-mgm
/etc/rc1.d/K20mysqld
/etc/rc2.d/S18mysql-ndb
/etc/rc2.d/S17mysql-ndb-mgm
/etc/rc2.d/S20mysqld
/etc/rc3.d/S18mysql-ndb
/etc/rc3.d/S17mysql-ndb-mgm
/etc/rc3.d/S20mysqld
/etc/rc4.d/S18mysql-ndb
/etc/rc4.d/S17mysql-ndb-mgm
/etc/rc4.d/S20mysqld
/etc/rc5.d/S18mysql-ndb
/etc/rc5.d/S17mysql-ndb-mgm
/etc/rc5.d/S20mysqld
/etc/rc6.d/K22mysql-ndb
/etc/rc6.d/K23mysql-ndb-mgm
/etc/rc6.d/K20mysqld
0