J'essaie de trouver un moyen de démarrer et d'arrêter Apache et mysql de MAMP PRO à l'aide de la ligne de commande . Jusqu'ici, toutes les recherches que j'ai effectuées ne m'ont permis que de démarrer MAMP PRO.
Merci.
Enregistrez le script et donnez les droits exécutables tels que: chmod +x start.sh
Puis utilisez-le comme ./start.sh Start
ou ./start.sh Stop
ou ./start.sh Restart
À partir d’au moins MAMP 3.0.6, les éléments suivants fonctionnent pour les versions Free et Pro:
Ouvrez MAMP Pro ou Free, selon celui que vous utilisez:
Pro: open /Applications/MAMP\ PRO/MAMP\ PRO.app/
Gratuit: open /Applications/MAMP/MAMP.app/
Ensuite, cd dans MAMP/bin:
cd /Applications/MAMP/bin
Pour démarrer Apache et MySQL:
./start.sh
Pour arrêter Apache et MySQL:
./stop.sh
Notez que vous devrez peut-être utiliser les commandes ci-dessus.
Après de nombreux essais et erreurs:
Notez que mes ports sont définis sur les valeurs par défaut respectives de l’application (Apache: 80, MySQL: 3306), et en tant que telles, ces commandes reflètent cela, ET vous devez utiliser Sudo
avec Apache (que vous utiliserez également dans MAMP si vous utilisez port 80).
Sudo/Applications/MAMP/Bibliothèque/bin/httpd -f "/ Bibliothèque/Application Support/appsolute/MAMP PRO/conf/httpd.conf" -k début
Sudo/Applications/MAMP/Bibliothèque/bin/httpd -f "/ Bibliothèque/Application Support/appsolute/MAMP PRO/conf/httpd.conf" -k stop
Sudo/Applications/MAMP/Bibliothèque/bin/httpd -f "/ Bibliothèque/Application Support/appsolute/MAMP PRO/conf/httpd.conf" -k restart
Pour démarrer MySQL:
sh -c '/ Applications/MAMP/Bibliothèque/bin/mysqld_safe --defaults-file =/Applications/MAMP/tmp/mysql/my.cnf --port = 3306 --socket =/Applications/MAMP/tmp/mysql/mysql.sock --user = alex --pid-file =/Applications/MAMP/tmp/mysql/mysql.pid --log-error =/Applications/MAMP/logs/mysql_error_log.err --tmpdir =/Applications/MAMP/tmp/mysql/tmpdir --datadir =/Bibliothèque/Application\Support/appsolute/MAMP\PRO/db/mysql & '
(pour une raison quelconque, vous devez appuyer sur entrez à nouveau pour regagner votre invite)
Pour arrêter MySQL:
sh -c '/ Applications/MAMP/Bibliothèque/bin/mysqladmin -u root -proot --socket =/Applications/MAMP/tmp/mysql/mysql.sock shutdown'
De plus, les indicateurs de l'interface graphique de MAMP PRO.app indiquent le statut correct de ces applications en temps réel, pour que vous puissiez continuer à vous fier à cela.
J'ai MAMP PRO v2.0.3.
(devrait également fonctionner pour MAMP Pro).
Regardez à l'intérieur du dossier:
/Applications/MAMP/Library/bin
Vous verrez les scripts utilisés pour démarrer et arrêter Apache & MySQL.
Regardez à l'intérieur de l'un des scripts:
start.sh or stop.sh or startApache.sh etc
Vous verrez qu'ils utilisent le programme:
apachectl
Vous pouvez utiliser la commande restart avec apachectl. Donc, configurez simplement un alias dans votre fichier ~/.bash_rc :
alias rap='Sudo /Applications/MAMP/Library/bin/apachectl restart'
rap est l'acronyme que j'ai donné pour 'Restart Apache'. Presto! Une étape de la ligne de commande sans avoir à ouvrir l'application MAMP. Utilisez la même logique si vous souhaitez configurer cela pour MySQL.
Pour le lancer sur MAMP Pro version 4, c’est
/Applications/MAMP\ PRO/MAMP\ PRO.app/Contents/MacOS/MAMP\ PRO cmd startServers
Pour l'arrêter c'est
/Applications/MAMP\ PRO/MAMP\ PRO.app/Contents/MacOS/MAMP\ PRO cmd stopServers
Malheureusement
Basé sur les conseils donnés ici
" https://deliciousbrains.com/automating-local-wordpress-site-setup-scripts-part-3-automating-rest "
Et trouvé puis découvert - il est caché dans la documentation ici.
https://documentation.mamp.info/en/MAMP-PRO-Mac/How-Tos/General/CreateHostDatabaseCommandLine
Un moyen simple serait d’arrêter et de redémarrer l’application, MAMP PRO va démarrer et arrêter Apache et MySQL.
démarrer MAMP PRO
open -a MAMP\ PRO
arrêter MAMP PRO
osascript -e 'quit app "MAMP PRO"'
Si vous utilisez MAMP PRO, il existe un moyen plus simple d’arrêter MySQL.
MAMP PRO crée un script Shell dans votre dossier Library. Si vous avez modifié le mot de passe de l'utilisateur root (ce que vous devriez faire), le mot de passe mis à jour sera également reflété dans le script. Le fichier peut être trouvé à:
~/Bibliothèque/Application Support/appsolute/MAMP PRO/stopMysql.sh
Pour taper cela sur la ligne de commande, vous devez vous échapper des espaces en ajoutant une barre oblique inverse devant eux, comme pour la commande ci-dessous.
~/Library/Application\ Support/appsolute/MAMP\ PRO/stopMysql.sh
L’autre chose que j’ai trouvée sur mon système est que le fichier n’avait pas le bit d’exécution défini. J'ai triché et utilisé Path Finder pour définir le fichier comme exécutable, mais vous pouvez facilement trouver des informations sur la procédure à suivre pour le faire via la ligne de commande avec chmod.
Malheureusement, je ne trouve pas de script de démarrage approprié créé par MAMP PRO. Je voulais trouver quelque chose de simple à utiliser pour la commande de démarrage dans MySQLWorkbench, mais pour le moment je l'ai laissé vide, car le script MAMP par défaut ne fonctionne pas. Je peux créer un script basé sur les commandes utiles publiées par Astockwell en réponse à cette question.
J'ai trouvé /Applications/MAMP PRO/MAMP PRO.app/Contents/Resources/MAMP.startup
, qui fonctionne pour moi dans MAMP PRO, avec des ports personnalisés.
Il suffit de courir
/Applications/MAMP PRO/MAMP PRO.app/Contents/Resources/MAMP.startup start
ou
/Applications/MAMP PRO/MAMP PRO.app/Contents/Resources/MAMP.startup stop
etc.