Mac OS Lion의 명령 줄에서 MySQL 서버 시작


162

Mac 용 mySQL을 설치했습니다. 시스템 환경 설정에 설치된 mySQL.prefPane 도구로 SQL 서버를 시작하는 것 외에도 명령 줄에서 시작하는 지침을 알고 싶습니다. 나는 다음과 같이한다 :

수 루트

커맨드 라인으로 mySQL 서버를 시작하면 아래와 같이 오류가 발생합니다.

sh-3.2 # / usr / local / mysql / bin / mysqld

111028 16:57:43 [경고] /usr/local/mysql-5.5.17-osx10.6-x86_64/data/에 대한 파일 시스템은 대소 문자를 구분하지 않으므로 lower_case_table_names = 2 설정

111028 16:57:43 [오류] 치명적인 오류 : mysqld를 루트로 실행하는 방법을 알아 보려면 설명서의 "보안"섹션을 읽으십시오!

111028 16:57:43 [오류] 중단

111028 16:57:43 [참고] / usr / local / mysql / bin / mysqld : 종료 완료

도와주세요!

편집하다:

이유는 다음과 같습니다. http://dev.mysql.com/doc/refman/5.5/en/changing-mysql-user.html

해결책은 아래 xdazz의 답변에 설명되어 있습니다.


설명에 대한 질문에 대한 내 편집을 참조하십시오
vietstone

1
macOS에서 mdfind mysql.server서버 실행 파일이 어디에 있는지 확인하십시오.
Benjamin Crouzier

답변:


187

시험 /usr/local/mysql/bin/mysqld_safe

예:

shell> sudo /usr/local/mysql/bin/mysqld_safe
(Enter your password, if necessary)
(Press Control-Z)
shell> bg
(Press Control-D or enter "exit" to exit the shell)

이것을 bash 시작 스크립트에 추가 할 수도 있습니다.

export MYSQL_HOME=/usr/local/mysql
alias start_mysql='sudo $MYSQL_HOME/bin/mysqld_safe &'
alias stop_mysql='sudo $MYSQL_HOME/bin/mysqladmin shutdown'

1
효과가있다. 그러나 명령 수행에서 포인터를 종료 할 수 없습니다. 터미널 창이 수행 중일 때 중지하는 방법.
vietstone

11
Homebrew와 함께 mysql을 설치 한 경우에는이 답변이 적용되지 않습니다.
cbmanica

나를 위해 그것은 단지 "mysqld <action>"이되었다. 파일은 / usr / local / mysql / bin / mysqld에있다
crobicha

233

간단히:

mysql.server start

mysql.server stop

mysql.server restart


1
정말 고맙습니다! 나는 너무 많은 것들, 심지어 문서를 읽었습니다.
HolyMoly

6
이것은 내가 이것을 위해 얻은 것입니다 :. ERROR! The server quit without updating PID file (/usr/local/var/mysql/XXXX.pid).
nyxee

@nyxee 당신은 그것을 실행해야 할 수도 있습니다 sudo!
anuveyatsu

이런 젠장. 감사합니다!
Karl Johan Vallner

훨씬 더 좋고 간단합니다. 감사합니다
Prabhakar Undurthi

135

나는 별칭도 좋아하지만 ...하지만 MySQLCOM에 문제가있어 시작했습니다 ... 자동으로 실패합니다 ... 내 해결 방법은 다른 것과 비슷합니다 ... ~ / .bash_aliases

alias mysqlstart='sudo /usr/local/mysql/support-files/mysql.server start'
alias mysqlstop='sudo /usr/local/mysql/support-files/mysql.server stop' 

최신 MySQL 설치와 함께 OSX 10.7.5에서 다른 답변이 실패했습니다. 이것은 트릭을 수행했습니다-감사합니다!
Irongaze.com

@ Irongaze.com 기꺼이 도와 드리겠습니다.
Eddie B

감사!! 나는 mysql을 시작하고 터미널을 닫을 수 있기를 원했고 이것이 효과가 있었다. 이 시작 방법과 mysqld_safe 방법의 차이점은 무엇입니까?
oli206

1
에서 mysql.server를 대 mysqld_safe에 mysql.server를하기 전에 서버를 시작, 그것은 MySQL 설치 디렉토리로 이동하고 mysqld_safe를 호출합니다.
Eddie B

훌륭한 답변! 간단하고 효과적입니다.
Starkers

84

마찬가지로 도움이 문서 상태 :에 OS X은 / 명령 줄에서 정지 MySQL의를 시작합니다 :

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

Linux의 경우 명령 행에서 시작 / 중지하십시오.

/etc/init.d/mysqld start 
/etc/init.d/mysqld stop 
/etc/init.d/mysqld restart 

일부 Linux 버전은 서비스 명령도 제공합니다.

# service mysqld start 
# service mysqld stop 
# service mysqld restart

또는

 # service mysql start 
 # service mysql stop 
 # service mysql restart 

해당 파일 또는 디렉토리가 없습니다/usr/local/mysql/support-files/mysql.server stop
nyxee

71

homebrew와 함께 설치하면 바이너리는

/usr/local/Cellar/mysql/5.6.10/bin/mysqld

그것은 당신이 그것을 시작할 수 있음을 의미

/usr/local/Cellar/mysql/5.6.10/support-files/mysql.server start

그리고 그것을 중지

/usr/local/Cellar/mysql/5.6.10/support-files/mysql.server stop

편집 : Jacob Raccuia가 언급했듯이 적절한 버전의 MySQL을 경로에 넣으십시오.


1
네!!!!!! 나는이 방법으로 그것을 설치 몰랐다! 적절한 버전의 mysql을 경로에 넣으십시오
Jacob Raccuia

31
sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

.bash_profile에서 별칭을 만드십시오.

alias start_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM start"
alias stop_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM stop"

안전 모드에 따라 루트 사용으로 실행하려고하면

sudo ./bin/mysqld_safe

그래도 시작하는 데 문제가 있으면 권장되는 내용은 다음과 같습니다. mysql5.58 mac OS 10.6.5에서 서버 시작 취소


27

어쩌면 mysql-server가 시작되지 않았을 수도 있습니다.

당신은 시도 할 수 있습니다

/usr/local/bin/mysql.server 시작


10

나 에게이 솔루션은 mac Sierra OS에서 작동했습니다.

sudo /usr/local/bin/mysql.server start
Starting MySQL
SUCCESS!

9

그것이 homebrew와 함께 설치되어 있으면 그냥 입력하십시오. mysql.server 터미널에 하면됩니다. AFAIK it 실행 파일은 /usr/local/bin/mysql.server에 있습니다.

그렇지 않다면 항상 "locate mysql.server"를 실행하면 해당 파일을 찾을 수있는 위치를 알 수 있습니다.


5

Homebrew를 통해 MySQL을 설치 한 경우 다음 명령이 도움이됩니다.

# For starting
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

# For stoping
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

4
기본적으로 LauchAgent for mysql은 없었습니다. 달리기 brew info mysql(내가 배운 것 : stackoverflow.com/a/4622474/459863 )는 내가 먼저 달려야한다고 말했습니다 ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents. 그 후에는 효과가있었습니다.
Wolfram Arnold

5

내 MySQL은 OS X ElCaptain에서 homebrew를 통해 설치됩니다. 무엇이 고쳐 졌습니까?

brew doctor

  • 내가 달리기를 제안한

sudo chown -R $(whoami):admin /usr/local

그때:

brew update
mysql.server start

mysql이 지금 실행 중입니다


왜 누군가가 공감했는지 몰라. 추출 업데이트 중에이 문제가 발생했습니다. brew doctor를 실행 한 다음 지침에 따라 내 bash 프로필에 특정 경로를 추가하면 문제가 해결되었습니다. 제안 해 주셔서 감사합니다.
Nostalg.io

1

MySql 서버 시작 오류 'PID 파일을 업데이트하지 않고 서버가 종료되었습니다'

homebrew에서 mysql을 설치 한 경우

Mac 환경 설정에서 MySQL 서버를 닫습니다.

ps ax | grep mysql

#kill all the mysql process running
sudo kill -9 pid

which mysql
/usr/local/bin/mysql
Admins-MacBook-Pro:bin username$ sudo mysql.server start

Starting MySQL
. SUCCESS! 

Admins-MacBook-Pro:bin username$ which mysql

/usr/local/bin/mysql

Admins-MacBook-Pro:bin username$ ps ax | grep mysql

54916 s005  S      0:00.02 /bin/sh 
/usr/local/Cellar/mysql@5.7/5.7.27_1/bin/mysqld_safe --datadir=/usr/local/var/mysql --pid-file=/usr/local/var/mysql/Admins-MacBook-Pro.local.pid
55012 s005  S      0:00.40 /usr/local/Cellar/mysql@5.7/5.7.27_1/bin/mysqld --basedir=/usr/local/Cellar/mysql@5.7/5.7.27_1 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql@5.7/5.7.27_1/lib/plugin --user=mysql --log-error=Admins-MacBook-Pro.local.err --pid-file=/usr/local/var/mysql/Admins-MacBook-Pro.local.pid
55081 s005  S+     0:00.00 grep mysql

0
111028 16:57:43 [ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!

mysql 설치를위한 루트 비밀번호를 설정 했습니까? 이것은 sudo 루트 비밀번호와 다릅니다. 시험/usr/local/mysql/bin/mysql_secure_installation


나는 위의 라인을 실행하면 생산 : PATH에 'MySQL의'클라이언트를 찾거나 ./bin 수 없습니다
vietstone
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.