Est-il possible de mettre à jour la base de données MySQL dans MAMP pour MySQL 5.7?
Est-il possible de mettre à niveau le MAMP MySQL bibliothèque à 5,7?
Je suis actuellement en cours d'exécution 5.6 (que j'ai mis à niveau à l'aide de MAMP du script de mise à niveau
)
Ou aurais-je besoin pour installer MySQL en mode natif sur mon système? (macOS 10.11 El Capitan)
Si quelqu'un pouvait me diriger dans la bonne direction... Merci!
Vous devez vous connecter pour publier un commentaire.
De mise à niveau de MAMP pour Mysql 5.7
sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock
mysql_upgrade
de commande est utilisé pour mettre à niveau les bases de données existantes vers la nouvelle MySQL 5.7 choses. Si vous travaillez sur une installation propre, pas de réel besoin de l'utiliser. Mais si vous avez plusieurs bases de données installées et ont du mal à proprement exporter et réimporter les données dans la nouvelle configuration, vous devriez utilisermysql_upgrade
.Mise à JOUR: La Version 5.0 de MAMP comprend maintenant MySQL 5.7 déjà dans le programme d'installation! Juste la mise à niveau de base de votre installation de MAMP et vous êtes prêt à aller avec MySQL au lieu d'avoir à sauter à travers les cerceaux de ce genre.
Laissant réponse ci-dessous comme référence pour quiconque en a besoin.
Alors que j'ai lu les réponses et les commentaires ici—ainsi que d'autres liés tutoriels sur GitHub et autres—il y avait quelques choses qui me confond, dans certains tutoriels. Comme les instructions pour la configuration de
chmod -O o+rw
et même un commentaire à propos de la création d'un lien symbolique vers/tmp/mysql.sock
; pourquoi le faire quand MAMP hors de la boîte doit être autonome et ne pas exiger de tels changements? Donc, voici les instructions que j'ai mis en place repose sur mon expérience de la prise en MySQL mis à niveau pour MAMP 4.4.1 sur mac OS 10.3.4 (High Sierra).Tout d'abord, obtenir une copie de la macOS fichiers binaires de MySQL 5.7; note qu'à compter du moi de poster cette réponse MySQL 5.7.22 est la version actuelle de régler cette URL, quelle que soit la nouvelle version, vous pouvez utiliser:
Décompresser comme ceci:
Copiez le
bin/
etshare/
des trucs dans MAMP via Rsync comme ceci:De copier votre répertoire de base de données MySQL 5.6 comme cela; il suffit de noter que la
mysql56
répertoire est temporairement nécessaire lors de la mise à jour, mais peut être mis au rebut après le reste de l'MySQL 5.7 mise à jour est faite:Une fois que c'est fait, se débarrasser de la base de données MySQL spécifiques binaires comme ça, pour la mise à niveau:
Et au lieu de changer les autorisations de
o+rw
il suffit de changer le propriétaire du répertoire DB à votre utilisateur courant; cela correspond à combien de MAMP installe ce genre de choses:Maintenant, exécutez la commande Sed pour régler le
mysqld_safe
script pour pointer vers le nouveau MySQL 5.7 chemin; vous pourriez probablement il suffit d'ouvrir ce fichier dans un éditeur de texte et remplacez toutes les instances demysql56
àmysql57
ainsi:Enfin, si vous utilisez MAMP et de définir un
my.cnf
fichier, qui devrait être mis en/Applications/MAMP/conf/my.cnf
... Mais en faisant cette mise à jour, le chemin de recherche par défaut de lamy.cnf
dans MAMP sera/usr/local/mysql/etc/
à la place de l'/Applications/MAMP/conf/
puisque c'est là que le nouveau binaire s'attend à ce qu'il soit. Il est clair que nous n'allons pas à recompiler MySQL à ce point, de sorte que le plus propre/chose la plus simple à faire pour votre installation de MAMP vraiment portables, est de nouveau à modifier cette ligne dans lestartMysql.sh
de:À cela; note que nous ne l'ajout de la
--defaults-extra-file=
option avant de tous les otgers:Avec l'ensemble de la ligne de commande de travaux, le lancement MAMP via l'application, démarrez la base de données MySQL et Apache serveurs et ensuite retomber dans la commande exécuter cette commande pour mettre à niveau les bases de données:
Et, enfin, exécutez cette commande pour obtenir le
mysql.sock
correctement configuré pour MAMP chemin plutôt que/tmp/mysql.sock
chemin:Lorsque cela est fait, et vous avez confirmé MySQL fonctionne comme prévu, il suffit de lancer la vieille MySQL 5.6 répertoire comme ceci:
Avec tous qui fait, vous devriez être tous ensemble pour proposer d'utiliser MySQL 5.7 sous MAMP 4.4.1.
~/Applications/MAMP/db/
a été nommémysql
et j'ai maintenantmysql57
J'ai rencontré des problèmes de mise à niveau vers MySQL 5.7.22 décrit dans l'excellent entraînement de JakeGould.
La procédure de mise à jour a bien fonctionné sur El Capitan avec MySQL 5.7.18.
J'ai écrit une mise à jour du script bash pour cette procédure: