Ok, j'ai cherché partout et j'ai passé pas mal de temps à installer, désinstaller, essayer diverses options mais sans succès.
Je suis sous Mac OS X Lion (10.7.3) et j'essaie de configurer un Python, MySQL.
J'ai installé avec succès Python et MySQL via HomeBrew. Python fonctionne très bien.
Après l’installation de MySQL, j’ai suivi les 2 premières étapes - unset et le mysql_install_db
commandes.
Maintenant, quand j'essaye de démarrer mysql "mysql.server start", j'obtiens l'erreur suivante
ERROR! The server quit without updating PID file (/usr/local/var/mysql/Brajeshwar.local.pid).
Brajeshwar
est mon nom d'utilisateur sur ma machine. EDIT 2012/09/18: Comme signalé par Kane , assurez-vous que la base de données mysql
est correctement mettre en place avant de faire autre chose. Voir " erreur PID sur mysql.server start? " pour plus d'informations.
Réponse originale conservée dans l'intérêt de l'histoire: Il est fort probable que est un problème d'autorisations. Vérifier /usr/local/var/mysql/*.err
. Le mien a dit:
120314 16:30:14 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 ./ibdata1
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
120314 16:30:14 mysqld_safe mysqld from pid file /usr/local/var/mysql/janmoesen.local.pid ended
Je devais aussi faire ceci:
Sudo chown _mysql /usr/local/var/mysql/*
J'ai constaté qu'il s'agissait d'un problème d'autorisations avec le dossier mysql
.
chmod -R 777 /usr/local/var/mysql/
résolu pour moi.
Je me suis retrouvé avec la réinstallation complète de MySQL, et cela a finalement fonctionné.
WARNING Ceci supprimera toutes vos bases de données. Veillez donc à enregistrer les sauvegardes en premier.
brew remove mysql
brew cleanup
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Sudo rm -rf /usr/local/var/mysql
brew install mysql
mysqld --initialize --explicit_defaults_for_timestamp
mysql.server start # no Sudo!
J'ai eu ce problème sur mac 10.10.5 Yosemite
Ce que j'ai fait pour résoudre ce problème
cd /usr/local/var/mysql
Sudo rm *.err && Sudo rm *.pid
Sudo reboot
Sudo mysql.server start
Novembre 2014: Si vous obtenez cette erreur sur MySQL 5.6.x sur Mac OS X, Mavericks ou Yosemite et souhaitez utiliser MySQL avec PHP localement (/tmp/mysql.sock est à l'endroit où = PHP PDO s'attend à trouver le fichier chaussette), voici ce qui me l'a corrigé:
1) Décommentez les lignes par défaut du fichier de configuration homebrew et éditez-les comme suit
$ Sudo vi /usr/local/Cellar/mysql/5.6.21/my.cnf
...
basedir = /usr/local/Cellar/mysql/5.6.21
datadir = /usr/local/var/mysql
port = 3306
server_id = <UNIQUE_NUMBER_HERE_OR_LEAVE_COMMENTED_OUT>
socket = /tmp/mysql.sock
pid-file = /usr/local/var/mysql/[BOXNAME].local.pid
....
BOXNAME est ce que vous avez dans vos Préférences Système -> Réseau comme identifiant unique pour votre ordinateur sur le réseau.
2) Définissez les autorisations sur tous les fichiers de mysql datadir. Ils appartenaient tous à [mon_nom_utilisateur]. MySQL est très pointilleux à ce sujet et refuse de créer le fichier pid sauf s’il (l’utilisateur _mysql) est propriétaire du répertoire.
$ Sudo chown -R _mysql:mysql /usr/local/var/mysql
3) Démarrez MySQL en utilisant le script helper/wrapper bash:
$ Sudo mysql.server start
Starting MySQL
. SUCCESS!
J'espère que ça t'as aidé. Si ce qui précède ne fonctionne pas pour vous, essayez d’exécuter manuellement le fichier binaire mysqld_safe dans le répertoire Cellar/mysql/VERSION_/bin/et vérifiez les paramètres (s’il est exécuté).
Sudo /usr/local/Cellar/mysql/5.6.12/bin/mysqld_safe &
Si cela fonctionne, vous pouvez
ps aux | grep mysql
et voir quelque chose comme
[username] 6881 0.0 2.7 3081392 454836 ?? S 8:52AM 0:00.54 /usr/local/Cellar/mysql/5.6.21/bin/mysqld --basedir=/usr/local/Cellar/mysql/5.6.21 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql/5.6.21/lib/plugin --verbose --log-error=/usr/local/var/mysql/BOXNAME.local.err --pid-file=/usr/local/var/mysql/BOXNAME.local.pid
Je ne suis pas sûr de savoir pourquoi cela a fonctionné pour moi, mais cela vous montre d'où proviennent les options du fichier de configuration my.cnf. Vous pouvez également utiliser les options de la ligne de commande pour essayer de résoudre le problème lors du démarrage manuel de mysqld.
Si vous exécutez gérer le serveur MySQL avec mysqld_safe, vous devrez peut-être le faire pour l'éteindre avant d'utiliser l'assistant mysql.server bash. Résistez à l'envie de tuer -9 [PID] car vous pouvez corrompre vos données.
mysqladmin -uroot shutdown
Bonne chance!
J'ai eu le même problème sur OS X El Capitan, voici la séquence de commandes du terminal qui l'a corrigé.
Supprimer les fichiers d'erreur (vous devrez changer le chemin en fonction de votre configuration)
Sudo rm /usr/local/mysql/data/*.err
Trouvez l'info du processus mysql en cours d'exécution et tuez-le:
ps -A | grep -m1 mysql | awk '{print $1}' | Sudo xargs kill -9
Maintenant redémarrez MySQL:
/usr/local/mysql/support-files/mysql.server start
Cela a fonctionné pour moi:
Sudo chmod -R 777 /usr/local/var/mysql/
Sudo /usr/local/mysql/support-files/mysql.server start
Cela a fonctionné pour moi le 10.12.2:
$ rm /usr/local/var/mysql/*.err
ensuite
$ brew services restart mysql
Si je me souviens bien, il s'agit d'un problème d'autorisations. Essayez de "toucher" et "chmod" le fichier pid ou le dossier dans lequel le fichier est conservé.
Mon problème était que j'ai démarré le serveur en tant que Sudo une fois et que j'ai ensuite essayé de redémarrer en tant qu'utilisateur local.
Ici, mysql n'a pas pu écrire dans le fichier '.err' appartenant à root. J'ai dû supprimer ce fichier et redémarrer le serveur:
Sudo rm /usr/local/var/mysql/*.err
mysql.server start
J'ai un problème similaire avec MySQL sur un Mac (Mac Os X n'a pas pu démarrer le serveur MySQL. Motif: 255 et également "ERREUR! Le serveur s'est arrêté sans mettre à jour le fichier PID"). Après un long processus d’essai et d’erreur, enfin, afin de restaurer les autorisations de fichiers, je viens de le faire:
lance le Disk Utilities.app
choisissez mon lecteur sur le panneau de gauche
cliquez sur le bouton "Réparer les autorisations du disque".
Cela a fait le tour pour moi. En espérant que cela puisse aider quelqu'un d'autre.
Recherchez le fichier usr/local/var/mysql/votre_nom_ordinateur.local.err et comprenez plus d'informations sur l'erreur
Emplacement: /usr/local/var/mysql/votre_nom_ordinateur.local.err
C'est probablement un problème d'autorisations
ps -ef | grep mysql
tuer -9 PID
où PID est la deuxième colonne, valeur 2. vérifier la propriété de mysql
ls -laF/usr/local/var/mysql /
if it is owned by root, change it mysql or your user name
Sudo chown -R mysql/usr/local/var/mysql /
Essayez ceci (OSX)
Étape 1: ps -aux | grep mysql
Puis tuez le numéro PID à 4 chiffres
Étape 2: kill 1965
Étape 3: mysql.server start
Ou ayant du mal à localiser ces numéros de PID, essayez ceci ci-dessous
Étape 1 à nouveau: ps -aux | grep mysql
Étape 2 à nouveau: killall
Étape 3 encore: mysql.server start
Pour moi cela a fonctionné avec:
unset TMPDIR
mysql_install_db --user=`whoami` --basedir="$(brew --prefix mariadb)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
Ce qui a fonctionné pour moi a été:
Sudo chmod -R 777 data
cd support-files/
Sudo ./mysql.server start
Après cela, le serveur a commencé à fonctionner.
Mais le problème avec cette méthode est que je dois répéter cela chaque fois que je veux démarrer le mysql maintenant. Je ne sais pas pourquoi il a commencé à se comporter comme ça soudainement.
Si vous avez mis à niveau votre installation mysql vers la version 8.x, vérifiez si votre version précédente est prise en charge pour mise à nivea .
Sinon, mysql ne fonctionnera pas! Désinstallez votre mysql ainsi que tous les fichiers de configuration dans /usr/local/var/mysql
_ (supprime tout le dossier). Réinstallez MySQL.
REMARQUE: la réinstallation peut entraîner une perte de données.
Ma solution sur OSX El Capitan était la suivante:
Sudo chmod ugo+w /tmp
Il a été brisé soudainement.
L'erreur était:
ERROR! The server quit without updating PID file
et le journal a montré:
Can't start server : Bind on unix socket: Permission denied
Il peut également être utile de noter que sous OSX, il n’existe pas de my.cnf
fichier par défaut et non requis par défaut, ce que je ne connaissais pas. Bonne chance!
Aucune des réponses n'a fonctionné pour moi. Cependant, j'ai simplement fait Sudo mysql.server start
et ça a bien fonctionné.
En outre, pour moi, il n'a PAS montré le problème des autorisations dans le fichier * .err.
C'est un problème d'autorisation de fichier. Vérifiez les autorisations du disque et réparez.
Osx => Cmd + Space => Disk Utilty => Vérifier les autorisations du disque.
Vérification terminée après les autorisations de réparation du disque. La commande de démarrage de mysql.server est utilisée avec succès.
J'ai eu ce problème sous Linux, mais la cause est pertinente pour toute installation de mysql. Dans mon cas, le serveur se bloquait avant la fin du démarrage et la mise à jour du fichier pid. Les messages d'erreur ont été vus lors du démarrage de mysqld directement au lieu de "service mysql start".
Dans mon cas, la cause était la partition où les fichiers journaux se trouvaient saturés. La suppression des fichiers journaux a permis à mysql de redémarrer. Pour tester ce problème, accédez à l'emplacement de vos journaux d'activité mysql, et exécutez df .
.
toutes les solutions ci-dessus ne fonctionnent pas pour moi. mais ils me donnent des indices pour corriger cette erreur.
mysql.server start ---- error Le serveur s'est arrêté sans mettre à jour le fichier PID
J'ai installé [email protected] sur mon macbook mojave avec homebrew
brasser installer [email protected]
journal des erreurs mysql situé dans /usr/local/var/mysql/IU.lan.err, il contient une ligne: impossible d'ouvrir et de verrouiller les tables de privilèges: la table 'mysql.user' n'existe pas
après avoir essayé de nombreuses publications dans le moteur de recherche goole, je me suis tourné vers baidu https://blog.csdn.net/xhool/article/details/52398042 inspiré par cette publication, j'ai trouvé la solution:
rm/usr/local/var/mysql/*
mysqld --initialize
un mot de passe aléatoire pour l'utilisateur root sera affiché dans bash. mais la commande mysql -uroot -p [theRandomPassword] ne peut pas fonctionner. Je dois donc réinitialiser le mot de passe. créer un fichier init avec un contenu comme celui-ci
SET PASSWORD FOR 'root' @ 'localhost' = PASSWORD ('MyNewPass');
placez-le dans un répertoire facile à trouver, tel que Desktop
mysqld --init-file = [VotreFichierInit] &
de nombreux journaux imprimés sur votre écran.
mysql -uroot -pMyNewPass
profitez de votre version haute mysql!
J'ai eu le même problème. Mais les commandes suivantes m'ont sauvé.
cd /usr/local/Cellar
Sudo chown _mysql mysql
J'ai eu le même problème:
Mais la situation était, chaque fois que j'essaye d'entrer:
/usr/local/mysql/support-files/mysql.server start
un fichier nommé localhost.pid
est créé à la place de iMax0.local.pid
qui a été déclaré dans l'erreur:
ERROR! The server quit without updating PID file (/usr/local/mysql/data/iMax0.local.pid).
La solution qui me convenait consistait à copier localhost.pid
et le renommer en iMax0.local.pid
.
Sudo chmod -R 777 /usr/local/var/mysql/
travaille pour moi.
$ Sudo mysql.server restart
Ça marche pour moi.