Tôi đã cài đặt MySQL thông qua MacPorts . Lệnh tôi cần để dừng máy chủ là gì (tôi cần kiểm tra xem ứng dụng của tôi hoạt động như thế nào khi MySQL chết)?
Tôi đã cài đặt MySQL thông qua MacPorts . Lệnh tôi cần để dừng máy chủ là gì (tôi cần kiểm tra xem ứng dụng của tôi hoạt động như thế nào khi MySQL chết)?
Câu trả lời:
Có nhiều trường hợp khác nhau tùy thuộc vào việc bạn đã cài đặt MySQL với trình cài đặt nhị phân chính thức, sử dụng MacPorts hay sử dụng Homebrew :
brew services start mysql
brew services stop mysql
brew services restart mysql
sudo port load mysql57-server
sudo port unload mysql57-server
Lưu ý: điều này là liên tục sau khi khởi động lại.
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
và brew services start mysql
. (Ngoài ra restart
, và run
chỉ bắt đầu cho phiên hiện tại.)
Đối với những người đã sử dụng homebrew để cài đặt MySQL, hãy sử dụng các lệnh sau đây để bắt đầu, dừng hoặc khởi động lại MySQL
Bắt đầu bia
/usr/local/bin/mysql.server start
Khởi động lại bia
/usr/local/bin/mysql.server restart
Dừng bia
/usr/local/bin/mysql.server stop
/usr/local/Cellar/mysql@5.7/5.7.23/bin/
Bạn luôn có thể sử dụng lệnh "mysqladmin shutdown"
sudo /opt/local/lib/mysql56/bin/mysqladmin shutdown
nếu mysql của bạn đến từ MacPorts
Nếu bạn đang sử dụng, homebrew
bạn có thể sử dụng
brew services restart mysql
brew services start mysql
brew services stop mysql
cho một danh sách các dịch vụ có sẵn
brew services list
sudo /usr/local/mysql/support-files/mysql.server dừng
sudo /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper stop
Bạn cũng có thể sử dụng bắt đầu và khởi động lại ở đây. Tôi đã tìm thấy điều này bằng cách xem nội dung của / L Library / LaunchDaemons / org.macports.mysql.plist.
launchctl
Phương pháp này KHÔNG hoạt động, và trên thực tế có thể gây ra vấn đề với việc khởi động và rên rỉ khởi động PID / DB.
Rõ ràng bạn muốn:
sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop
Có một bài đọc thêm trong Jeez People, Ngừng làm phiền khi cài đặt RMagic .
Thử
sudo <path to mysql>/support-files/mysql.server start
sudo <path to mysql>/support-files/mysql.server stop
Khác thử:
sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop<br>
sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart
Tuy nhiên, tôi thấy rằng tùy chọn thứ hai chỉ hoạt động (OS X 10.6, MySQL 5.1.50) nếu .plist đã được tải với:
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist
PS: Tôi cũng thấy rằng tôi cần dỡ bỏ .plist để có được bản cài đặt MAMP không liên quan -MySQL để bắt đầu / dừng chính xác. Sau khi chạy này, MAMP-MySQL khởi động tốt:
sudo launchctl unload -w /L Library / LaunchDaemons / com.mysql.mysqld.plist
Trên mac osx yosemite của tôi 10.10. Lệnh này đã làm việc:
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist
sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysql.plist
Bạn có thể tìm thấy tệp mysql của mình trong thư mục / Thư viện / LaunchDaemons / để chạy
mysqld
quá trình khởi động lại ngay sau khi dừng lại.
Chà, nếu thất bại, bạn chỉ có thể thực hiện cách tiếp cận tàn nhẫn và giết quá trình chạy MySQL thủ công.
Đó là,
ps -Af
để liệt kê tất cả các quy trình, sau đó thực hiện " kill <pid>
" <pid>
id quá trình của trình nền MySQL (mysqld) ở đâu.
OSX mới nhất (10.8) và mysql 5.6, tệp nằm trong Launch Daemons và là com.oracle.oss.mysql.mysqld.plist. Nó trình bày một tùy chọn bên dưới Tùy chọn hệ thống, thường là cuối danh sách. Vì vậy, đi đến cài đặt hệ thống, nhấp vào Mysql và tắt nó từ hộp tùy chọn. https://dev.mysql.com/doc/refman/5.6/en/osx-installation-launchd.html
Đối với tôi, nó hoạt động với "mysql5"
sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5.plist
sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist
Trong trường hợp của tôi, nó tiếp tục khởi động lại ngay khi tôi giết tiến trình bằng cách sử dụng PID. Ngoài ra brew stop
lệnh không làm việc như tôi cài đặt mà không sử dụng homebrew. Sau đó, tôi đã đi đến các tùy chọn hệ thống mac và chúng tôi đã cài đặt MySQL ở đó. Chỉ cần mở nó và dừng máy chủ MySQL và bạn đã hoàn thành. Ở đây trong ảnh chụp màn hình, bạn có thể tìm thấy MySQL ở dưới cùng của tùy chọn hệ thống.
Tôi đã cài đặt mysql5 và mysql55 trên macports. Đối với tôi các tập tin được đề cập ở đây được đặt tại các địa điểm sau:
(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
Vì vậy, dừng lại cho các công trình như thế này:
máy chủ mysql55:
sudo launchctl unload -w /opt/local/etc/LaunchDaemons/org.macports.mysql55-server/org.macports.mysql55-server.plist
mys5
sudo launchctl unload -w /opt/local/etc/LaunchDaemons/org.macports.mysql5/org.macports.mysql5.plist
Bạn có thể kiểm tra xem dịch vụ có còn chạy không:
ps ax | grep mysql
Hơn nữa bạn có thể kiểm tra các tệp nhật ký trong trường hợp của tôi ở đây:
máy chủ 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
mys5
sudo tail -n 100 /opt/local/var/db/mysql5/<MyName>-MacBook-Pro.local.err
...
130213 09:23:57 mysqld ended
Nếu bạn đã cài đặt gói MySQL 5 với MacPorts:
sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql.plist
Hoặc là
sudo launchctl unload -w /Library/LaunchDaemons/org.macports.mysql5-devel.plist
nếu bạn đã cài đặt mysql5-devel
gói.
Sau khi thử tất cả các dòng lệnh đó và nó không hoạt động. Tôi phải làm những việc sau:
mv /usr/local/Cellar/mysql/5.7.16/bin/mysqld /usr/local/Cellar/mysql/5.7.16/bin/mysqld.bak
mysql.server stop
Cách này hoạt động, quá trình mysqld đã biến mất. nhưng /var/log/system.log có rất nhiều rác:
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.