[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. Bonjour

    Pourriez vous faire un ls -l de /var/run/mysqld et nous donnez le resultat
    1. Le répertoire mysqld existe déja mais bon je suis les instructions à la lettre car la je sature :)

      # mkdir /var/run/mysqld
      mkdir: ne peut créer le répertoire `/var/run/mysqld': Le fichier existe.
      # chown mysql. mysqld
      chown: ne peut accéder `mysqld': Aucun fichier ou répertoire de ce type
      1. Après aptitude purge php4 et aptitude purge php5

        # dpkg --get-selections | egrep 'apache2|mysql|php'
        apache2-common deinstall
        apache2-doc install
        apache2-mpm-prefork install
        apache2-prefork-dev install
        apache2-utils install
        apache2.2-common install
        libapache-mod-php4 deinstall
        libapache2-mod-perl2 deinstall
        libapache2-mod-php5 install
        libapache2-mod-security deinstall
        libmysqlclient15-dev install
        libmysqlclient15off purge
        libmysqlclient16 deinstall
        mysql-client-5.1 deinstall
        mysql-common purge
        mysql-server-5.0 deinstall
        php4-gd deinstall
        php4-gmp deinstall
        php4-ming deinstall
        php4-mysql deinstall
        php4-xdebug deinstall
        php4-xslt deinstall
        php5-cli install
        php5-common install
        php5-curl install
        php5-gd install
        php5-gmp deinstall
        php5-imap install
        php5-ldap install
        php5-mcrypt install
        php5-mhash install
        php5-ming install
        php5-mysql install
        php5-mysqli deinstall
        php5-odbc install
        php5-pdo-mysql deinstall
        php5-pdo-sqlite deinstall
        php5-pspell install
        php5-snmp install
        php5-sybase install
        php5-tidy deinstall
        phpmyadmin install


        Il reste des choses à purger encore ?
        1. Précision :

          Je viens de retrouver une trace dans le daemon.log :

          Nov 5 11:11:01 lra /etc/init.d/mysql[13226]: 0 processes alive and '/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping' resulted in
          Nov 5 11:11:01 lra /etc/init.d/mysql[13226]: ^G/usr/bin/mysqladmin: connect to server at 'localhost' failed
          Nov 5 11:11:01 lra /etc/init.d/mysql[13226]: error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
          Nov 5 11:11:01 lra /etc/init.d/mysql[13226]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
          Nov 5 11:11:01 lra /etc/init.d/mysql[13226]:
          1. Modérateur
            Salut,

            Affiche le résultat de
            cat /etc/mysql/my.cnf
            --
            106485010510997108
            1. cat /etc/mysql/my.cnf#
              # The MySQL database server configuration file.
              #
              # You can copy this to one of:
              # - "/etc/mysql/my.cnf" to set global options,
              # - "~/.my.cnf" to set user-specific options.
              #
              # One can use all long options that the program supports.
              # Run program with --help to get a list of available options and with
              # --print-defaults to see which it would actually understand and use.
              #
              # For explanations see
              # https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html

              # This will be passed to all mysql clients
              # It has been reported that passwords should be enclosed with ticks/quotes
              # escpecially if they contain "#" chars...
              # Remember to edit /etc/mysql/debian.cnf when changing the socket location.
              [client]
              port = 3306
              socket = /var/run/mysqld/mysqld.sock

              # Here is entries for some specific programs
              # The following values assume you have at least 32M ram

              # This was formally known as [safe_mysqld]. Both versions are currently parsed.
              [mysqld_safe]
              socket = /var/run/mysqld/mysqld.sock
              nice = 0

              [mysqld]
              old_passwords = true # inserted by debconf
              # We activated the above for connections from hosts running Debian Woody/Sarge!
              #
              # Prior to MySQL 5.0, user passwords were stored in a rather weak way. This
              # has been improved with the drawback that client programs shipped with
              # Debian Woody/Sarge (technically: linked against libmysqlclient.so.12 or
              # earlier) cannot connect any more if either their account has either been
              # created or their password has been modified using MySQL 5.0.
              # See http://dev.mysql.com/doc/refman/5.0/en/old-client.html
              #
              # * Basic Settings
              #
              user = mysql
              pid-file = /var/run/mysqld/mysqld.pid
              socket = /var/run/mysqld/mysqld.sock
              port = 3306
              basedir = /usr
              datadir = /var/lib/mysql
              tmpdir = /tmp
              language = /usr/share/mysql/english
              skip-external-locking
              #
              # Instead of skip-networking you can now listen only on
              # localhost which is more compatible and is not less secure.
              # bind-address = 192.168.16.12
              # skip-networking
              #
              # * Fine Tuning
              #
              key_buffer = 16M
              max_allowed_packet = 16M
              thread_stack = 128K
              thread_cache_size = 8
              #
              # * Query Cache Configuration
              #
              query_cache_limit = 1048576
              query_cache_size = 16777216
              query_cache_type = 1
              #
              # * Logging and Replication
              #
              # Both location gets rotated by the cronjob.
              # Be aware that this log type is a performance killer.
              #log = /var/log/mysql/mysql.log
              #
              # Error logging goes to syslog. This is a Debian improvement :)
              #
              # Here you can see queries with especially long duration
              #log_slow_queries = /var/log/mysql/mysql-slow.log
              #
              # The following can be used as easy to replay backup logs or for replication.
              #server-id = 1
              log_bin = /var/log/mysql/mysql-bin.log
              # WARNING: Using expire_logs_days without bin_log crashes the server! See README.Debian!
              expire_logs_days = 10
              max_binlog_size = 100M
              #binlog_do_db = include_database_name
              #binlog_ignore_db = include_database_name
              #
              # * BerkeleyDB
              #
              # According to an MySQL employee the use of BerkeleyDB is now discouraged
              # and support for it will probably cease in the next versions.
              skip-bdb
              #
              # * InnoDB
              #
              # InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
              # Read the manual for more InnoDB related options. There are many!
              # You might want to disable InnoDB to shrink the mysqld process by circa 100MB.
              #skip-innodb
              #
              # * Security Features
              #
              # Read the manual, too, if you want chroot!
              # chroot = /var/lib/mysql/
              #
              # For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
              #
              # ssl-ca=/etc/mysql/cacert.pem
              # ssl-cert=/etc/mysql/server-cert.pem
              # ssl-key=/etc/mysql/server-key.pem

              [mysqldump]
              quick
              quote-names
              max_allowed_packet = 16M

              [mysql]
              #no-auto-rehash # faster start of mysql but no tab completition

              [isamchk]
              key_buffer = 16M

              #
              # * NDB Cluster
              #
              # See /usr/share/doc/mysql-server-*/README.Debian for more information.
              #
              # The following configuration is read by the ndbd storage daemons,
              # not from the ndb_mgmd management daemon.
              #
              # [MYSQL_CLUSTER]
              # ndb-connectstring=127.0.0.1


              Tout me parait ok...
              1. Modérateur
                Re,

                Pour moi aussi.
                Alors on va démarrer le daemon à la main pour voir, donc tu vas affiché ici ce que tu vois à l'écran.

                /etc/init.d/mysql stop
                /etc/init.d/mysql start
                1. l# /etc/init.d/mysql start
                  Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!

                  Et quedale de plus !!!! :@
                  1. Modérateur
                    Re,

                    Essaie

                    aptitude reinstall mysql-server-5.1
                    --
                    106485010510997108
                    1. # dpkg -l "mysql*"
                      Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
                      | État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements
                      |/ Err?=(aucune)/H=à garder/besoin Réinstallation/X=les deux (État,Err: majuscule=mauvais)
                      ||/ Nom Version Description
                      +++-=================================-=================================-==================================================================================
                      un mysql <néant> (aucune description n'est disponible)
                      un mysql-base <néant> (aucune description n'est disponible)
                      pn mysql-client <néant> (aucune description n'est disponible)
                      un mysql-client-4.1 <néant> (aucune description n'est disponible)
                      pn mysql-client-5.0 <néant> (aucune description n'est disponible)
                      pn mysql-client-5.1 <néant> (aucune description n'est disponible)
                      pi mysql-common 5.1.40-0.dotdeb.1 MySQL database common files (e.g. /etc/mysql/my.cnf)
                      un mysql-common-4.1 <néant> (aucune description n'est disponible)
                      un mysql-community-client-5.0 <néant> (aucune description n'est disponible)
                      un mysql-community-server-5.0 <néant> (aucune description n'est disponible)
                      un mysql-dev <néant> (aucune description n'est disponible)
                      un mysql-devel <néant> (aucune description n'est disponible)
                      un mysql-enterprise-client-5.0 <néant> (aucune description n'est disponible)
                      un mysql-enterprise-server-5.0 <néant> (aucune description n'est disponible)
                      un mysql-gpl-client <néant> (aucune description n'est disponible)
                      iU mysql-server 5.1.40-0.dotdeb.1 MySQL database server (metapackage depending on the latest version)
                      un mysql-server-4.1 <néant> (aucune description n'est disponible)
                      rc mysql-server-5.0 5.0.51a-24+lenny2 MySQL database server binaries
                      iF mysql-server-5.1 5.1.40-0.dotdeb.1 MySQL database server binaries


                      Je viens de récupérer la maintenance de cette bécanne et j'ai l'impression que c'est un bordel sans nom...
                      Au pire je suis prêt à tout reprendre à zéro j'ai fait une sauvegarde de mes bases.
                      1. # aptitude reinstall mysql-server-5.1
                        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
                        Les paquets suivants sont CASSÉS :
                        mysql-server-5.1
                        Les paquets partiellement installés suivants seront configurés :
                        mysql-server
                        0 paquets mis à jour, 0 nouvellement installés, 1 réinstallés, 0 à enlever et 0 non mis à jour.
                        Il est nécessaire de télécharger 0o d'archives. Après dépaquetage, 0o seront utilisés.
                        Les paquets suivants ont des dépendances non satisfaites :
                        mysql-server-5.1: Dépend: mysql-client-5.1 (>= 5.1.40-0.dotdeb.1) mais il n'est pas installable
                        Dépend: libmysqlclient16 (>= 5.1.21-1) mais il n'est pas installable
                        Les actions suivantes permettront de résoudre ces dépendances :

                        Installer les paquets suivants :
                        libdbd-mysql-perl [4.007-1 (stable, stable)]
                        libmysqlclient16 [5.1.40-0.dotdeb.1 (<NULL>)]
                        mysql-client-5.1 [5.1.40-0.dotdeb.1 (<NULL>)]

                        Le score est de 23

                        Accepter cette solution ? [Y/n/q/?] Y
                        Les paquets suivants seront RÉINSTALLÉS :
                        mysql-server-5.1
                        Les NOUVEAUX paquets suivants vont être installés :
                        libdbd-mysql-perl{a} libmysqlclient16{a} mysql-client-5.1{a}
                        Les paquets partiellement installés suivants seront configurés :
                        mysql-server
                        0 paquets mis à jour, 3 nouvellement installés, 1 réinstallés, 0 à enlever et 0 non mis à jour.
                        Il est nécessaire de télécharger 138ko/10,4Mo d'archives. Après dépaquetage, 24,8Mo seront utilisés.
                        Voulez-vous continuer ? [Y/n/?] Y
                        ATTENTION : des versions non certifiées des paquets suivants vont
                        être installées.

                        Des paquets non certifiés peuvent compromettre la sécurité de votre
                        système. Vous ne devriez les installer que si vous êtes certain
                        que c'est bien votre intention.

                        mysql-client-5.1 libmysqlclient16

                        Voulez-vous ignorer cet avertissement et continuer quand même ?
                        Pour continuer, entrer « Oui ». Pour interrompre l'installation, entrer « Non » : Oui
                        Écriture de l'information d'état étendu... Fait
                        Prendre : 1 ftp://ftp2.fr.debian.org stable/main libdbd-mysql-perl 4.007-1 [138kB]
                        138ko téléchargés en 15s (9023o/s)
                        Sélection du paquet libdbd-mysql-perl précédemment désélectionné.
                        (Lecture de la base de données... 80770 fichiers et répertoires déjà installés.)
                        Dépaquetage de libdbd-mysql-perl (à partir de .../libdbd-mysql-perl_4.007-1_i386.deb) ...
                        Sélection du paquet libmysqlclient16 précédemment désélectionné.
                        Dépaquetage de libmysqlclient16 (à partir de .../libmysqlclient16_5.1.40-0.dotdeb.1_i386.deb) ...
                        Sélection du paquet mysql-client-5.1 précédemment désélectionné.
                        Dépaquetage de mysql-client-5.1 (à partir de .../mysql-client-5.1_5.1.40-0.dotdeb.1_i386.deb) ...
                        Traitement des actions différées (« triggers ») pour « man-db »...
                        Paramétrage de libdbd-mysql-perl (4.007-1) ...
                        Paramétrage de libmysqlclient16 (5.1.40-0.dotdeb.1) ...
                        Paramétrage de mysql-client-5.1 (5.1.40-0.dotdeb.1) ...
                        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)
                        Échec de l'installation d'un paquet. Tentative de réparation :
                        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
                        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

                        État actuel : 0 paquet cassé [-1].
                        lra:/var/log/mysql# /etc/init.d/mysql start
                        Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!


                        Voila toujours pareil :s
                        1. faite mkdir /var/run/mysqld
                          puis chown mysql. mysqld
                          ensuite tenter de redémarrer
                          1. faite un netstat -planet
                            verifier que mysqld ne soit pas en ecoute si oui faire un kill -9 du pid
                            puis
                            tenter sa chown -R mysql:mysql /var/run/mysqld
                            puis rm /var/run/mysqld/mysqld.sock

                            puis tenter de restart
                            /etc/init.d/mysqld start
                            1. Aucune écoute sur le port 3306 donc étape suivante :

                              chown -R mysql:mysql /var/run/mysqld
                              lra:/var/run/mysqld# rm /var/run/mysqld/mysqld.sock
                              rm: ne peut enlever `/var/run/mysqld/mysqld.sock': Aucun fichier ou répertoire de ce type
                              lra:/var/run/mysqld# /etc/init.d/mysqld start
                              -bash: /etc/init.d/mysqld: Aucun fichier ou répertoire de ce type
                              lra:/var/run/mysqld# /etc/init.d/mysql start
                              shell-init: error retrieving current directory: getcwd: cannot access parent directories: Aucun fichier ou répertoire de ce type
                              chdir: error retrieving current directory: getcwd: cannot access parent directories: Aucun fichier ou répertoire de ce type
                              chdir: error retrieving current directory: getcwd: cannot access parent directories: Aucun fichier ou répertoire de ce type
                              Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed!
                              1. ma derniere suggestion
                                editer le my.cnf
                                et repmlacer
                                pid-file = /var/run/mysqld/mysqld.pid
                                socket = /var/run/mysqld/mysqld.sock

                                par

                                pid-file = /tmp/mysqld.pid
                                socket = /tmp/mysqld.sock

                                sauvegarder quitter et tenter de démarrer mysql
                                1. Trop tard j'ai pété un cable et décidé de tout virer pour reprendre à zero.

                                  Une question: comment vérifier qu'il ne reste rien de mysql sur ma bécane ?
                                  1. ah c'est couillon, 3 ans après je suis pas à pas cette aventure pour résoudre la mienne,
                                    et au pétage de cable,... je me sens abandonné, c'est vraiment trop injuste, snif.
                                  2. la même -_-
                                  3. Et un de plus !

                                    Mais en continuant à chercher, j'ai trouvé une méthode, sale, mais qui a fonctionné. Source : http://serverfault.com/questions/179570/how-to-remove-a-package-which-post-installation-and-pre-removal-script-fails

                                    Méthode : dans les scripts qui sont exécutés au début de la désinstallation, tu rajoutes un exit 0 au début du script. Chez moi, j'ai du le faire sur deux fichiers : /var/lib/dpkg/info/phpmyadmin.postinst et /var/lib/dpkg/info/phpmyadmin.prerm

                                    Avertissement : je ne garantis pas du tout que ce soit une bonne idée de faire ça !
                                2. lol

                                  je connais pas debian, sous RedHat avec la commande rpm -ql nom du package, il liste tous les paquets installer essaye de voire si il existe l'equivalent avec ton gestionnaire de package,

                                  sinon fais un find

                                  Bon courage
                                  1. Modérateur
                                    Salut,

                                    find / -name '*mysql*' -exec rm -vfR {} \;
                                    userdel -r mysql


                                    ensuite tu réinstalles
                                    1. Quand je souhaite virer mysql-common , il veut me virer aussi apache et php5...
                                      Pas moyen que je vire tout le reste... http fonctionne correctement.
                                      Je veux uniquement virer mysql...

                                      En tout cas merci du coup de main
                                      Si d'autres ont une idée ?Dmg que lami20j soit plus là il me sauve souvent la mise :)
                                      • 1
                                      • 2
                                      • 3
                                      • 4
                                      • 5