MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Cách thả cơ sở dữ liệu trong MongoDB từ Dòng lệnh

Việc thay đổi toàn bộ cơ sở dữ liệu trong MongoDB khá đơn giản và có thể được thực hiện theo nhiều cách khác nhau. Dưới đây, chúng tôi sẽ xem xét ngắn gọn hai phương pháp để xóa (hoặc xóa) cơ sở dữ liệu trong MongoDB, sử dụng cả *nix shell cũng như tiện ích Mongo shell.

Sử dụng Unix Shell và Eval Command

Phương pháp đơn giản nhất để xóa cơ sở dữ liệu Mongo của bạn là thực thi mongo lệnh shell từ dòng lệnh, cùng với các cờ và tùy chọn thích hợp để thông báo cho mongo shell mà bạn muốn thả một cơ sở dữ liệu.

Ở cấp độ cơ bản nhất, mongo lệnh shell có thể được sử dụng để nhanh chóng kết nối với một cơ sở dữ liệu cụ thể. Trong ví dụ này, chúng tôi sẽ sử dụng nó để kết nối với bookstore cơ sở dữ liệu từ dấu nhắc bash máy chủ của chúng tôi:

$ mongo bookstore
MongoDB shell version: 3.0.9
connecting to: bookstore
>

Tuy nhiên, thay vì chỉ kết nối với bookstore của chúng tôi cơ sở dữ liệu và chạy các lệnh từ mongo shell, chúng ta thực sự có thể chuyển eval cờ theo sau là mã JavaScript mà chúng tôi muốn MongoDB thực thi và cơ sở dữ liệu của chúng tôi có thể dễ dàng bị xóa trong một dòng.

Trong trường hợp này, chúng tôi muốn xóa cơ sở dữ liệu nên sau đó chúng tôi sẽ sử dụng db.dropDatabase() để xóa cơ sở dữ liệu mà chúng tôi đang kết nối. Mặc dù không cần thiết, chúng tôi cũng sẽ đưa phương pháp này vào printjson để đảm bảo đầu ra của lệnh này có ý nghĩa và có thể đọc được.

$ mongo bookstore --eval "printjson(db.dropDatabase())"
MongoDB shell version: 3.0.9
connecting to: bookstore
{ "dropped" : "bookstore", "ok" : 1 }

Sử dụng Mongo Shell Utility

Phương pháp thay thế bắt đầu bằng cách kết nối với MongoDB thông qua mongo tiện ích shell, sau đó đưa ra các lệnh trong chính Mongo để kết nối và thả cơ sở dữ liệu cụ thể.

Mặc dù cả hai phương pháp đều không có lợi thế đặc biệt so với phương pháp kia, nhưng trong môi trường sản xuất, tốt nhất bạn nên tránh sử dụng eval ở trên và thay vào đó hãy sử dụng mongo vỏ như chúng ta sẽ khám phá bên dưới, điều này cho phép bạn đảm bảo bạn được kết nối với (và do đó đang xóa) cơ sở dữ liệu thích hợp.

Như trước đây, hãy bắt đầu bằng cách phát hành mongo lệnh từ bash shell của bạn:

$ mongo
MongoDB shell version: 3.0.9
connecting to: test
>

Bây giờ bạn đã kết nối với Mongo, hãy sử dụng show dbs lệnh hiển thị tất cả cơ sở dữ liệu trong hệ thống:

> show dbs
local  0.078GB
bookstore 0.521GB

Bây giờ hãy kết nối với cơ sở dữ liệu cụ thể mà bạn muốn thả bằng use <database> yêu cầu. Trong trường hợp của chúng tôi, một lần nữa chúng tôi sẽ kết nối với bookstore :

> use bookstore
switched to db bookstore

Cuối cùng, thực hiện xóa bằng cách gọi db.dropDatabase() , tương tự như eval của chúng tôi ‘Ed tuyên bố ở trên.

> db.dropDatabase()
{ "dropped" : "bookstore", "ok" : 1 }

Đây là bạn có nó! Hai phương pháp đơn giản để loại bỏ một cơ sở dữ liệu cụ thể khỏi MongoDB một cách nhanh chóng và dễ dàng.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tại sao MongoDB không sử dụng giao điểm chỉ mục?

  2. Cài đặt MongoDB với Homebrew

  3. Lập lịch bảo trì Windows đơn giản trên các cụm cơ sở dữ liệu của bạn

  4. Google Cloud Mongo DB:IP bên ngoài không kết nối

  5. Cơ sở dữ liệu tài liệu:Dữ liệu dự phòng, tài liệu tham khảo, v.v. (cụ thể là MongoDB)