Mac OSインストールでMySQLをどのように停止しますか?


187

MySQLをMacPorts経由でインストールしました。サーバーを停止するために必要なコマンドは何ですか(MySQLが停止しているときのアプリケーションの動作をテストする必要があります)?

回答:


376

MySQLを公​​式のバイナリインストーラでインストールしたか、MacPortsを使用したか、またはHomebrewを使用したかによって、異なるケースがあります。

自作

brew services start mysql
brew services stop mysql
brew services restart mysql

MacPorts

sudo port load mysql57-server
sudo port unload mysql57-server

注:これは再起動後も持続します。

バイナリーインストーラー

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop
sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

おかげで-停止コマンドと開始コマンドはありましたが、再起動を試みることについては知りませんでした。stopコマンドを使用した後は、MySQLシステム設定パネルから開始する場合と同様に、startは何もしません。
ロスヘンダーソン

4
mysqlのバージョン番号がplistファイルに追加されたため、私の場合は少し異なりました。sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5.plist sudo launchctl load -w
/Library/LaunchDaemons/org.macports.mysql5.plist

1
そして私にとって、/ opt / local / etc / LaunchDaemons / org.macports.mysql5 / org.macports.mysql5.plist
Dmitry Minkovsky

10
自作の場合:launchctl (un)load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Kostas 2013年

2
あなたが持っている場合は自作サービスがインストールされ、あなたが使用することができますbrew services stop mysqlbrew services start mysql。(またrestartrun現在のセッションでのみ開始されます。)
medmunds 2017年

138

MySQLのインストールにhomebrewを使用した場合、以下のコマンドを使用してMySQLを起動、停止、または再起動します。

醸造開始

/usr/local/bin/mysql.server start

醸造再開

/usr/local/bin/mysql.server restart

醸造停止

/usr/local/bin/mysql.server stop

4
私にとって、homebrewによるインストールディレクトリは/usr/local/Cellar/mysql@5.7/5.7.23/bin/
Moobie '29

68

いつでも "mysqladmin shutdown"コマンドを使用できます


1
上記のコマンドは私にとってはうまくいきませんでした。これはしました。私のセットアップの違いが何かわからないが、ありがとう。
マルコ

2
動作する可能性はありますが、MacPortsを使用して実行している場合、launchctlはmysqlが停止したことを認識せず、それを起動(ロード)しようとすると文句を言います。したがって、launchctlを使用することをお勧めします。
lambshaanxy 2011

1
また、これはサーバーをシャットダウンするために機能しますが、再起動するときにサーバーを元に戻すのに役立つことはありません。
2011

3
プロンプトが表示されたら、必ず-pを追加し、mysql rootパスワードを入力してください。MacPortsでmysqlがインストールされている私のセットアップで、mysqlが再起動され、私のアクションのターゲットであった構成が再ロードされました。
Jesper Grann Laursen、2013年

sudo /opt/local/lib/mysql56/bin/mysqladmin shutdownmysqlがMacPortsからのものである場合
Alain Tiemblo 2014年

51

使用しているhomebrew場合は使用できます

brew services restart mysql
brew services start mysql
brew services stop mysql

利用可能なサービスのリスト

brew services list

2
これは、launchctlと直接やり取りした後でも機能しました。ありがとうございました!
Lyndsy Simon

18

sudo /usr/local/mysql/support-files/mysql.server stop


2
+1これは私にとってうまくいった唯一のものでした---私はMysqlのDMGインストーラーを使用しただけです。ありがとう
Dolan Antenucci 2013

15

sudo /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper stop

ここでstartとrestartを使用することもできます。/Library/LaunchDaemons/org.macports.mysql.plistの内容を調べて、これを見つけました。


1
これは、あなたがそれを行うことになっている方法です.. MacPortsの場合..このlaunchctl方法は機能せず、実際にはPID / DBの起動の噛み付きとうめき声で問題を引き起こす可能性があります。
Alex Grey


10

試す

sudo <path to mysql>/support-files/mysql.server start
sudo <path to mysql>/support-files/mysql.server stop

それ以外の場合:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop<br>
sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

ただし、.plistが次のようにロードされている場合、2番目のオプション(OS X 10.6、MySQL 5.1.50)のみが機能することがわかりました。

sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist

PS:.plistをアンロードしてMAMP -MySQLの無関係なインストールを取得して正しく開始/停止する必要があることもわかりました。これを実行すると、MAMP-MySQLが正常に起動します。

sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysqld.plist


7

私のMac OSXヨセミテ10.10で。このコマンドは機能しました:

sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist
sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysql.plist

mysqlファイルは/ Library / LaunchDaemons /フォルダーにあり、実行できます


2
これは私のために働いた唯一の方法です。その他の方法の場合、mysqldプロセスは停止した直後に再起動します。
Rockallite、2016年

これも私にとってうまくいった唯一の方法です。私は自作からMySQL提供のDMGに切り替えましたが、アンインストールしたにもかかわらず、醸造バージョンはまだ実行されていたと思います。
Sam Critchley 2017年

5

使用する:

sudo mysqladmin shutdown --user=*user* --password=*password*

おそらくsudoを使わなくても済むでしょう。たとえば、ユーザーはroot(つまり、MySQL rootユーザー)になることができます。


4

まあ、他のすべてが失敗した場合は、冷酷なアプローチを取り、MySQLを手動で実行しているプロセスを強制終了できます。

あれは、

ps -Af

すべてのプロセスをリストするkill <pid><pid>は、「」を実行します。ここで、MySQLデーモン(mysqld)のプロセスIDです。


そうです。これはスクリプト作成に最適で普遍的なものです。データ破損の可能性があると思いますか?または他の問題?
user425720

1
これにより、データが破損する可能性があります。
Dan Sandland

しかし、最後の努力として、これで十分です。
ダンサンドランド

4

最新のOSX(10.8)およびmysql 5.6。ファイルはLaunch Daemonsにあり、com.oracle.oss.mysql.mysqld.plistです。通常はリストの一番下にある[システムオプション]の下にオプションが表示されます。システム設定に移動し、Mysqlをクリックして、オプションボックスからオフにします。 https://dev.mysql.com/doc/refman/5.6/en/osx-installation-launchd.html


2

私にとっては「mysql5」で動作しています

sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5.plist
sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

2

私の場合、PIDを使用してプロセスを強制終了するとすぐに再起動し続けました。また、brew stophomebrewを使用せずにインストールしたため、コマンドが機能しませんでした。次に、Macシステム設定に移動し、そこにMySQLをインストールしました。それを開いてMySQLサーバーを停止するだけで完了です。このスクリーンショットでは、システム環境設定の下部にMySQLが表示されています。ここに画像の説明を入力してください


1

OSX Snow Leopardの場合

launchctl unload /System/Library/LaunchDaemons/org.mysql.mysqld.plist

0

mysql5とmysql55をmacportsにインストールしました。私にとって、ここで言及したファイルは次の場所にあります。

(mysql55-server)/opt/local/etc/LaunchDaemons/org.macports.mysql55-server/org.macports.mysql55-server.plist

(mysql5)/opt/local/etc/LaunchDaemons/org.macports.mysql5/org.macports.mysql5.plist

したがって、これらの作業のために次のように停止します。

mysql55-server:

sudo launchctl unload -w /opt/local/etc/LaunchDaemons/org.macports.mysql55-server/org.macports.mysql55-server.plist

mysql5:

sudo launchctl unload -w /opt/local/etc/LaunchDaemons/org.macports.mysql5/org.macports.mysql5.plist 

あなたはサービスがまだ実行されているかどうかを確認することができます:

ps ax | grep mysql

さらに、私の場合はここでログファイルを確認できます:

mysql55-server

sudo tail -n 100 /opt/local/var/db/mysql55/<MyName>-MacBook-Pro.local.err
...
130213 08:56:41 mysqld_safe mysqld from pid file /opt/local/var/db/mysql55/<MyName>-MacBook-Pro.local.pid ended

mysql5:

sudo tail -n 100 /opt/local/var/db/mysql5/<MyName>-MacBook-Pro.local.err
...
130213 09:23:57  mysqld ended

0

MySQL 5パッケージをMacPortsとともにインストールした場合:

sudo launchctl  unload -w /Library/LaunchDaemons/org.macports.mysql.plist 

または

sudo launchctl  unload -w /Library/LaunchDaemons/org.macports.mysql5-devel.plist 

mysql5-develパッケージをインストールした場合。


1
これにより、再起動時に起動が停止します。これは、ポスターが要求していたものではありません。
Matthew Schinckel、2008

0

mysql> variable_nameが '%dir%'のような変数を表示します。

| datadir | / opt / local / var / db / mysql5 / |


0

それらすべてのコマンドラインを試した後、それはうまくいきません。私は次のことをしなければなりません:

mv /usr/local/Cellar/mysql/5.7.16/bin/mysqld /usr/local/Cellar/mysql/5.7.16/bin/mysqld.bak
mysql.server stop

このように機能すると、mysqldプロセスがなくなります。しかし/var/log/system.logには多くのゴミがあります:

Jul  9 14:10:54 xxx com.apple.xpc.launchd[1] (homebrew.mxcl.mysql[78049]): Service exited with abnormal code: 1
Jul  9 14:10:54 xxx com.apple.xpc.launchd[1] (homebrew.mxcl.mysql): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.