[Debian]démarrage mysql impossible

Résolu
Bonjour,

Voila le titre est explicite.

Impossible de lancer sql car problème de dépendances...

# apt-get install mysql-common
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
mysql-common est déjà la plus récente version disponible.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
2 partiellement installés ou enlevés.
Après cette opération, 0o d'espace disque supplémentaires seront utilisés.
Paramétrage de mysql-server-5.1 (5.1.40-0.dotdeb.1) ...
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!
invoke-rc.d: initscript mysql, action "start" failed.
dpkg : erreur de traitement de mysql-server-5.1 (--configure) :
le sous-processus post-installation script a retourné une erreur de sortie d'état 1
dpkg : des problèmes de dépendances empêchent la configuration de mysql-server :
mysql-server dépend de mysql-server-5.1 ; cependant :
Le paquet mysql-server-5.1 n'est pas encore configuré.
dpkg : erreur de traitement de mysql-server (--configure) :
problèmes de dépendances - laissé non configuré
Des erreurs ont été rencontrées pendant l'exécution :
mysql-server-5.1
mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1)


J'ai cherché dans le fichier log de mysql mais il est vide...

Une idée ?
Configuration: Windows XP Internet Explorer 7.0

82 réponses

Résumé de la discussion

Problème de dépendances lors de l'installation de MySQL empêche la configuration et le démarrage, mysql-server-5.1 n'étant pas configuré et le script post-installation retournant une erreur d'état 1. Plusieurs messages d'erreur décrivent l'échec du démarrage de mysqld et des dépendances non satisfaites bloquant mysql-server-5.1 puis mysql-server, dpkg signalant des codes d'erreur et des paquets non configurés. Une correction fréquente consiste à ajuster datadir dans /etc/mysql/my.cnf afin que le répertoire des bases soit correct, puis déplacer les données et relier /var/lib/mysql au bon chemin. Enfin, après correction des chemins et permissions, redémarrer le service et vérifier les logs pour s'assurer que mysqld démarre et que les sockets fonctionnent.

Bobot (l’IA à votre service)
  1. Modérateur
    Re,

    Ok.
    Alors tu peux mettre résolu.

    Bonne continuation.
    1. Je viens de retrouver un backup de ma base de données.
      Donc j'ai supprimé la base et restaurée avec mon backup, et la tout roule.

      Je te dit un grand merci en tout cas pour ta disponibilité et ta patience :)
      1. Modérateur
        Re,

        Non, ce n'est pas foutu ;-)

        En fait la directive datadir doit contenir le répertoire où se trouve tes bases, ce qui donne
        datadir=/home/xx

        et pas
        datadir=/home/xx/mybdd

        Je te conseille de faire plutôt

        mkdir /home/xx/mysql
        mv -v /home/xx/mybdd /home/xx/mysql/
        ln -sf /home/xx/mysql /var/lib/mysql


        et dans /etc/mysql/my.cnf
        datadir=/home/xx/mysql

        Ensuite tu redémarres mysql et tu vérifies.
        1. Dans phpmyadmin, je vois 3 bases de données:

          mysql
          mybdd
          information_schema

          Je pense que c'est foutu :s
          1. ls -l /var/lib/mysql
            total 8
            -rw-r--r-- 1 root root 0 nov 6 14:48 debian-5.0.flag
            lrwxrwxrwx 1 root root 13 nov 6 15:18 mybdd -> /home/xx/mybdd
            drwxr-xr-x 2 mysql root 4096 nov 6 14:48 mysql
            -rw------- 1 root root 7 nov 6 14:48 mysql_upgrade_info
            1. Modérateur
              Re,

              Comme je te précisais au dessus, j'ai créé un lien symbolique entre les deux.

              Donc d'après toi /var/lib/mysql doit être un lien symbolique vers /home/xx/mybdd

              Alors pour me convaincre affiche le résultat de
              ls -l /var/lib/mysql
              1. Comme je te précisais au dessus, j'ai créé un lien symbolique entre les deux.

                Pour vérifier qu'il est ok, je me connecte à debian avec WinSCP (genre filezilla),
                je vais dans /var/lib/

                et la j'ai un lien symbolique ayant pour nom : mybdd

                je double clique dessus, et la je me retrouve dans le répertoire /home/xx/mybdd et je vois bien mes fichier frm.

                Voila pourquoi tout me parait ok... et pourtant...
                1. Modérateur
                  Re,

                  grep datadir /etc/mysql/my.cnf
                  datadir = /var/lib/mysql

                  Tout me parait ok.


                  Alors ce n'est pas ok
                  Il faut modifier dans /etc/mysql/my.cnf

                  datadir=/home/xx/mybdd

                  ensuite redémarre mysql

                  /etc/init.d/mysql restart


                  1. dans /home/xx/mybdd

                    /home/xx/mybdd# ls -l
                    total 100
                    -rwxrwxr-x 1 mysql mysql 8686 oct 5 15:26 auto2000.frm
                    -rwxrwxr-x 1 mysql mysql 8686 oct 5 15:26 bagonneau.frm
                    -rwxrwxr-x 1 mysql mysql 8664 oct 5 15:26 commentaires.frm
                    -rwxrwxr-x 1 mysql mysql 8686 oct 5 15:26 commun.frm
                    -rwxrwxr-x 1 mysql mysql 65 jun 10 11:01 db.opt
                    -rwxrwxr-x 1 mysql mysql 8686 oct 5 15:26 gamc.frm
                    -rwxrwxr-x 1 mysql mysql 8686 oct 5 15:26 lra.frm
                    -rwxrwxr-x 1 mysql mysql 8686 oct 5 15:26 peyronnet.frm
                    -rwxrwxr-x 1 mysql mysql 8686 oct 5 15:26 saga.frm
                    1. grep datadir /etc/mysql/my.cnf
                      datadir = /var/lib/mysql

                      Tout me parait ok.
                      Je relance les services pour voir...
                      1. Re,

                        Voila je viens d'installer phpmyadmin et il est accessible.

                        Petit bilan :

                        1 - apache : ok
                        2 - mysql : ok
                        3 - php : ok

                        4 - http://debian : ok
                        5 - http://debian/phpmyadmin : ok

                        6 - password root affecté à mysql : ok

                        Il ne me reste plus qu'un souci

                        Dans phpmyadmin, je vois bien ma bdd sauvegardée mais dès que je veux visualiser une table :

                        requête SQL:
                        SHOW INDEX FROM `bagonneau` ;
                        MySQL a répondu:

                        #1033 - Incorrect information in file: './JCMI/bagonneau.frm'
                        1. Précision :

                          Le lin symbolique entre /var/lib/mysql et /home/xxx/mybdd est ok (c'est pour cela d'ailleurs que je retrouve mybbd dans phpmyadmin)
                          Les fichiers frm font 8Mo environ, et pourtant quand je liste mes tables, je ne peux pas les affichier car elles sont vides (onglet afficher grisé)
                      2. Modérateur
                        Re,

                        Tu peux commencer par mettre un mot de passe pour mysql

                        mysql> set password for root@localhost=password('TON_MOT_DE_PASSE');


                        Affiche le résultat de
                        /usr/sbin/apache2 -M
                        whereis phpmyadmin


                        1. # mysql -u root -p
                          Enter password:
                          Welcome to the MySQL monitor. Commands end with ; or \g.
                          Your MySQL connection id is 35
                          Server version: 5.0.51a-24+lenny2-log (Debian)

                          Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

                          mysql>

                          Ca commence à sentir bon :)
                          Par contre le php n'est toujours pas interprété car quand je lance un http://192.168.x.x il me propose toujours de dl le fichier index.php

                          Autre point, phpmyadmin n'est pas accessible :

                          403 Forbidden
                          Forbidden
                          You don't have permission to access /phpmyadmin on this server.

                          Mais je suis peu être un peu trop pressé :)
                          1. Modérateur
                            Re,

                            Starting MySQL database server: mysqld.
                            Checking for corrupt, not cleanly closed and upgrade needing tables.. <-- pas bien non ?


                            Au contraire, c'est très bien.
                            Le message qui t'intéresse c'est celui en gras.

                            Ce que tu ne crois pas que c'est bien, en fait c'est une vérification des tables par mysql.

                            Maintenant tape

                            mysql -u root -p


                            Fait ENTRER et affiche ici ce que tu vois à l'écran
                            1. # aptitude install mysql-server-5.0
                              Lecture des listes de paquets... Fait
                              Construction de l'arbre des dépendances
                              Lecture des informations d'état... Fait
                              Lecture de l'information d'état étendu
                              Initialisation de l'état des paquets... Fait
                              Les NOUVEAUX paquets suivants vont être installés :
                              libdbd-mysql-perl{a} libdbi-perl{a} libnet-daemon-perl{a} libplrpc-perl{a} mysql-client-5.0{a} mysql-server-5.0
                              0 paquets mis à jour, 6 nouvellement installés, 0 à enlever et 0 non mis à jour.
                              Il est nécessaire de télécharger 34,3Mo/35,3Mo d'archives. Après dépaquetage, 105Mo seront utilisés.
                              Voulez-vous continuer ? [Y/n/?] y
                              Écriture de l'information d'état étendu... Fait
                              Prendre : 1 ftp://ftp2.fr.debian.org stable/main mysql-client-5.0 5.0.51a-24+lenny2 [7785kB]
                              Prendre : 2 ftp://ftp2.fr.debian.org stable/main mysql-server-5.0 5.0.51a-24+lenny2 [26,5MB]
                              34,3Mo téléchargés en 2min48s (203ko/s)
                              Préconfiguration des paquets...
                              Sélection du paquet libnet-daemon-perl précédemment désélectionné.
                              (Lecture de la base de données... 77333 fichiers et répertoires déjà installés.)
                              Dépaquetage de libnet-daemon-perl (à partir de .../libnet-daemon-perl_0.38-1.1_all.deb) ...
                              Sélection du paquet libplrpc-perl précédemment désélectionné.
                              Dépaquetage de libplrpc-perl (à partir de .../libplrpc-perl_0.2017-1.1_all.deb) ...
                              Sélection du paquet libdbi-perl précédemment désélectionné.
                              Dépaquetage de libdbi-perl (à partir de .../libdbi-perl_1.605-1_i386.deb) ...
                              Sélection du paquet libdbd-mysql-perl précédemment désélectionné.
                              Dépaquetage de libdbd-mysql-perl (à partir de .../libdbd-mysql-perl_4.007-1_i386.deb) ...
                              Sélection du paquet mysql-client-5.0 précédemment désélectionné.
                              Dépaquetage de mysql-client-5.0 (à partir de .../mysql-client-5.0_5.0.51a-24+lenny2_i386.deb) ...
                              Sélection du paquet mysql-server-5.0 précédemment désélectionné.
                              Dépaquetage de mysql-server-5.0 (à partir de .../mysql-server-5.0_5.0.51a-24+lenny2_i386.deb) ...
                              Traitement des actions différées (« triggers ») pour « man-db »...
                              Paramétrage de libnet-daemon-perl (0.38-1.1) ...
                              Paramétrage de libplrpc-perl (0.2017-1.1) ...
                              Paramétrage de libdbi-perl (1.605-1) ...
                              Paramétrage de libdbd-mysql-perl (4.007-1) ...
                              Paramétrage de mysql-client-5.0 (5.0.51a-24+lenny2) ...
                              Paramétrage de mysql-server-5.0 (5.0.51a-24+lenny2) ...
                              Stopping MySQL database server: mysqld.
                              Starting MySQL database server: mysqld.
                              Checking for corrupt, not cleanly closed and upgrade needing tables.. <-- pas bien non ?
                              Lecture des listes de paquets... Fait
                              Construction de l'arbre des dépendances
                              Lecture des informations d'état... Fait
                              Lecture de l'information d'état étendu
                              Initialisation de l'état des paquets... Fait
                              Écriture de l'information d'état étendu... Fait
                              1. Modérateur
                                Re,
                                aptitude purge mysql-server-5.1
                                aptitude install mysql-server-5.0
                                1. Modérateur
                                  Re,

                                  Pour l'instant tu ne rajoutes rien.

                                  1. Essaie d'installer d'abord la version 5.0

                                  1. Ok.
                                    Je ne désinstalle pas la version 5.1 avant ?
                                    Désolé je fais vraiment du pas à pas mais je voudrais pas me rater quelque part et surtout tout bien comprendre.
                                • 1
                                • 2
                                • 3
                                • 4
                                • 5