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

Nie można utrzymać stanu transakcji, ponieważ brakuje kolekcji transakcji sesji

Prawdopodobnie porzuciłeś również config.transactions kolekcja. Jest to kolekcja do użytku wewnętrznego, która przechowuje rekordy używane do obsługi ponownej próby pisze dla zestawów replik i klastrów sharded. Zobacz też Bazy danych konfiguracji .

Od MongoDB v3.6+ użytkownicy nie będą mogli usunąć config baza danych w zestawie replik z mongo powłoka. Chociaż jeśli łączysz się za pomocą mongo shell przed wersją 3.6, nadal możesz to zrobić, upewnij się, że uaktualniłeś powłokę do wersji serwerowej.

Możesz ręcznie odtworzyć kolekcję w węźle podstawowym:

use config
db.createCollection("transactions");

Alternatywnie, wybór zestawu replik również automatycznie go odtworzy. Dzieje się tak, ponieważ utworzenie config.transactions kolekcja jest częścią kroku w górę węzła zestawu replik. session_catalog_mongod.cpp#L156

Nowy config.transactions kolekcja zostanie zreplikowana do drugorzędnych po zakończeniu przez podstawową fazę nadrabiania zaległości.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongoose JS odpytuje wszystkie wracające wartości null lub puste

  2. Tworzenie rosnących liczb za pomocą mongoDB

  3. $arrayElemAt . MongoDB

  4. Czy konieczne jest otwieranie połączenia MongoDB za każdym razem, gdy chcę pracować z bazą danych?

  5. MongoDB Pokaż całą zawartość ze wszystkich kolekcji