Heim Backend-Entwicklung PHP-Tutorial Zusammenfassung der MongoDB-Tipps und Vorsichtsmaßnahmen

Zusammenfassung der MongoDB-Tipps und Vorsichtsmaßnahmen

Dec 01, 2017 am 11:28 AM

Mongodb, eine verteilte Dokumentenspeicherdatenbank, die in der Sprache C++ geschrieben ist, zielt darauf ab, skalierbare, leistungsstarke Datenspeicherlösungen für WEB-Anwendungen bereitzustellen. MongoDB ist eine leistungsstarke, schemalose Open-Source-Dokumentendatenbank, die derzeit eine beliebte NoSQL-Datenbank ist. In diesem Artikel werden Ihnen die Lösungstechniken für Probleme vorgestellt, die bei der Verwendung von MongoDB auftreten, und diese zu Referenz- und Lernzwecken weitergeben.

1. Suchen Sie Datensätze, deren Array-Felder nicht leer sind.

Suchen Sie Datensätze, deren Array-Felder in den Daten nicht leer sind.

Zum Beispiel: Es gibt das folgende Mongo-Dokument:

{
 "id" : "581c060f2b436c05aafb1632",
 "commit_history" : [ 
 "581c20d52b436c05aafb1633", 
 "581c21c12b436c05aafb1634"
 ]
},
{
 "id" : "581c060f2b436c05aafb1633",
 "commit_history" : []
}
Nach dem Login kopieren

Wenn Sie Datensätze finden möchten, deren commit_history nicht leer ist, gibt es die folgenden Methoden:

Methode 1: db.collection .find({commit_history: {$not: {$size: 0}}})

Methode 2: db.collection.find({'commit_history.0': {$exists: 1}})

2. Einen Benutzer zu MongoDB hinzufügen

Um einen Benutzer zu einer Sammlung in MongoDB hinzuzufügen, können Sie Folgendes tun:

Verwenden Sie den Sammlungsnamen um zu einer Bibliothek zu wechseln

db.createUser(
 {
 user: "collection_name",
 pwd: "password",
 roles: [ "readWrite", "dbAdmin" ]
 }
)
Nach dem Login kopieren

3. Manchmal ist es notwendig, die Spalte des angegebenen Feldes zu löschen und den Aktualisierungsvorgang zu verwenden.

Um beispielsweise die Namensspalte zu löschen:

JSON abfragen:

{"name":{$exists:true}}
Nach dem Login kopieren

JSON aktualisieren:

{$unset:{"name":""}}
Nach dem Login kopieren

4. Datenexport: Führen Sie den Befehl mongoexport im bin-Verzeichnis von mongodb aus und legen Sie die relevanten Parameter fest.

Beispiel:

./mongoexport -h 192.168.0.201 --port 27017 –d admin –u admin –p admin -c department -o /home/admin/department.dat
Nach dem Login kopieren

-h: Geben Sie die IP der zu verbindenden Datenbank an

- -port: Geben Sie den Port der zu verbindenden Datenbank an;

-u: Geben Sie den Benutzernamen der zu verbindenden Datenbank an;

-p: Geben Sie an Benutzerpasswort der zu verbindenden Datenbank;

-d: Geben Sie den Namen der zu verbindenden Bibliothek an

-c: Geben Sie den zu exportierenden Datensatz an; o: Geben Sie die Zielspeicheradresse der zu exportierenden Daten an;

Hinweis: (1) Es muss sichergestellt werden, dass die verbundene Datenbank im Normalbetrieb ist


(2) Ich bin einmal auf eine Situation gestoßen, in der Benutzerinformationen zur Datenbank hinzugefügt wurden und diese beim Start nicht mit Benutzerauthentifizierung gestartet wurde. Beim Ausführen dieses Befehls war der Export jedoch erfolgreich . Wenn jemand auf eine ähnliche Situation stößt, können Sie es genauso gut versuchen.

5. Datenimport, führen Sie den Befehl mongoimport im bin-Verzeichnis von mongodb aus und legen Sie die relevanten Parameter fest. Die Parametererklärung ist die gleiche wie oben

Zum Beispiel:

./mongoimport --port 27017 -d admin -u admin –p admin –c department /home/common/mongodb305/bin/department.dat
Nach dem Login kopieren


6. Probleme bei der Benutzerüberprüfung für Nicht-AMDIN-Datenbanken:


Wenn wir Benutzer zur Bibliothek in der Mongodb-Datenbank hinzufügen, können wir die folgenden Befehle verwenden in der Zieldatenbank beispielsweise in der MongoTest-Bibliothek hinzufügen Ein Benutzer mit Lese- und Schreibberechtigungen:

db.createUser({"user":"test","pwd":"123456","roles":["readWrite"]})
Nach dem Login kopieren


kann auch in der Admin-Datenbank hinzugefügt werden:

db.createUser({"user":"test","pwd":"123456","roles":[{"role":"readWrite","db":"test"},"readWrite"]})
Nach dem Login kopieren


Es sollte beachtet werden, dass es einen Unterschied zwischen diesen beiden Methoden gibt, und dieser Unterschied hat mich einmal getäuscht:

Bei der Verwendung der ersten Zum Hinzufügen der Methode können wir sie im bin-Verzeichnis von mongodb hinzufügen. Führen Sie den folgenden Befehl direkt aus, um die Testdatenbank aufzurufen. Sie können diesen Benutzer hinzufügen, löschen, ändern und überprüfen Der Name und das Passwort sind in mongoVUE verbunden:

./mongo -h 192.168.0.201 --port 27017 -u test -p 123456 -d test
Nach dem Login kopieren


Aber wenn es auf die zweite Art erstellt wird und Sie den obigen Befehl direkt verwenden, wird dies angezeigt Die Überprüfung ist nur dann fehlgeschlagen, wenn Sie zuerst mongo eingeben Die Shell wird mit der Admin-Datenbank verbunden und kann dann beim Wechsel zur Testdatenbank überprüft werden. Dies ist eine kleine Gefahr. Wer die Situation nicht kennt, ist vielleicht sehr verwirrt. Es ist klar, dass der Benutzername und das Passwort in Ordnung sind, aber aus irgendeinem Grund kann keine Verbindung hergestellt werden.

7. Die Standard-Datenspeichermethode von mongodb3.0 ist immer noch die gleiche wie die von mongodb 2.6. Ich habe versucht, beim Start auf die neue Speichermethode umzusteigen dass keine Daten in der Datenbank vorhanden sein müssen. Dies ist nur möglich, wenn die Daten erforderlich sind, andernfalls wird ein Fehler gemeldet:

Verschiedene andere Parameter für den Start, wie z. B. dbpath, logpath usw ., werden in mongodb.conf konfiguriert.
./mongod -f /mongodb304/conf/mongodb.conf --storageEngine wiredTiger
Nach dem Login kopieren


Der obige Inhalt ist eine Zusammenfassung der Tipps und Vorsichtsmaßnahmen für den täglichen Gebrauch von MongoDB. Ich hoffe, dass er allen helfen kann.

Verwandte Empfehlungen:

Was ist die MongoDB-Datenbank?

Wie phpstudy MongoDB erweitert

So verbessern Sie die Sicherheit von MongoDB

Das obige ist der detaillierte Inhalt vonZusammenfassung der MongoDB-Tipps und Vorsichtsmaßnahmen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

<🎜>: Bubble Gum Simulator Infinity - So erhalten und verwenden Sie Royal Keys
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusionssystem, erklärt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1670
14
PHP-Tutorial
1276
29
C#-Tutorial
1256
24
Verwenden Sie den Komponisten, um das Dilemma von Empfehlungssystemen zu lösen: Andres-Montanez/Empfehlungen-Bundle Verwenden Sie den Komponisten, um das Dilemma von Empfehlungssystemen zu lösen: Andres-Montanez/Empfehlungen-Bundle Apr 18, 2025 am 11:48 AM

Bei der Entwicklung einer E-Commerce-Website habe ich auf ein schwieriges Problem gestoßen: So liefern Sie den Benutzern personalisierte Produktempfehlungen. Anfangs habe ich einige einfache Empfehlungsalgorithmen ausprobiert, aber die Ergebnisse waren nicht ideal und die Benutzerzufriedenheit war ebenfalls betroffen. Um die Genauigkeit und Effizienz des Empfehlungssystems zu verbessern, habe ich mich entschlossen, eine professionellere Lösung zu übernehmen. Schließlich habe ich Andres-Montanez/Empfehlungen durch den Komponisten installiert, was nicht nur mein Problem löste, sondern auch die Leistung des Empfehlungssystems erheblich verbesserte. Sie können Komponist über die folgende Adresse lernen:

Navicat -Methode zum Anzeigen von MongoDB -Datenbankkennwort Navicat -Methode zum Anzeigen von MongoDB -Datenbankkennwort Apr 08, 2025 pm 09:39 PM

Es ist unmöglich, das MongoDB -Passwort direkt über Navicat anzuzeigen, da es als Hash -Werte gespeichert ist. So rufen Sie verlorene Passwörter ab: 1. Passwörter zurücksetzen; 2. Überprüfen Sie die Konfigurationsdateien (können Hash -Werte enthalten). 3. Überprüfen Sie Codes (May Hardcode -Passwörter).

So wählen Sie eine Datenbank für GitLab auf CentOS aus So wählen Sie eine Datenbank für GitLab auf CentOS aus Apr 14, 2025 pm 04:48 PM

Die GitLab -Datenbank -Bereitstellungshandbuch zum CentOS -System zur Auswahl der richtigen Datenbank ist ein wichtiger Schritt bei der erfolgreichen Bereitstellung von GitLab. GitLab ist mit einer Vielzahl von Datenbanken kompatibel, darunter MySQL, PostgreSQL und MongoDB. In diesem Artikel wird ausführlich erklärt, wie Sie diese Datenbanken auswählen und konfigurieren. Datenbankauswahlempfehlung MySQL: Ein weit verbreitetes relationales Datenbankverwaltungssystem (RDBMS) mit stabiler Leistung und für die meisten GitLab -Bereitstellungsszenarien geeignet. PostgreSQL: leistungsstarke Open -Source -RDBMs unterstützt komplexe Abfragen und erweiterte Funktionen, die für die Behandlung großer Datensätze geeignet sind. MongoDB: beliebte NoSQL -Datenbank, gut im Umgang mit See

Was ist die CentOS MongoDB -Backup -Strategie? Was ist die CentOS MongoDB -Backup -Strategie? Apr 14, 2025 pm 04:51 PM

Detaillierte Erläuterung der effizienten Backup -Strategie von MongoDB im CentOS -System Dieser Artikel wird die verschiedenen Strategien zur Implementierung der MongoDB -Sicherung im CentOS -System ausführlich einführen, um die Datensicherheit und die Geschäftsübergang zu gewährleisten. Wir werden manuelle Backups, zeitgesteuerte Sicherungen, automatisierte Skriptsicherungen und Sicherungsmethoden in Docker -Containerumgebungen abdecken und Best Practices für die Verwaltung von Sicherungsdateien bereitstellen. Handbuch Sicherung: Verwenden Sie den Befehl mongodump, um eine manuelle vollständige Sicherung durchzuführen.

MongoDB und relationale Datenbank: Ein umfassender Vergleich MongoDB und relationale Datenbank: Ein umfassender Vergleich Apr 08, 2025 pm 06:30 PM

MongoDB und relationale Datenbank: Eingehender Vergleich In diesem Artikel werden die Unterschiede zwischen der NOSQL-Datenbank MongoDB und traditionellen relationalen Datenbanken (wie MySQL und SQLServer) eingehend untersucht. Relationale Datenbanken verwenden Tabellenstrukturen von Zeilen und Spalten, um Daten zu organisieren, während MongoDB flexible dokumentorientierte Modelle verwendet, um den Anforderungen moderner Anwendungen besser entsprechen. Unterscheidet hauptsächlich Datenstrukturen: Relationale Datenbanken verwenden vordefinierte Schema -Tabellen, um Daten zu speichern, und die Beziehungen zwischen Tabellen werden durch Primärschlüssel und Fremdschlüssel hergestellt. MongoDB verwendet JSON-ähnliche BSON-Dokumente, um sie in einer Sammlung zu speichern, und jede Dokumentstruktur kann unabhängig geändert werden, um mustfreies Design zu erreichen. Architektures Design: Relationale Datenbanken müssen ein festgelegtes festes Schema vor definiert werden. MongoDB unterstützt

So richten Sie Benutzer in MongoDB ein So richten Sie Benutzer in MongoDB ein Apr 12, 2025 am 08:51 AM

Befolgen Sie die folgenden Schritte, um einen MongoDB -Benutzer einzurichten: 1. Stellen Sie eine Verbindung zum Server her und erstellen Sie einen Administratorbenutzer. 2. Erstellen Sie eine Datenbank, um Benutzern Zugriff zu gewähren. 3.. Verwenden Sie den Befehl createUser, um einen Benutzer zu erstellen und seine Rolle und Datenbankzugriffsrechte anzugeben. V. 5. Legen Sie optional andere Berechtigungen oder Gewährung der Benutzer Berechtigungen für eine bestimmte Sammlung ein.

So verschlüsseln Sie Daten in Debian MongoDB So verschlüsseln Sie Daten in Debian MongoDB Apr 12, 2025 pm 08:03 PM

Verschlüsseln Sie die MongoDB -Datenbank in einem Debian -System erfordert die folgenden Schritte: Schritt 1: Stellen Sie zuerst die MongoDB -Installation durch, dass Ihr Debian -System MongoDB installiert hat. Wenn nicht, lesen Sie bitte das offizielle MongoDB-Dokument für die Installation: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-debian/step 2: Generieren Sie die Verschlüsselungsschlüsseldatei Erstellen Sie eine Datei, die die Verschlüsselungsschlüssel enthält, und setzen

Was sind die Werkzeuge, um eine Verbindung zu MongoDB herzustellen? Was sind die Werkzeuge, um eine Verbindung zu MongoDB herzustellen? Apr 12, 2025 am 06:51 AM

Die Hauptwerkzeuge für die Verbindung zu MongoDB sind: 1. MongoDB -Shell, geeignet, um Daten schnell anzusehen und einfache Vorgänge auszuführen; 2. Programmiersprach -Treiber (wie Pymongo, MongoDB Java -Treiber, MongoDB -Knoten.js -Treiber), geeignet für die Anwendungsentwicklung, aber Sie müssen die Verwendungsmethoden beherrschen. 3. GUI -Tools (z. B. Robo 3T, Compass) bieten eine grafische Schnittstelle für Anfänger und die schnelle Datenzusatz. Bei der Auswahl von Tools müssen Sie Anwendungsszenarien und Technologiestapel berücksichtigen und auf die Konfiguration der Verbindungszeichenfolge, die Berechtigungsverwaltung und die Leistungsoptimierung achten, z. B. die Verwendung von Verbindungspools und -indizes.

See all articles