Nach dem Upgrade von OS X wurde meine Installation von MySQL beim Start nicht mehr geladen.
Diese Anleitung zu MySQL lautet:
"Die Installation des Startelements fügt der Systemkonfigurationsdatei / etc / hostconfig eine Variable MYSQLCOM = -YES- hinzu. Wenn Sie den automatischen Start von MySQL deaktivieren möchten, ändern Sie diese Variable in MYSQLCOM = -NO-."
Also habe ich diese Datei geöffnet und sie lautet:
# This file is going away
AFPSERVER=-NO-
AUTHSERVER=-NO-
TIMESYNC=-NO-
QTSSERVER=-NO-
MYSQLCOM=-YES-
Ich # This file is going away
gehe davon aus, dass OSX-Entwickler das hinzugefügt haben , bin mir aber nicht sicher.
Wenn dies der Fall ist, wie kann MySQL beim Start unter OSX Yosemite ordnungsgemäß gestartet werden?
mysql
macos
osx-yosemite
startup
osx-elcapitan
Justin
quelle
quelle
Antworten:
Dies ist, was es behoben hat:
Erstellen Sie zunächst eine neue Datei: /Library/LaunchDaemons/com.mysql.mysql.plist
<?xml version="1.0" encoding="UTF-8"?> <plist version="1.0"> <dict> <key>KeepAlive</key> <true /> <key>Label</key> <string>com.mysql.mysqld</string> <key>ProgramArguments</key> <array> <string>/usr/local/mysql/bin/mysqld_safe</string> <string>--user=mysql</string> </array> </dict> </plist>
Aktualisieren Sie dann die Berechtigungen und fügen Sie sie hinzu zu
launchctl
:sudo chown root:wheel /Library/LaunchDaemons/com.mysql.mysql.plist sudo chmod 644 /Library/LaunchDaemons/com.mysql.mysql.plist sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist
quelle
Startup items are a deprecated technology. Launching of daemons through this process may be removed or eliminated in a future release of OS X.
_mysql
. Sie können ausführen, umdscacheutil -q user | grep mysql
zu sehen, was der Benutzer auf Ihrem System sein soll.--user=my_user_name
, damit es funktioniert.Wenn Sie MySQL über Homebrew installiert haben, können Sie
launchd
MySQL beim Login starten, indem Sie:ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
quelle
Die akzeptierte Antwort funktionierte nicht, um meinen MySQL-Server automatisch zu starten (und tatsächlich stürzte mein Einstellungsbereich jedes Mal ab, wenn ich versuchte, ihn zu öffnen, während er aktiv war). Ich habe die Anweisungen aus dem MySQL 5.6-Handbuch befolgt und es startet endlich wieder automatisch! Erstellen Sie die Datei
/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist
mit folgendem Inhalt:<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.oracle.oss.mysql.mysqld</string> <key>ProcessType</key> <string>Interactive</string> <key>Disabled</key> <false/> <key>RunAtLoad</key> <true/> <key>KeepAlive</key> <true/> <key>SessionCreate</key> <true/> <key>LaunchOnlyOnce</key> <false/> <key>UserName</key> <string>_mysql</string> <key>GroupName</key> <string>_mysql</string> <key>ExitTimeOut</key> <integer>600</integer> <key>Program</key> <string>/usr/local/mysql/bin/mysqld</string> <key>ProgramArguments</key> <array> <string>/usr/local/mysql/bin/mysqld</string> <string>--user=_mysql</string> <string>--basedir=/usr/local/mysql</string> <string>--datadir=/usr/local/mysql/data</string> <string>--plugin-dir=/usr/local/mysql/lib/plugin</string> <string>--log-error=/usr/local/mysql/data/mysqld.local.err</string> <string>--pid-file=/usr/local/mysql/data/mysqld.local.pid</string> <string>--port=3306</string> </array> <key>WorkingDirectory</key> <string>/usr/local/mysql</string> </dict> </plist>
Führen Sie nach dem Erstellen der Datei die folgenden Befehle aus:
cd /Library/LaunchDaemons sudo chown root:wheel com.oracle.oss.mysql.mysqld.plist sudo chmod o-w com.oracle.oss.mysql.mysqld.plist sudo launchctl load -F com.oracle.oss.mysql.mysqld.plist
quelle
Mein Mac läuft auf El Capitan. MySQL über Brew installiert.
sagte mir, dass ich einige Probleme zu lösen hatte:
Gefunden
homebrew.mxcl.mysql.plist
Datei in/usr/local/Cellar/mysql/x.x.x/
Verzeichnis und kopiert es/Library/LaunchDaemons/
Legen Sie alle erforderlichen Berechtigungen fest:
sudo chown root:wheel /Library/LaunchDaemons/homebrew.mxcl.mysql.plist sudo chmod 644 /Library/LaunchDaemons/homebrew.mxcl.mysql.plist sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.mysql.plist
Verwendeter Teil von Ratschlägen, beschrieben von Justin
quelle
Es gibt ein Bash-Skript von MacMiniVault , das dies für Sie erledigt - und auch MySQL installiert. Es gibt auch einen Artikel der den Prozess beschreibt.
In diesem Artikel wird empfohlen, das Skript direkt in das Terminal zu leiten und auszuführen. Da dies jedoch schwerwiegende Auswirkungen auf die Sicherheit hat, ist es besser, das Skript herunterzuladen und zu überprüfen, bevor es lokal ausgeführt wird.
Hinweis: Diese Antwort wurde als Reaktion auf Kommentare zu den Sicherheitsauswirkungen der Befolgung der Anweisungen im oben genannten Artikel überarbeitet. Es ist im Allgemeinen eine schlechte Idee, ein Shell-Skript von einer unbekannten Quelle direkt an bash weiterzuleiten. Wenn Sie das Skript nicht verstehen oder dem Autor nicht vertrauen, verwenden Sie es nicht.
quelle