Utolsó frissítés: 14.11.2018
A MongoDB telepítéséhez töltsön le egy újraterjeszthető csomagot a hivatalos webhelyről: https://www.mongodb.com/download-center/community.
A hivatalos webhely terjesztési csomagokat kínál különféle platformokhoz: Windows, Linux, MacOS, Solaris. És minden platformhoz több disztribúció is elérhető. És kétféle szerver létezik – Community és Enterprise. BAN BEN ez az eset telepítenie kell a közösségi verziót. Bár az Enterprise verziónak van még néhány funkciója, csak próba módban vagy előfizetéssel érhető el.
Az írás idején a platform legújabb verziója a 4.0.4 volt. Egy adott verzió használata kissé eltérhet a MongoDB platform más verzióitól.
A szükséges funkciók betöltéséhez válassza ki a kívánt operációs rendszert és a megfelelő csomagtípust:
Windows esetén kiválaszthatja a "ZIP" csomagtípust, vagyis letöltheti a szervert archívumként.
Ha már több mint korai változat MongoDB, akkor törölni kell, és az egyébként létrehozott adatbázisokat törölni kell.
Az archív csomag letöltése után csomagolja ki a C:\mongodb mappába.
Ha a telepítés után megnyitjuk a C:\mongodb\bin mappát, akkor ott egy csomó olyan alkalmazást találunk, amelyek meghatározott szerepet töltenek be. Tekintsük őket röviden.
bsondump: beolvassa a BSON-fájlok tartalmát, és olvasható formátumba konvertálja azokat, például JSON
mongo : konzolfelületet biztosít az adatbázisokkal való interakcióhoz, egyfajta konzolkliens
mongod: MongoDB adatbázis-kiszolgáló. Feldolgozza a kéréseket, kezeli az adatformátumot és különböző adatbázis-kezelési műveleteket végez a háttérben.
mongodump: adatbázis biztonsági mentési segédprogram
mongoexport: segédprogram adatok exportálására JSON, TSV vagy CSV formátumba
mongofiles: GridFS rendszeren lévő fájlok kezelésére szolgáló segédprogram
mongoimport: olyan segédprogram, amely JSON-, TSV- vagy CSV-adatokat importál MongoDB-adatbázisba
mongorestore: lehetővé teszi, hogy adatokat írjon a mongodump által létrehozott dumpból egy új vagy meglévő adatbázisba
mongos: egy MongoDB útválasztó szolgáltatás, amely segít a kérések feldolgozésében és az adatok megtalálásában a MongoDB-fürtben
mongorestat: az adatbázis-műveletek számlálóit jelöli
mongotop : lehetőséget ad az olvasási-írási műveletekkel eltöltött idő megszámlálására az adatbázisban
A telepítés után létre kell hoznia egy könyvtárat a merevlemezen, amely tartalmazza a MongoDB adatbázisokat.
Windows rendszeren a MongoDB alapértelmezés szerint a C:\data\db címen tárolja az adatbázisokat, így ha Windowst használ, létre kell hoznia a megfelelő könyvtárat. Linux és MacOS rendszeren az alapértelmezett könyvtár a /data/db.
Ha más fájl elérési útra van szükség, akkor átadható a MongoDB indításakor a --dbpath kapcsolóban.
Tehát az adatbázis tárolására szolgáló könyvtár létrehozása után elindíthatja a MongoDB szervert. A szerver a mongod alkalmazást képviseli, amely a bin mappában található. Ehhez fussunk parancs sor(Windows alatt) vagy a konzolon Linux alatt, és ott írja be a megfelelő parancsokat. Windows esetén ez így fog kinézni:
A parancssor számos szolgáltatási információt jelenít meg számunkra, például azt, hogy a szerver a 27017-es porton futó localhost-on fut.
A szerver sikeres indítása után pedig a mongo shell-en keresztül tudunk majd műveleteket végezni az adatbázissal. Ez a shell a mongo.exe fájlt képviseli, amely a fenti telepítési mappában található. Futtassuk ezt a fájlt:
Ez egy konzolhéj a szerverrel való interakcióhoz, amelyen keresztül kezelheti az adatokat. A shell második sora azt mondja, hogy csatlakozz a mongod szerverhez.
Most tegyünk néhány egyszerű dolgot. Írja be egymás után a következő parancsokat mongo nyelven, és minden parancs után nyomja meg az Enter billentyűt:
A db.users.save(( név: "Tom" )) db.users.find() teszt használata
A first use test parancs beállítja a használandó tesztadatbázist. Ha nincs is ilyen adatbázis, az automatikusan létrejön. Ezután a db az aktuális adatbázist fogja képviselni - azaz a tesztadatbázist. A db után jönnek a felhasználók, ami egy gyűjtemény, ahol aztán hozzáadunk egy új objektumot. Ha az SQL-ben előre táblákat kell létrehoznunk, akkor a MongoDB önállóan hoz létre gyűjteményeket, ha azok hiányoznak.
A db.users.save() metódus hozzáad egy objektumot (név: "Tom") a tesztadatbázis felhasználói gyűjteményéhez. A hozzáadandó objektum leírása olyan formátumban van megadva, amelyet Ön ismerhet, ha már foglalkozott a JSON formátummal. Ez azt jelenti, hogy ebben az esetben az objektumnak egy kulcs "név" van megadva, amely a "Tom" értékre van leképezve. Vagyis hozzáadunk egy Tom nevű felhasználót.
Ha az objektumot sikeresen hozzáadta, a konzol a WriteResult(( "nInserted" : 1 )) kifejezésként adja ki az eredményt.
A harmadik parancs pedig a db.users.find() megjeleníti az összes objektumot a tesztadatbázisból.
A kimenetből láthatja, hogy néhány homályos ObjectId mezőt hozzáadtak az objektum kezdeti értékeihez. Mint emlékszik, a MongoDB az _id mezőt használja egyedi dokumentumazonosítóként. És ebben az esetben az ObjectId csak az _id azonosító értékét képviseli.
Természetesen a mongo konzolon keresztül is dolgozhatunk, objektumok hozzáadásával és megjelenítésével az adatbázisban. De azt is szeretnénk, ha a mongoDB kölcsönhatásba lépne PHP, C++, C# és más programozási nyelveken írt alkalmazásainkkal. És erre a célra speciális meghajtókra van szükségünk.
A https://docs.mongodb.com/ecosystem/drivers/ külső oldalon olyan programozási nyelvekhez talál illesztőprogramokat, mint a PHP, C++, C#, Java, Python, Perl, Ruby, Scala stb.
A MongoDB egy népszerű nem relációs adatbázis-megvalósítás. Dióhéjban, többféle adatbázis létezik. A relációs típusú adatbázisok, a legnépszerűbbek, egy oszlopokból és sorokból álló tábla rekordjaiban tárolják az adatokat. A MongoDB az objektumorientált típushoz tartozik.
Ennek a típusnak a fő különbsége, hogy a munka és az adatok tárolása objektumok segítségével történik, akárcsak a népszerű objektív orientált programozási nyelvekben (C ++, Java). Ebben az oktatóanyagban megmutatom, hogyan telepítheti a MongoDB-t Ubuntu-ra.
Mivel a program nem került fel a hivatalos Ubuntu tárolóba, a saját MongoDB tárhelyünkből fogjuk telepíteni. Először is integrálnia kell a nyilvános kulcsot, hogy a rendszer általában elfogadja a csomagot, ehhez írja be a terminálba:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
Hozzon létre egy listát a csomagfájlokról a következő paranccsal:
echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
Frissítse a helyi csomagadatbázist:
sudo apt-get frissítés
És folytathatja a telepítést:
sudo apt-get install -y mongodb-org
Először indítsa el a szolgáltatást a következő paranccsal:
sudo szolgáltatás mongod start
Ennyi, most elindíthatja a Mongo konzolklienst, és elkezdheti az adatbázissal való munkát.
A szolgáltatásnaplók megtekinthetők a /var/log/mongodb mappában, az adatbázisfájlokban - /var/lib/mongodb
2013. június 25
Elhatározta, hogy megismerkedem a NoSQL típusú adatbázisokkal. Az ismerkedés kedvéért a MongoDB mellett döntöttem, mert. Azért választottam ezt a DBMS-t, mert gyakran találkoztam vele a különböző blogokon található cikkekben. Ha eldöntött valamit, jobb, ha nem halasztja sokáig, amit én meg is tettem. A szoftverrel való bármilyen ismerkedés a telepítéssel kezdődik, amelyet az alábbiakban ismertetünk. Windows szolgáltatásként telepítjük.
1. Először le kell töltenie a disztribúciót a hivatalos webhelyről: http://www.mongodb.org/downloads
2. Miután letöltötte az archívumot, csomagolja ki egy könyvtárba, például g:\webservwe\mongodb (ebben a könyvtárban kell tartalmaznia a bin könyvtárat)
3. Az adatbázisfájlokhoz hozza létre az adatkönyvtárat (g:\webservwe\mongodb\data)
4. A g:\webservwe\mongodb könyvtárban hozzon létre egy mongod.cfg fájlt a következő tartalommal:
logpath=g:\webserver\mongodb\log\mongo.log dbpath=G:\webserver\mongodb\data
5. A parancssorban futtassa rendszergazdaként, és hajtsa végre a következő parancsot:
G:\webserver\mongodb\bin\mongod.exe –config G:\webserver\mongodb\mongod.cfg –telepítés
6. És végül ellenőrizze a munkát:
Elindítjuk a mongo.exe klienst, és kiírjuk a következő parancsokat:
db.test.save(( a: 1 )) db.test.find()
A képernyőn valami ilyesmit kell megjelenítenie:
( "_id" : ObjectId("51c89ca80db214128714caca"), "a" : 1 )
A MongoDB egy adatbázis-kezelő rendszer, amely nagyon különbözik a MySQL-től. A fő különbség az, hogy benne MySQL lekérdezések be vannak írva SQL nyelvés a MongoDB-ben a BSON-on (bináris JSON). Ez azt jelenti, hogy ezzel a rendszerrel elsősorban JavaScript-kifejezéseken keresztül lehet dolgozni.
A MongoDB saját segédprogramot is tartalmaz az adatbázissal való együttműködést célzó parancsok végrehajtására. Ebben a cikksorozatban a következő témákkal foglalkozunk:
A fejlesztők könnyen felgyorsulhatnak a Mongo használatában, ha ismerik a JSON-t. Ez a formátum olyan kifejezéseket használ, amelyek "kulcs": "érték" párokból állnak.
A nem táblázatos DBMS-ek között sok felhasználó választja a MongoDB-t. Először, ezt a rendszert szinte mindenre telepíthető operációs rendszer(Windows, OSX, Linux). Másodszor, a projekt még mindig aktívan fejlődik, és a fejlesztőcsapat irigylésre méltó gyakorisággal tesz közzé frissítéseket. Azt is gondolom, hogy a MongoDB jó dokumentációt biztosít a kezdőknek.
A MongoDB jobban megfelel, ha a táblák objektumként ábrázolhatók. Véleményem szerint az ilyen rendszerek jobban használhatók alkalmazások fejlesztése során mobil eszközök. Ebben a tekintetben a Mongo külön könyvtárakat biztosít iOS és Adndroid számára.
Egy másik erős érv a MongoDB mellett: ezzel a rendszerrel számos programozási nyelven dolgozhat, mint például a C / C ++, Python, PHP, Rubym Perl, .NET és még a Node.js is.
A MongoDB az igazi, ha vissza akar lépni az SQL-től, és valami újat szeretne kipróbálni.
Mielőtt folytatná a MongoDB telepítését, ismerjük meg az alapfogalmakat.
A MySQL-hez hasonlóan a MongoDB is sok adatbázist tartalmazhat, csak táblák helyett "gyűjteményeket" tartalmaznak.
A gyűjtemény olyan, mint egy táblázat, csak oszlopok nélkül. Ehelyett minden sor rekordkészleteket tartalmaz kulcs:érték formában.
Példa:
A Felhasználók gyűjteményben (users) található egy bejegyzés a keresztnév (keresztnév) és vezetéknév (vezetéknév) kulcsokkal. Ugyanakkor ugyanaz a gyűjtemény tartalmazhat bejegyzést más kulcsokkal is: keresztnév, vezetéknév, e-mail, születés (születésnap). Ebben rejlik a MongoDB rugalmassága.
Ezen bejegyzések vagy sorok mindegyikét „dokumentumnak” nevezik, de ez nem .txt vagy .html formátumú dokumentum. Ez a bejegyzés JSON formátumban tárolják a memóriában.
Példa:
Tegyük fel, hogy gyűjteményünk 500 dokumentumot tartalmaz. Mint korábban említettük, mindegyik más-más mezőt tartalmazhat. Az egyetlen mező, amelyet minden bejegyzésnek tartalmaznia kell, egy egyedi azonosító (id), amely automatikusan hozzáadódik.
Eleinte ez a terminológia ismeretlen lehet. Minden sokkal világosabb lesz, ha meglátja a DBMS-sel való munkát a gyakorlatban.
Először töltse le az archívumot a MongoDB segítségével win32 vagy win64 rendszerhez.
Csomagolja ki a letöltött archívumot, és helyezze el például a C meghajtóra, a mongodb könyvtárba. Ezenkívül győződjön meg arról, hogy a bin könyvtár elérhető a C:\mongodb\bin helyen.
Ezután az operációs rendszerünk beállításaiba írjuk be a bin mappa elérési útját, hogy bárhonnan elérhessük ennek a mappának az .exe fájljait. Tehát kattintson jobb gombbal a Számítógép - Tulajdonságok elemre. A bal oldali listában válassza a "Speciális rendszerbeállítások" lehetőséget:
A megnyíló ablakban keresse meg a Path system változót. Kétszer kattintunk rá. A „változó érték” mezőben menjen a legvégére, és tegye a „;” jelet. és adja meg a bin könyvtár elérési útját:
Nagy! Kattintson az "ok" gombra, és folytassa a következő lépéssel.
Először is létre kell hoznunk egy könyvtárat, ahol az adatbázisainkat tároljuk. Például C:\databases . Hozzuk létre ezt a mappát.
echo logpath=C:\mongodb\log\mongo.log > C:\mongodb\mongod.cfg
Ez a parancs egy speciális naplófájlt és konfigurációs beállításokat hoz létre a szolgáltatáshoz.
Mongod --config C:\mongodb\mongod.cfg --install
A futtatás előtt szerkesszük a mongod.cfg fájlt, hogy tartalmazza a dbpath beállítást – az adatbázismappánk elérési útját. Az én esetemben a fájl szerkesztése után a tartalmának valahogy így kell kinéznie:
logpath=C:\mongodb\log\mongo.log dbpath=C:\databases
Visszatérünk a parancssorba, és elindítjuk a MongoDB szolgáltatást:
Net start MongoDB
Annak ellenőrzéséhez, hogy a szolgáltatás automatikusan elindul-e, nyomja meg a „windows + r” billentyűkombinációt, írja be a „services.msc” kifejezést, majd kattintson az OK gombra.
A szolgáltatások listájában keressük a MongoDB-t, és ha az indítási típusa nem automatikus, akkor ezt az elemet úgy állítjuk be, hogy először jobb gombbal kattintunk és kiválasztjuk a „tulajdonságokat”.
Most, hogy létrehoztunk egy szolgáltatást, amely elindítja a MongoDB-t, amikor a számítógép be van kapcsolva, ezt nem kell kézzel tennünk.
A MongoDB teszteléséhez nyisson meg egy parancssort, és írja be:
A válaszban a következő sort kell látnia:
Tehát a MongoDB telepítve és konfigurálva van. A következő részben megvizsgáljuk a DBMS-sel való munkavégzés fő parancsait.
A MongoDB egy nyílt forráskódú NoSQL adatbázis-kezelő rendszer. forráskód, amelyet széles körben használnak a modern alkalmazásokban. Ebben a cikkben leírjuk a MongoDB telepítésének folyamatát a kiszolgálóra éles környezetben való használatra.
A cikk közzététele idején a hivatalos Ubuntu 16.04 tárolókból származó MongoDB-csomagok még nem frissültek a használatra. új rendszer inicializálás systemd , . Ha ezekkel a csomagokkal együtt telepíti a MongoDB-t egy új Ubuntu 16.04-es kiszolgálón, akkor egy extra szükséges a MongoDB rendszerszolgáltatásként történő beállításához, amely automatikusan elindul a kiszolgáló indításakor.
A cikkben található utasítások követéséhez szükség van egy Ubuntu 16.04-szerverre, amely az útmutatónk utasításai szerint van konfigurálva, beleértve a nem root felhasználó beállítását.
A MongoDB azonban elérhető a szabványos Ubuntu-tárolókból, azonban a legtöbb telepítéshez legújabb verziói ajánlott a hivatalos MongoDB tárhely használata. Ebben a lépésben hozzáadjuk ezt a tárolót a szerverünkhöz.
Az Ubuntu a GPG-kulcs-aláírások ellenőrzésével hitelesíti a csomagokat, ezért először importálnunk kell a hivatalos MongoDB tárolókulcsot.
A kulcs sikeres importálása után a következő kimenet jelenik meg:
Gpg: Teljes feldolgozott szám: 1 gpg: importált: 1 (RSA: 1)
Ehhez futtassa a következő parancsot:
A tároló hozzáadása után frissítenünk kell a csomagok listáját.
Most már telepíthetjük a MongoDB csomagokat.
Ez a parancs több olyan csomagot telepít, amelyek a MongoDB legújabb stabil verzióját tartalmazzák, valamint néhány MongoDB kiszolgálókonfigurációs eszközt.
A MongoDB Ubuntu 16.04 szolgáltatásként való futtatásához létre kell hoznunk egy egységfájlt, amely leírja ezt a szolgáltatást. Egységfájlok megmondja a rendszernek, hogyan kell kezelni a megfelelő erőforrásokat. Az egységfájl leggyakoribb típusa a szolgáltatás, amely meghatározza egy adott szolgáltatás indításának és leállításának módját. Ez a fájl azt is jelzi, hogy a megfelelő szolgáltatást el kell-e indítani a rendszer indításakor, és azt is, hogy a szolgáltatás függ-e más szoftverektől.
Létrehozunk egy egységfájlt a MongoDB szolgáltatás kezeléséhez. Hozd létre a mongodb.service konfigurációs fájlt az /etc/systemd/system könyvtárban nano vagy bármely más szövegszerkesztő segítségével.
Illessze be a következő szöveget ebbe a fájlba, mentse és zárja be.
/etc/systemd/system/mongodb.service
Description=Nagy teljesítményű, sémamentes dokumentum-orientált adatbázis After=network.target User=mongodb ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf WantedBy=multi-user.target
Ennek a fájlnak egyszerű a felépítése:
Szakasz Mértékegység a MongoDB szolgáltatás leírása, valamint függőségei, amelyeket a szolgáltatás elindítása előtt teljesíteni kell. Esetünkben a MongoDB megköveteli internetkapcsolat futni, ezért megadtuk a network.target direktívát.
Szakasz Szolgáltatás leírja a szolgáltatás indításának paramétereit. A User direktíva meghatározza, hogy a szolgáltatás mongodb felhasználóként induljon el, az ExecStart direktíva pedig a MongoDB kiszolgáló indításának parancsát adja meg.
Utolsó szakasz Telepítés megmondja a systemd-nek, hogy mikor kell automatikusan elindítani a szolgáltatást. A multi-user.target paraméter beállítja a szabványos indítási sorrendet, ami azt jelenti, hogy a szerver automatikusan elindul a rendszerindítási folyamat során.
Ez a parancs nem ad ki semmit a konzolnak a befejezés után. A systemctl segítségével ellenőrizhetjük, hogy a szolgáltatás sikeresen elindult-e.
Az utolsó dolog, amit meg kell tennünk, hogy engedélyezzük a MongoDB automatikus indulását a rendszer indításakor.
A MongoDB szerver most be van állítva és fut, és a systemctl paranccsal vezérelheti (pl. sudo systemctl mongodb stop, sudo systemctl mongodb start).
Ha követte a mi utasításainkat, és tűzfalat állított be a szerverén, a MongoDB szerver nem lesz elérhető az internetről.
Ha azt tervezi, hogy a MongoDB kiszolgálót csak helyileg használja ugyanazon a kiszolgálón futó alkalmazásokkal, akkor ez a legbiztonságosabb és ajánlott beállítás. Ha szeretné elérni a MongoDB szervert az interneten keresztül, akkor be kell állítania a bejövő kapcsolatokat az ufw -ban.
A MongoDB-hez való hozzáférést az alapértelmezett 27017-es porton bárhonnan engedélyezheti sudo parancs ufw engedélyezi a 27017-et. Azonban engedélyt távoli hozzáférés Interneten keresztül a MongoDB szerverhez alapértelmezett beállításokkal teljes hozzáférést biztosít az adatbázis-kiszolgálóhoz.
Leggyakrabban a MongoDB-t csak bizonyos alkalmazásokból szabad elérni, amelyek korábban másokon találhatók. ismert szerverek. Ehhez engedélyezhetjük a MongoDB alapértelmezett portjához való hozzáférést a MongoDB-hez csatlakozásra jogosult kiszolgálók IP-címének megadásával.
Az ufw tűzfal beállításait a következő paranccsal ellenőrizheti.
A kimenetben látnia kell, hogy a forgalom engedélyezett a 27017-es porton. Ha úgy dönt, hogy csak bizonyos IP-címekről engedélyezi a forgalmat, akkor ezek az IP-címek jelennek meg a szó helyett Bárhol.
Állapot: aktív Cselekvésre innen -- ------ ---- 27017 ALLOW Anywhere OpenSSH ALLOW Anywhere 27017 (v6) ALLOW Anywhere (v6) OpenSSH (v6) ALLOW Anywhere (v6)
A részletesebb tűzfalbeállítások leírása a cikkben található.
Többet is megnézhet részletes utasításokat a MongoDB telepítéséhez és konfigurálásához.