Mac OS 설치에서 MySQL을 어떻게 중지합니까?


187

MacPorts 를 통해 MySQL을 설치했습니다 . 서버를 중지하는 데 필요한 명령은 무엇입니까 (MySQL이 죽었을 때 응용 프로그램의 동작을 테스트해야 함)?

답변:


377

공식 바이너리 설치 프로그램으로 Mac 을 설치했는지 , MacPorts 또는 Homebrew를 사용하여 MySQL 을 설치했는지에 따라 다른 경우가 있습니다 .

사제

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

맥 포트

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가 아무 작업도 수행하지 않습니다.
Ross Henderson

4
필자의 경우 mysql 버전 번호가 plist 파일에 추가되었으므로 약간 다릅니다. sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5.plist sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist
d1rk

1
그리고 나를 위해 /opt/local/etc/LaunchDaemons/org.macports.mysql5/org.macports.mysql5.plist
Dmitry

10
그리고 homebrew를 위해 :launchctl (un)load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Kostas

2
당신이 경우 브루 서비스를 설치, 당신은 사용할 수 있습니다 brew services stop mysqlbrew services start mysql. (또한 restart, 및 run현재 세션으로 만 시작한다.)
medmunds

138

homebrew를 사용하여 MySQL을 설치 한 사용자는 다음 명령을 사용하여 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

68

항상 "mysqladmin shutdown"명령을 사용할 수 있습니다


1
위의 명령은 저에게 효과적이지 않았습니다. 이건 내 설정의 차이점이 확실하지 않지만 감사합니다.
Marco

2
작동 할 수 있지만 MacPorts를 사용하고이를 실행하면 launchctl은 mysql이 중지되었음을 인식하지 못하며 시작하려고하면 불평합니다 (로드). 따라서 launchctl을 사용하는 것이 좋습니다.
lambshaanxy 2

1
또한 이것은 서버를 종료하는 데 효과적이지만 서버를 다시 시작하려고 할 때 서버를 다시 시작하는 데 도움이되지 않습니다.
aroth

3
프롬프트가 표시되면 -p를 추가하고 mysql 루트 비밀번호를 입력하십시오. myPort가 MacPorts와 함께 설치되는 설정에서 mysql이 다시 시작되고 내 작업의 대상인 구성이 다시로드되었습니다.
Jesper Grann Laursen

sudo /opt/local/lib/mysql56/bin/mysqladmin shutdownmysql이 MacPorts에서 온 경우
Alain Tiemblo

51

당신이 사용하는 경우 homebrew사용할 수 있습니다

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

사용 가능한 서비스 목록

brew services list

2
이것은 launchctl과 직접 상호 작용 한 후에도 효과가 없었습니다. 감사합니다!
Lyndsy Simon

19

sudo /usr/local/mysql/support-files/mysql.server 중지


2
+1 이것은 나를 위해 일한 것뿐입니다 .-- Mysql에서 DMG 설치 프로그램을 사용했습니다. 감사합니다
Dolan Antenucci

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 시작 bitching 및 moaning에 문제가 발생할 수 있습니다.
Alex Gray


11

시험

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가 다음과 같이로드 된 경우 두 번째 옵션 (OS X 10.6, MySQL 5.1.50) 만 작동한다는 것을 알았습니다.

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

추신 : 또한 관련없는 MAMP 설치를 얻으려면 .plist를 언로드해야한다는 것을 알았습니다. -MySQL 올바르게 시작 / 중지해야한다는 것을 알았습니다. 이것을 실행 한 후에 MAMP-MySQL은 정상적으로 시작됩니다.

sudo launchctl 언로드 -w /Library/LaunchDaemons/com.mysql.mysqld.plist


7

내 맥 OSX 요세미티 10.10에서. 이 명령은 효과가있었습니다.

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

/ Library / LaunchDaemons / 폴더에서 mysql 파일을 찾을 수 있습니다.


2
이것은 나를 위해 일한 유일한 방법입니다. 다른 방법의 경우 mysqld프로세스가 중지 된 직후에 다시 시작됩니다.
Rockallite

이것은 나를 위해 일한 유일한 방법입니다. 홈 브루에서 MySQL이 제공하는 DMG로 전환했는데, 브룩 버전을 제거 했는데도 여전히 브루 버전이 실행되고 있다고 생각합니다.
Sam Critchley

5

사용하다:

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

아마도 sudo를 사용하지 않으면 벗어날 수 있습니다 . 사용자는 예를 들어 루트 (이다, MySQL의 루트 사용자)이 될 수 있습니다.


4

글쎄, 다른 모든 것이 실패하면, 무자비한 접근 방식을 취하고 MySQL을 수동으로 실행하는 프로세스를 종료시킬 수 있습니다.

그건,

ps -Af

모든 프로세스를 나열하려면 "kill <pid> "여기서 <pid>MySQL 데몬 (mysqld)의 프로세스 ID입니다.


예 .. 이것은 스크립팅에 가장 적합하고 보편적입니다. 데이터 손상 가능성이 있다고 생각하십니까? 또는 다른 문제가 있습니까?
user425720

1
이로 인해 데이터가 손상 될 수 있습니다.
Dan Sandland

그러나 마지막 도랑 노력으로 이것으로 충분합니다.
Dan Sandland


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 stop나는 사제를 사용하지 않고 설치로 명령이 작동하지 않았다. 그런 다음 Mac 시스템 환경 설정으로 이동하여 MySQL을 설치했습니다. 그냥 열고 MySQL 서버를 중지하면 완료됩니다. 스크린 샷에서 시스템 환경 설정의 하단에서 MySQL을 찾을 수 있습니다.여기에 이미지 설명을 입력하십시오


1

OSX Snow Leopard에서

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

0

macports를 통해 mysql5 및 mysql55를 설치했습니다. 나에게 언급 된 파일은 다음 위치에 있습니다.

(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 서버 :

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 서버

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

MacPorts와 함께 MySQL 5 패키지를 설치 한 경우 :

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

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.