Erreur de démarrage du serveur MySql 'Le serveur a quitté sans mettre à jour le fichier PID &#39 ;

Sur Snow Leopard, le démarrage de MySQL donne l'erreur suivante :

Le serveur a quitté sans mettre à jour le fichier PID

my.cnf

[mysqld]
port            = 3306

socket          = /tmp/mysql.sock

skip-external-locking

key_buffer_size = 16K

pid-file=/var/run/mysqld/mysqld.pid

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

Essayez de trouver votre fichier journal avec le suffixe &quot ;.err&quot ;, il devrait y avoir plus d'informations. Il pourrait être dans :

&quot ; /usr/local/var/mysql/votre_nom_d'ordinateur.local.err

Il s'agit probablement d'un problème de permissions.

  1. Vérifiez si une instance de mysql est en cours d'exécution.

ps -ef | grep mysql

si oui, vous devez l'arrêter, ou tuer le processus

kill -9 PID

PID est le numéro affiché à côté du nom d'utilisateur sur la sortie de la commande précédente.

  1. Vérifiez la propriété de /usr/local/var/mysql/.

ls -laF /usr/local/var/mysql/

S'il appartient à root, vous devez le changer en mysql ou votre_utilisateur.

sudo chown -R mysql /usr/local/var/mysql/

Commentaires (18)

Que dit le journal des erreurs ? J'ai eu cette erreur, et il s'est avéré qu'il s'agissait d'un vieux paramètre invalide dans le my.cnf, ce que le journal des erreurs mysql a indiqué. Si ce n'est pas un mauvais paramètre de configuration, le journal d'erreurs devrait au moins vous indiquer la bonne direction.

Je suppose que l'OP a résolu le problème à ce stade... mais j'espère que cela oriente les autres qui voient cette erreur dans la bonne direction.

Commentaires (0)

J'espère que cela fonctionnera pour vous.

Après avoir vérifié le journal des erreurs, j'ai trouvé ceci :

120309 17:42:49 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
120309 17:42:50 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/mysql/data/ is case insensitive
120309 17:42:50 [Warning] You need to use --log-bin to make --binlog-format work.
120309 17:42:50 [Note] Plugin 'FEDERATED' is disabled.
120309 17:42:50 InnoDB: The InnoDB memory heap is disabled
120309 17:42:50 InnoDB: Mutexes and rw_locks use GCC atomic builtins
120309 17:42:50 InnoDB: Compressed tables use zlib 1.2.3
120309 17:42:50 InnoDB: Initializing buffer pool, size = 16.0M
120309 17:42:50 InnoDB: Completed initialization of buffer pool
120309 17:42:50  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /usr/local/mysql/data/ib_logfile0
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
120309 17:42:50 mysqld_safe mysqld from pid file /usr/local/mysql/data/lu1s.local.pid ended

Et pour le résoudre, j'ai donné les droits de propriété sur tout le dossier mysql :

cd /usr/local
sudo chown mysql mysql
sudo chown mysql mysql-5.5.21-osx10.6-x86_64
sudo chown _mysql mysql
sudo chown _mysql mysql-5.5.21-osx10.6-x86_64

Ensuite (vous pouvez aussi le faire en ligne de commande), j'ai appliqué les permissions (une fois que j'ai donné les droits de propriété aux utilisateurs _mysql et mysql) à tous les dossiers joints à partir du menu "get info&quot ; du dossier /usr/local/mysql-5.5.21-osx10.6-x86_64 . Vous n'avez pas besoin de l'ajouter à l'alias puisqu'il ne s'agit que d'un alias.

Le nom du dossier dépend de la version d'installation de mysql que vous avez.

Commentaires (0)