Có sự khác biệt giữa mongo
tương tác và được tập lệnh phiên shell
. Đặc biệt, các lệnh như use admin
không phải là JavaScript hợp lệ và sẽ chỉ hoạt động trong một phiên trình bao tương tác.
Cách làm việc tương đương với dòng lệnh tắt máy của bạn sẽ là:
mongo 192.168.10.20:27000/admin --eval "db.shutdownServer()"
Bạn có thể bao gồm cơ sở dữ liệu để sử dụng trong chuỗi kết nối và không cần phải thoát khỏi mongo
có tập lệnh phiên shell.
Nếu bạn cần thay đổi cơ sở dữ liệu từ một phiên tập lệnh, có db.getSiblingDB()
Hàm JavaScript. Một cách thay thế để viết lệnh tắt ở trên sẽ là:
mongo 192.168.10.20:27000 --eval "db=db.getSiblingDB('admin');db.shutdownServer()"