คำตอบ:
มีหลายกรณีขึ้นอยู่กับว่าคุณติดตั้งMySQLด้วยตัวติดตั้งไบนารีอย่างเป็นทางการใช้MacPortsหรือใช้Homebrew :
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
launchctl (un)load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
brew services stop mysql
brew services start mysql
( restart
และrun
จะเริ่มในเซสชันปัจจุบันเท่านั้น)
สำหรับผู้ที่ใช้ homebrew เพื่อติดตั้ง MySQL ให้ใช้คำสั่งด้านล่างเพื่อเริ่มหยุดหรือรีสตาร์ท MySQL
เบียร์เริ่มต้น
/usr/local/bin/mysql.server start
เบียร์เริ่มใหม่
/usr/local/bin/mysql.server restart
เบียร์หยุด
/usr/local/bin/mysql.server stop
/usr/local/Cellar/mysql@5.7/5.7.23/bin/
คุณสามารถใช้คำสั่ง "mysqladmin shutdown" ได้ตลอดเวลา
sudo /opt/local/lib/mysql56/bin/mysqladmin shutdown
หาก mysql ของคุณมาจาก MacPorts
หากคุณกำลังใช้homebrew
คุณสามารถใช้
brew services restart mysql
brew services start mysql
brew services stop mysql
สำหรับรายการบริการที่มี
brew services list
sudo /usr/local/mysql/support-files/mysql.server หยุด
sudo /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper stop
คุณยังสามารถใช้การเริ่มและรีสตาร์ทได้ที่นี่ ฉันพบสิ่งนี้โดยดูที่เนื้อหาของ /Library/LaunchDaemons/org.macports.mysql.plist
launchctl
วิธีนี้ใช้ไม่ได้และในความเป็นจริงอาจทำให้เกิดปัญหากับการเริ่มทำงาน PID / DB การเริ่มและการส่งเสียงครวญคราง
เห็นได้ชัดว่าคุณต้องการ:
sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop
มีการอ่านต่อไปในJeez คนหยุด fretting กว่าการติดตั้ง RMagic
ลอง
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
อย่างไรก็ตามฉันพบว่าตัวเลือกที่สองใช้งานได้เท่านั้น (OS X 10.6, MySQL 5.1.50) หากโหลด .plist ด้วย:
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
ใน 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 / เพื่อเรียกใช้
mysqld
กระบวนการจะรีสตาร์ททันทีหลังจากหยุด
ถ้าทุกอย่างล้มเหลวคุณก็สามารถใช้วิธีที่โหดเหี้ยมและฆ่ากระบวนการที่ใช้ MySQL ด้วยตนเอง
นั่นคือ,
ps -Af
เพื่อแสดงรายการกระบวนการทั้งหมดจากนั้นทำ " kill <pid>
" โดยที่<pid>
id กระบวนการของ MySQL daemon (mysqld)
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
สำหรับฉันมันใช้งานได้กับ "mysql5"
sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5.plist
sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist
ในกรณีของฉันมันจะทำการรีสตาร์ททันทีที่ฉันฆ่ากระบวนการโดยใช้ PID นอกจากนี้ยังมีbrew stop
คำสั่งไม่ได้ทำงานตามที่ผมติดตั้งโดยไม่ต้องใช้ Homebrew จากนั้นฉันไปที่การตั้งค่าระบบ mac และเราติดตั้ง MySQL ไว้ที่นั่น เพียงแค่เปิดและหยุดเซิร์ฟเวอร์ MySQL เท่านี้ก็เรียบร้อย ที่นี่ในหน้าจอคุณจะพบ MySQL ที่ด้านล่างของการตั้งค่าระบบ
บน OSX Snow Leopard
launchctl unload /System/Library/LaunchDaemons/org.mysql.mysqld.plist
ฉันติดตั้ง 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 เซิร์ฟเวอร์:
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
หากคุณติดตั้งแพ็คเกจ 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
แพคเกจ
mysql> แสดงตัวแปรที่ variable_name เช่น '% dir%';
| datadir | / opt / local / var / db / mysql5 / |
หลังจากลองใช้บรรทัดคำสั่งทั้งหมดแล้ว แต่ก็ไม่ทำงานฉันต้องทำสิ่งต่อไปนี้:
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.