Tôi đã theo dõi tài liệu MongoDB chính thức để dừng lại với tín hiệu. Một trong các lệnh sau đây có thể được sử dụng [PID đại diện cho
kill -2 PID
8 của quy trình kill -2 PID
9]:kill PID
gửi tín hiệu 15 [sigterm] hoặc
kill -2 PID
trong đó gửi tín hiệu 2 [sigint].
Cảnh báo từ tài liệu MongoDB: Không bao giờ sử dụng
0 [tức là Sigkill] để chấm dứt một ví dụpkill mongod
9.kill -2 PID
Never use0 [i.e. SIGKILL] to terminate apkill mongod
9 instance.kill -2 PID
Nếu bạn có nhiều hơn một phiên bản chạy hoặc bạn không quan tâm đến PID, bạn có thể sử dụng
pkill mongod
2 để gửi tín hiệu đến tất cả các quy trình đang chạy kill -2 PID
9:pkill mongod
hoặc
pkill -2 mongod
Hoặc, an toàn hơn nhiều, chỉ với các quy trình thuộc về bạn:
pkill -U $USER mongod
hoặc
pkill -2 -U $USER mongod
Hoặc, an toàn hơn nhiều, chỉ với các quy trình thuộc về bạn:
sudo pkill mongod
sudo pkill -2 mongod
Lưu ý: Nếu DB đang chạy như một người dùng khác, nhưng bạn có quyền hành chính, bạn đã gọi các lệnh trên với pkill mongod
4, để chạy chúng. Ví dụ.:
pkill mongod
PS
Error parsing command line: unrecognised option '--shutdown'
Lưu ý: Tôi đã sử dụng tín hiệu vì pkill mongod
5, mặc dù được đề cập trong tài liệu MongoDB hiện tại, không hoạt động trên máy của tôi [MacOS, MongoDB V3.4.10, được cài đặt với pkill mongod
6]:
pkill mongod
pkill mongod
Cập nhật 2022-05-10
Trong khi đó, tùy chọn pkill mongod
7 được đánh dấu trong tài liệu là "pkill mongod
8".
pkill mongod
pkill mongod
PPS
brew services stop mongodb
[MacOS cụ thể] Trước khi có ai tự hỏi: Không, tôi không thể dừng nó bằng lệnh
brew services start mongodb
bởi vì tôi đã không bắt đầu nó với
MongoDB chạy như một chương trình tiêu chuẩn. Bạn có thể bắt đầu MongoDB từ một dòng lệnh bằng cách ban hành lệnh
kill -2 PID
9 và chỉ định các tùy chọn. Để biết danh sách các tùy chọn, xem tham chiếu kill -2 PID
9. MongoDB cũng có thể chạy như một dịch vụ Windows. Để biết chi tiết, hãy xem Start MongoDB Community Edition dưới dạng dịch vụ Windows. Để cài đặt MongoDB, xem Cài đặt MongoDB.Các ví dụ sau đây giả định thư mục chứa quy trình
kill -2 PID
9 nằm trong đường dẫn hệ thống của bạn. Quá trình kill -2 PID
9 là quy trình cơ sở dữ liệu chính chạy trên một máy chủ riêng lẻ. pkill -2 mongod
4 cung cấp giao diện MongoDB mạch lạc tương đương với kill -2 PID
9 từ quan điểm của khách hàng. Nhị phân pkill -2 mongod
6 cung cấp vỏ hành chính.pkill -2 mongod
6 binary provides the administrative shell.Tài liệu này thảo luận về quá trình
kill -2 PID
9; Tuy nhiên, một số phần của tài liệu này có thể được áp dụng cho các trường hợp pkill -2 mongod
4.Theo mặc định, MongoDB lắng nghe các kết nối từ máy khách trên cổng
pkill -2 mongod
9 và lưu trữ dữ liệu trong thư mục pkill -U $USER mongod
0.Trên Windows, con đường này nằm trên ổ đĩa mà bạn bắt đầu MongoDB. Ví dụ: nếu bạn không chỉ định
pkill -U $USER mongod
1, hãy khởi động máy chủ MongoDB trên ổ đĩa pkill -U $USER mongod
2 lưu trữ tất cả các tệp dữ liệu trong pkill -U $USER mongod
3.Để bắt đầu MongoDB bằng tất cả các mặc định, hãy đưa ra lệnh sau tại shell hệ thống:
Nếu bạn muốn
kill -2 PID
9 lưu trữ các tệp dữ liệu tại một đường dẫn khác với pkill -U $USER mongod
0, bạn có thể chỉ định pkill -U $USER mongod
6. pkill -U $USER mongod
6 phải tồn tại trước khi bạn bắt đầu kill -2 PID
9. Nếu nó không tồn tại, hãy tạo thư mục và các quyền để kill -2 PID
9 có thể đọc và ghi dữ liệu vào đường dẫn này. Để biết thêm thông tin về quyền, hãy xem tài liệu hoạt động bảo mật.Để chỉ định
pkill -U $USER mongod
6 cho kill -2 PID
9 để sử dụng làm thư mục dữ liệu, hãy sử dụng tùy chọn pkill -U $USER mongod
1. Nhu cầu sau đây sẽ bắt đầu một ví dụ kill -2 PID
9 và lưu trữ dữ liệu trong đường dẫn pkill -2 -U $USER mongod
4kill -2 PID
0Chỉ có một quy trình duy nhất có thể lắng nghe các kết nối trên giao diện mạng tại một thời điểm. Nếu bạn chạy nhiều quy trình
kill -2 PID
9 trên một máy hoặc có các quy trình khác phải sử dụng cổng này, bạn phải gán cho mỗi một cổng khác nhau để nghe các kết nối máy khách.Để chỉ định một cổng thành
kill -2 PID
9, hãy sử dụng tùy chọn pkill -2 -U $USER mongod
7 trên dòng lệnh. Lệnh sau bắt đầu kill -2 PID
9 Nghe trên cổng pkill -2 -U $USER mongod
9:Sử dụng số cổng mặc định khi có thể, để tránh nhầm lẫn.
Để chạy quy trình
kill -2 PID
9 dưới dạng daemon [nghĩa là sudo pkill mongod
sudo pkill -2 mongod
1] và ghi đầu ra của nó vào tệp nhật ký, sử dụng các tùy chọn sudo pkill mongod
sudo pkill -2 mongod
2 và sudo pkill mongod
sudo pkill -2 mongod
3. Bạn phải tạo thư mục nhật ký; Tuy nhiên, kill -2 PID
9 sẽ tạo tệp nhật ký nếu nó không tồn tại.Lệnh sau bắt đầu
kill -2 PID
9 dưới dạng daemon và ghi lại đầu ra đăng nhập vào sudo pkill mongod
sudo pkill -2 mongod
6.kill -2 PID
1Để biết tổng quan về các cấu hình và triển khai phổ biến cho các trường hợp sử dụng phổ biến, hãy xem cấu hình cơ sở dữ liệu thời gian chạy.
Trong lần tắt sạch,
kill -2 PID
9 hoàn thành tất cả các hoạt động đang chờ xử lý, xóa tất cả dữ liệu vào các tệp dữ liệu và đóng tất cả các tệp dữ liệu. Tắt máy khác là ô uế và có thể thỏa hiệp tính hợp lệ của các tệp dữ liệu.Để đảm bảo tắt máy sạch, luôn luôn tắt máy
kill -2 PID
9 bằng một trong các phương pháp sau:Tắt
kill -2 PID
9 từ pkill -2 mongod
6 bằng phương pháp Error parsing command line: unrecognised option '--shutdown'
1 như sau:pkill -2 mongod
6 using the Error parsing command line: unrecognised option '--shutdown'
1 method
as follows:kill -2 PID
2Gọi cùng một phương thức từ tập lệnh init thực hiện kết quả tương tự.
Đối với các hệ thống có kích hoạt
Error parsing command line: unrecognised option '--shutdown'
2, người dùng chỉ có thể phát hành Error parsing command line: unrecognised option '--shutdown'
1 khi được xác thực vào cơ sở dữ liệu Error parsing command line: unrecognised option '--shutdown'
4 hoặc thông qua giao diện localhost trên các hệ thống mà không được bật xác thực.Chỉ được hỗ trợ trên Linux. Từ dòng lệnh, hãy tắt
kill -2 PID
9 bằng tùy chọn pkill mongod
7:Khi chạy thể hiện
kill -2 PID
9 ở chế độ tương tác [nghĩa là không có sudo pkill mongod
sudo pkill -2 mongod
2], vấn đề Error parsing command line: unrecognised option '--shutdown'
9 để thực hiện tắt máy sạch.Chỉ được hỗ trợ trên Linux và MacOS. Từ dòng lệnh, hãy tắt một phiên bản
kill -2 PID
9 cụ thể bằng cách sử dụng một trong các lệnh sau:kill -2 PID
3Bắt đầu từ MongoDB 4.0.8 [và 3.6.15], nếu một bản sao đặt chính nhận được
brew services stop mongodb
1, thì các nỗ lực chính để từ chức trước khi tắt.Nếu bước xuống thành công, trường hợp không bỏ phiếu trong cuộc bầu cử chính của chính mới và tiếp tục tắt máy.
Nếu bước xuống thất bại, trường hợp tiếp tục tắt máy.
Cảnh báo
Không bao giờ sử dụng
pkill mongod
0 [tức là brew services stop mongodb
3] để chấm dứt một thể hiện Mongod.Bắt đầu từ MongoDB 4.4 Chạy trên Linux:
Khi các quy trình
9 vàkill -2 PID
4 nhận được tín hiệupkill -2 mongod
6, chi tiết ngược lại được thêm vào nhật ký cho mỗi luồng quy trình.brew services stop mongodb
Chi tiết backtrace Hiển thị các yêu cầu chức năng cho quy trình, có thể được sử dụng để chẩn đoán và cung cấp cho hỗ trợ MongoDB nếu được yêu cầu.
Chức năng Backtrace có sẵn cho các kiến trúc này:
7brew services stop mongodb
8 [bắt đầu từ MongoDB 4.4.15, 5.0.10 và 6.0]brew services stop mongodb
Để phát hành tín hiệu
brew services stop mongodb
6 cho quy trình đang chạy kill -2 PID
9, hãy sử dụng lệnh sau:kill -2 PID
4Dữ liệu ngược kết quả được ghi vào logfile
kill -2 PID
9 như được cấu hình với sudo pkill mongod
sudo pkill -2 mongod
3Nếu
kill -2 PID
9 là chính trong một bộ bản sao, quá trình tắt máy cho phiên bản kill -2 PID
9 này có các bước sau:Kiểm tra xem các thứ hai được cập nhật như thế nào.
Nếu không có thứ cấp nào trong vòng 10 giây của chính,
9 sẽ trả về một thông báo rằng nó sẽ không tắt. Bạn có thể chuyển lệnhkill -2 PID
6 một đối sốbrew services start mongodb
7 để chờ thứ cấp bắt kịp.brew services start mongodb
Nếu có thứ cấp trong vòng 10 giây của chính, chính sẽ từ chức và chờ thứ cấp bắt kịp.
Sau 60 giây hoặc một khi thứ cấp đã bắt kịp, chính sẽ ngừng hoạt động.
Nếu không có thứ cấp cập nhật và bạn muốn bản chính bị tắt, hãy đưa ra lệnh
brew services start mongodb
6 với đối số brew services start mongodb
9, như trong hoạt động pkill -2 mongod
6 sau:pkill -2 mongod
6 operation:kill -2 PID
5Để tiếp tục kiểm tra các thứ hai trong một số giây được chỉ định nếu không có ai được cập nhật ngay lập tức, vấn đề
brew services start mongodb
6 với đối số brew services start mongodb
7. MongoDB sẽ tiếp tục kiểm tra các thứ hai cho số giây được chỉ định nếu không có ai được cập nhật ngay lập tức. Nếu bất kỳ thứ hai nào bắt kịp trong thời gian quy định, chính sẽ tắt. Nếu không có thứ hai bắt kịp, nó sẽ không tắt.Các vấn đề lệnh sau
brew services start mongodb
6 với brew services start mongodb
7 được đặt thành kill -2 PID
05:kill -2 PID
6Thay thế bạn có thể sử dụng đối số
brew services start mongodb
7 với phương thức Error parsing command line: unrecognised option '--shutdown'
1:kill -2 PID
7