MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come installare MongoDB su Ubuntu 18.04

MongoDB è un moderno sistema di gestione di database di documenti open source progettato per la persistenza dei dati ad alte prestazioni, l'elevata disponibilità e il ridimensionamento automatico, basato sulla tecnologia all'avanguardia di NoSQL . Sotto MongoDB , un record è un documento, che è una struttura di dati che comprende coppie di campi e valori (i documenti MongoDB sono paragonabili agli oggetti JSON).

Poiché fornisce prestazioni elevate e caratteristiche di grande scalabilità, viene utilizzato per la creazione di applicazioni moderne che richiedono database potenti, mission-critical e ad alta disponibilità.

In questo articolo spiegheremo come installare MongoDB , gestisci il suo servizio e imposta l'autenticazione di base su Ubuntu 18.04 .

Importante :Tieni presente che gli sviluppatori di MongoDB offri solo pacchetti per LTS a 64 bit (supporto a lungo termine) Versioni di Ubuntu come 14.04 LTS (fidato), 16.04 LTS (xenial) e così via.

Passaggio 1:installazione di MongoDB su Ubuntu 18.04

1. I repository di pacchetti software ufficiali di Ubuntu vengono forniti con l'ultima versione di MongoDB e può essere facilmente installato utilizzando il gestore di pacchetti APT.

Per prima cosa aggiorna la cache del pacchetto software di sistema per avere la versione più recente degli elenchi di repository.

$ sudo apt update

2. Quindi, installa il pacchetto MongoDB che include molti altri pacchetti come mongo-tools , client-mongodb , server mongodb e mongodb-server-core .

$ sudo apt install mongodb

3. Una volta installato correttamente, il servizio MongoDB si avvierà automaticamente tramite systemd e il processo sarà in ascolto sulla porta 27017 . Puoi verificarne lo stato usando il comando systemctl come mostrato.

$ sudo systemctl status mongodb

Fase 2:gestione del servizio MongoDB

4. Il MongoDB l'installazione viene fornita come servizio systemd e può essere facilmente gestita tramite i comandi systemd standard come mostrato.

Per interrompere l'esecuzione del servizio MongoDB, esegui il comando seguente.

$ sudo systemctl stop mongodb	

Per avviare un servizio MongoDB, digita il seguente comando.

$ sudo systemctl start mongodb

Per riavviare un servizio MongoDB, digita il seguente comando.

$ sudo systemctl restart mongodb	

Per disabilitare il servizio MongoDB avviato automaticamente, digita il seguente comando.

$ sudo systemctl disable mongodb	

Per abilitare nuovamente il servizio MongoDB, digita il seguente comando.

$ sudo systemctl enable mongodb	

Fase 3:abilita l'accesso remoto a MongoDB sul firewall

5. Per impostazione predefinita MongoDB gira sulla porta 27017 , per consentire l'accesso da qualsiasi luogo tu possa utilizzare.

$ sudo ufw allow 27017

Ma consentendo l'accesso a MongoDB da ovunque dà accesso illimitato ai dati del database. Quindi, è meglio consentire l'accesso a una posizione dell'indirizzo IP specifico sulla porta predefinita di MongoDB utilizzando il seguente comando.

$ sudo ufw allow from your_server_IP/32 to any port 27017 
$ sudo ufw status

6. Di default la porta 27017 è in ascolto sull'indirizzo locale 127.0.0.1 solo. Per consentire connessioni MongoDB remote, devi aggiungere l'indirizzo IP del tuo server a /etc/mongodb.conf file di configurazione come mostrato.

bind_ip = 127.0.0.1,your_server_ip
#port = 27017

Salva il file, esci dall'editor e riavvia MongoDB.

$ sudo systemctl restart mongodb

Fase 4:crea l'utente root e la password del database MongoDB

7. Per impostazione predefinita MongoDB viene fornito con l'autenticazione dell'utente disabilitata, quindi viene avviato senza controllo dell'accesso. Per avviare la conchiglia mongo , esegui il comando seguente.

$ mongo 

8. Dopo esserti connesso a mongo shell , puoi elencare tutti i database disponibili con il seguente comando.

> show dbs

9. Per abilitare il controllo dell'accesso sulla tua distribuzione MongoDB per imporre l'autenticazione; richiedere agli utenti di identificarsi ogni volta che si connettono al server del database.

MongoDB utilizza il Meccanismo di autenticazione Salted Challenge Response (SCRAM ) meccanismo di autenticazione per impostazione predefinita. Utilizzo di SCRAM , MongoDB verifica le credenziali utente fornite rispetto al nome utente, alla password e al database di autenticazione (il database in cui è stato creato l'utente e, insieme al nome dell'utente, serve per identificare l'utente).

Devi creare un amministratore utente (analogo all'utente root in MySQL/MariaDB ) nel database dell'amministratore. Questo utente può amministrare utenti e ruoli come creare utenti, concedere o revocare ruoli agli utenti e creare o modificare ruoli personalizzati.

Per prima cosa passa all'amministratore database, quindi crea l'utente root utilizzando i seguenti comandi.

> use admin 
> db.createUser({user:"root", pwd:"[email protected]!#@%$admin1", roles:[{role:"root", db:"admin"}]})

Ora esci da mongo shell per abilitare l'autenticazione come spiegato di seguito.

10. Il mongodb l'istanza è stata avviata senza --auth opzione della riga di comando. Devi abilitare l'autenticazione degli utenti modificando /lib/systemd/system/mongod.service file, prima apri il file per modificarlo in questo modo.

$ sudo vim /lib/systemd/system/mongodb.service 

Sotto il [Service] config, trova il parametro ExecStart .

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

Modificalo come segue:

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

Salva il file ed esci.

11. 8. Dopo aver apportato modifiche al file di configurazione, esegui "systemctl daemon-reload ' per ricaricare le unità e riavviare il servizio MongoDB e verificarne lo stato come segue.

$ systemctl daemon-reload
$ sudo systemctl restart mongodb	
$ sudo systemctl status mongodb	

12. Ora quando provi a connetterti a mongodb , devi autenticarti come utente MongoDB. Ad esempio:

$ mongo -u "root" -p --authenticationDatabase "admin"

Nota :Non è consigliabile inserire la password sulla riga di comando perché verrà archiviata nel file di cronologia della shell e potrà essere visualizzata in seguito da un utente malintenzionato.

È tutto! MongoDB è un moderno sistema di gestione di database No-SQL open source che offre prestazioni elevate, disponibilità elevata e ridimensionamento automatico.

In questo articolo abbiamo spiegato come installare e iniziare con MongoDB in Ubuntu 18.04 . In caso di domande, utilizza il modulo di commento qui sotto per contattarci.