MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

mongodb, replikuje się i błąd:{ $err :not master and slaveOk=false, kod :13435 }

Musisz ustawić tryb "secondary okay", aby powłoka mongo wiedziała, że ​​zezwalasz na odczyty z drugorzędnego. Ma to na celu ochronę Ciebie i Twoich aplikacji przed przypadkowym wykonaniem spójnych odczytów. Możesz to zrobić w powłoce za pomocą:

rs.secondaryOk()

Następnie możesz normalnie wysyłać zapytania z serwerów pomocniczych.

Uwaga o „spójności ostatecznej”:w normalnych okolicznościach pomocnicze zestawy replik zawierają te same dane co podstawowe w ciągu sekundy lub mniej. Przy bardzo dużym obciążeniu replikacja danych zapisanych w serwerze podstawowym może chwilę potrwać. Jest to znane jako „opóźnienie repliki”, a odczyt z opóźnionego wtórnego jest znany jako „ostatecznie spójny” odczyt, ponieważ chociaż nowo zapisane dane pojawią się w pewnym momencie (z wyjątkiem awarii sieci itp.), może nie być natychmiast dostępne.

Edytuj: Musisz tylko ustawić secondaryOk podczas wysyłania zapytań z serwerów pomocniczych i tylko raz na sesję.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Śledzenie wykorzystania pamięci MongoDB

  2. Testowanie integracji Spring Boot z wbudowaną bazą danych MongoDB

  3. Czy powinienem używać opcji allowDiskUse w środowisku produktu?

  4. MongoDB:Jak zdefiniować schemat?

  5. MongoDB, wykonanie zapytania za pomocą wyrażenia regularnego na polach indeksowanych