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

MongoDB sẽ không bắt đầu sau sự cố máy chủ

Tệp nhật ký cho bạn biết rằng bạn có "tệp khóa cũ" . MongoDB giữ một tệp khóa trong khi nó đang chạy. Nó tạo ra tệp này khi nó được khởi động và xóa nó khi nó dừng lại. Khi máy tính gặp sự cố (hoặc MongoDB bị treo, ví dụ:qua kill ), tệp này không bị xóa và do đó cơ sở dữ liệu không khởi động. Sự tồn tại của tệp này cho thấy việc tắt MongoDB không sạch.

Hai điều có thể được thực hiện:

  1. Nếu đây là một máy phát triển và bạn chưa sử dụng cơ sở dữ liệu của mình (và cả các chương trình của bạn), bạn có thể xóa tệp theo cách thủ công. Đối với MongoDB 2.2.2 chạy trên Ubuntu 12.10, nó nằm trong /var/lib/mongodb/mongod.lock . Đối với các phiên bản khác, tệp có thể ở một đường dẫn khác hoặc có thể được đặt tên là mongo.lock .

  2. Cách an toàn hơn là làm theo hướng dẫn về Độ bền và Sửa chữa của MongoDB. Tóm lại, đối với máy có cấu hình trên, bạn nên thực hiện các lệnh sau:

    sudo -u mongodb mongod --repair --dbpath /var/lib/mongodb/
    sudo service mongod start
    


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Viết cố vấn đầu tiên của bạn

  2. Tham chiếu các tài liệu khác theo chuỗi thay vì đối tượng

  3. Thực thi quyền kiểm soát truy cập dựa trên vai trò với ClusterControl

  4. Mongo chuyển đổi tất cả các trường số được lưu trữ dưới dạng chuỗi

  5. Kết hợp toàn văn với chỉ mục khác