3 581
contributi
(guida da adottare) |
|||
(10 versioni intermedie di un altro utente non mostrate) | |||
Riga 1: | Riga 1: | ||
{{ | {{Guida da adottare}} | ||
== Cos'è MongoDB ? == | == Cos'è MongoDB ? == | ||
MongoDB è un database opensource che fa parte di una tipologia particolare: è un database NoSQL.<br/> | MongoDB è un database opensource che fa parte di una tipologia particolare: è un database NoSQL.<br/> | ||
Riga 7: | Riga 7: | ||
Se lo si vuole installare sulla propria macchina Debian è sufficiente utilizzare un unico comando aptitude, infatti: | Se lo si vuole installare sulla propria macchina Debian è sufficiente utilizzare un unico comando aptitude, infatti: | ||
<pre> | <pre> | ||
# aptitude | # aptitude install mongodb | ||
</pre> | </pre> | ||
procederà all'installazione del server e del client. <br/> | procederà all'installazione del server e del client. <br/> | ||
Nella tipica nomenclatura del mondo GNU/Linux: | Nella tipica nomenclatura del mondo GNU/Linux: | ||
* il server prenderà il nome di '''mongod'''; | * il server prenderà il nome di '''mongod'''; | ||
* il client sarà '''mongo'''. | * il client sarà '''mongo'''.<br/> | ||
Comunque si deve sempre tenere presente, come spesso capita, che tramite i comuni repository si trova una versione stabile del db ma meno recente dell'ultima stabile. Essendo MongoDB un prodotto nuovo e quindi in veloce evoluzione si può cercare di ottenere l'ultima versione stabile tramite il repository predisposto per la versione Debian del db.<br/> | |||
In questo caso la procedura sarà: | |||
<pre> | |||
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10 | |||
</pre> | |||
per richiedere la chiave pubblica per l'autenticazione.<br/> | |||
Si creerà un file di indirizzo '''/etc/apt/sources.list.d/10gen.list''' per l'indirizzo del nuovo repository. Il file conterrà la seguente riga: | |||
<pre> | |||
deb http://downloads-distro.mongodb.org/repo/debian-sysvinit dist 10gen | |||
</pre> | |||
A questo punto si procederà all'aggiornamento dei pacchetti con: | |||
<pre> | |||
aptitude update | |||
</pre> | |||
e si troverà disponibile un pacchetto di nome '''mongodb-10gen''' corrispondente all'ultima versione stabile del prodotto. | |||
{{Suggerimento|Qualora ci si trovasse di fronte a problemi in fase dell'avvio del server MongoDB, si controlli la versione installata.<br/> Alcune opzioni usate nel file di configurazione potrebbero appartenere ad una versione più recente di quella presente sulla propria macchina.<br/> In tal caso, si veda, come spiegato, nel repository 10gen qual è l'ultima versione stabile di MongoDB }} | |||
== Start, Stop e Restart == | == Start, Stop e Restart == | ||
L'avvio del servizio e le corrispondenti azioni di stop e riavvio sono disponibili tramite le rispettive seguenti operazioni: | L'avvio del servizio e le corrispondenti azioni di stop e riavvio sono disponibili tramite le rispettive seguenti operazioni: | ||
Riga 56: | Riga 73: | ||
* a quale database è consentito l'accesso; | * a quale database è consentito l'accesso; | ||
* se l'accesso è in sola lettura o in lettura/scrittura (default). | * se l'accesso è in sola lettura o in lettura/scrittura (default). | ||
Quindi si dovrà fare un log come amministratore e collocarsi sul database che per il quale si vuole configurare l'accesso, ad esempio 'persone': | |||
<pre> | |||
use persone | |||
</pre> | |||
dopodichè si creerà l'utente con tanto di username e password, ad esempio username="manager" e password="12345": | |||
<pre> | |||
db.addUser("manager","12345") | |||
</pre> | |||
L'accesso è stato così creato ed è in modalità lettura/scrittura. Per averlo read-only si sarebbe dovuto dare il comando: | |||
<pre> | |||
db.addUser("manager","12345",true) | |||
</pre> | |||
Per effettuare l'accesso tramite le credenziali utente ci si dovrà connettere tramite client: | |||
<pre> | |||
# mongo 192.168.1.10/persone | |||
</pre> | |||
Il comando specificato richiederà la connessione al server MongoDB con indirizzo 192.168.1.10 ed in particolare al database persone.<br/> | |||
A questo punto si potrà richiedere l'utilizzo del database "loggandosi" con il comando db.auth: | |||
<pre> | |||
> db.auth("manager","12345") | |||
</pre> | |||
In output si vedrà apparire un solo numero: | |||
* 1 = incaso di login effettuato con successo; | |||
* 0 = in caso di errore. | |||
Se non si effettuasse il login, ad ogni tentativo di lettura dei dati del database si riceverà un messaggio di errore di tipo: | |||
<pre> | |||
Error: uncaught exception: error: { "$err" : "unauthorized for db [persone] lock type: -1 " } | |||
</pre> | |||
{{Autori | Autore = [[Utente:Turinext|Turinext]]}} | |||
[[Categoria:Database server]] |
contributi