Installazione di MongoDB su Ubuntu 18.04

In questo tutorial andremo a descrivere passo passo l’installazione del database open source MongoDB su Linux Ubuntu 18.04.

Consideriamo di partire da una macchina virtuale Ubuntu 18.04 ( per l’installazione seguire l’ articolo) ed aggiorniamola

sudo apt-get update

sudo apt-get upgrade

installiamo il database MongoDB

sudo apt-get install mongodb

abilitiamo l’avvio automatico al boot

sudo systemctl enable mongodb

e verifichiamo lo stato

sudo systemctl status mongodb

avremo il seguente risultato

● mongodb.service – An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-09-13 11:51:04 CEST; 2min 52s ago
Docs: man:mongod(1)
Main PID: 19447 (mongod)
Tasks: 23 (limit: 1113)
CGroup: /system.slice/mongodb.service
└─19447 /usr/bin/mongod –unixSocketPrefix=/run/mongodb –config /etc/mongodb.conf

set 13 11:51:04 ubuntutest systemd[1]: Started An object/document-oriented database.

Tra le possibili configurazioni di MongoDb è possibile cambiare la porta di ascolto di default è 27017 dal file di configurazione principale

sudo vim /etc/mongodb.conf

di default è commentata, ma è possibile decommentarla ed inserire una porta differente, ad esempio

port = 2727

ed impostiamo sempre nella configurazione di MongoDB, il legame del motore all’indirizzo del server stesso per eventuali accessi da remoto

bind =127.0.0.1,ip_server

supponiamo di considerare la porta standard di MongoDB, per l’accesso da remoto al server MongoDB abilitiamo la porta sul firewall

sudo ufw allow 27017

Regola aggiunta
Regola aggiunta (v6)

Per rendere si curo l’accesso al database, configuriamo un utente amministratore

mongo

avremo differenti warning per il controllo degli accessi, in particolare

2018-09-13T11:51:04.554+0200 I STORAGE [initandlisten]
2018-09-13T11:51:04.554+0200 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2018-09-13T11:51:04.554+0200 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem
2018-09-13T11:51:05.791+0200 I CONTROL [initandlisten]
2018-09-13T11:51:05.791+0200 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-09-13T11:51:05.791+0200 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2018-09-13T11:51:05.791+0200 I CONTROL [initandlisten]

per avere evidenza dei database iniziali eseguiamo

> show dbs

admin 0.000GB
config 0.000GB
local 0.000GB

selezioniamo il database admin

> use admin

ed aggiungiamo l’utente admin

> db.createUser({user:"admin", pwd:"test", roles:[{role:"root", db:"admin"}]})

avremo

Successfully added user: {
“user” : “admin”,
“roles” : [
{
“role” : “root”,
“db” : “admin”
}
]
}

a questo punto possiamo uscire

>exit

Modifichiamo il servizio di avvio automatico

vim /lib/systemd/system/mongodb.service

e modifichiamo la riga di esecuzione del demone mongod

ExecStart=/usr/bin/mongod –auth –unixSocketPrefix=${SOCKETPATH} –config ${CONF} $DAEMON_OPTS

systemctl daemon-reload

systemctl restart mongodb

Possiamo accedere al database attraverso il seguente comando

mongo localhost:27017 -u admin -p

dopo aver inserito la password possiamo creare un database di esempio

>use test

switched to db test

creiamo l’utente

>db.users.save( {username:"test1"} )

WriteResult({ “nInserted” : 1 })

verifichiamo l’esistenza

>db.users.find( {username:"test1"} )

{ “_id” : ObjectId(“5b9a5dd6618a26a3d7c227e3”), “username” : “test1” }

controlliamo l’effetiva esistenza del database

>show dbs

admin 0.000GB
config 0.000GB
local 0.000GB
test 0.000GB

 

Potrebbero interessarti anche...

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi