Dimensione: 6982
Commento:
|
Dimensione: 402
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 8: | Linea 8: |
= Introduzione = attachment:logo.gif '''MySql''' è il più diffuso database Open Source basato sul linguaggio '''SQL'''. Questo prodotto viene fornito dall'azienda MySQL AB che eroga servizi basati sullo stesso '''MySql'''. Un database è un insieme strutturato di dati, dalla lista della spesa, all'elenco dei titoli presenti in una grossa libreria. '''MySql''' si occupa della strutturazione e della gestione a basso livello dei dati stessi, in modo da velocizzarne l'accesso, la modifica e l'inserimento di nuovi elementi. L'acronimo RDBMS significa "Relational Data-Base Management System" e sta ad indicare che '''MySql''' offre la possibilità di conservare i dati non in un enorme ''store-room'' ma in diverse tabelle, in modo di velocizzarne l'accesso. L'acronimo '''SQL''' significa ''Structured Query Language'' ed indica il linguaggio standard per le interrogazione delle basi di dati. La presente guida spiega l'uso delle funzioni principali di '''MySql'''. Alla fine di questo documento è possibile trovare i riferimenti alla documentazione ufficiale e ad alcune delle guide presenti in rete. == Installazione == Per installare '''MySql''' è necessario installare i pacchetti ''mysql-server'' e ''mysql-admin'', reperibile dai [:Repository:repository] ufficiali, con uno fra i vari strumenti messi a disposizione dal sistema: [:SynapticHowto:Synaptic], [:AdeptHowTo:Adept] e [:Apt:apt-get]. = Gestione degli utenti = == Impostare una password di amministrazione == Ad installazione ultimata, l'utente '''root''' potrà accedere senza password: sarà dunque necessario assegnargliene una quanto prima. Per impostare la password di amministrazione è sufficiente lanciare il seguente comando: {{{ mysqladmin –u root -p pwd }}} ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''La dicitura «pwd» va sostituita con la password desiderata.'' || == Connettessione al database == Lanciare il seguente comando da terminale: {{{ mysql -h indirizzo_host -u nome_utente -p }}} Le diciutre «indirizzo_host» e «nome_utente» vanno sostituite, rispettivamente, con l'IP del server e con il proprio nome utente per l'accesso. '''MySql''' chiederà la password relativa all'utente inserito, dovrebbe apparire un messaggio simile al seguente: {{{ Enter password: }}} Una volta inserita correttamente la password richiesta, il client restituirà un output simile al seguente: {{{ Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 to server version: 5.0.22-Debian_0ubuntu6.06-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> }}} Da questo momento la connessione è stabilita e sarà dunque possibile digitare comandi da inviare al server. == Creare un nuovo utente == Il comando GRANT permette allo stesso tempo di creare un utente e di assegnargli dei permessi specifici: {{{ GRANT <istruzioni_consentite> ON <database>.<tabella> TO <utente> IDENTIFIED BY <password>; }}} La sintassi qui proposta è molto semplice: * '''istruzioni_consentite''' Contiene una lista di istruzioni di SQL che si vogliono permettere all'utente ('''CREATE''', '''SELECT''', '''UPDATE''', '''DELETE''', '''ALTER''', '''EXECUTE''', ecc..). Se si desidera dare all'utente permessi completi si può utilizzare la parola chiave '''ALL'''. * '''database''' Il database al quale applicare le modifiche. * '''tabella''' Il nome della tabella alla quale applicare le modifiche. Se si desidera applicare le modifiche a tutte le tabelle del database in questione è utile usare il carattere asterisco '''*'''. * '''utente''' L'utente da creare. [[BR]] * '''password''' Assegna una password al nuovo utente. Ad esempio, è possibile consentire all'utente «tizio» di eseguire interrogazioni '''SELECT''', aggiornamenti '''UPDATE''', eliminazioni '''DELETE''' sul database «miodatabase», digitando il seguente comando: {{{ GRANT SELECT,UPDATE,DELETE ON miodatabase.* TO tizio@localhost IDENTIFIED BY 'miapasswd'; }}} È stato concessa all'utente «tizio» la possibilità di agire sul database collegandosi dalla macchina locale dove risiede il server. L'istruzione '''REVOKE''' svolge la funzione opposta a '''GRANT''', serve, cioè, a revocare i permessi. La sintassi è molto simile a quella dell'istruzione '''GRANT''': {{{ REVOKE <istruzioni_revocate> ON <database>.<tabella> FROM <utente>; }}} = Gestione dei database = == Vedere l'elenco dei database esistenti == Lavori in corso: portate pazienza... Dopo essersi connessi a MySql, sarà possibile visualizzare l'elenco di tabelle in esso contenute: {{{ SHOW DATABASE; }}} Ecco il risultato: {{{ mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | dbstinko | | mysql | +--------------------+ 4 rows in set (0.00 sec) mysql> }}} ''Nota: tutte le righe di comando in MySql, finiscono con ";" (punto e virgola)'' == Selezionare un dadabase == Lavori in corso: portate pazienza... Ora che sappiamo quali data-base sono presenti, possiamo selezionarne uno su cui lavorare: {{{ USE dbstinko; }}} Ecco la risposta: {{{ Database changed mysql> }}} Probabilmente voi non avrete un data-base "dbstinko"... == Creare un database == Lavori in corso: portate pazienza... Per creare il data-base "prova" su cui fare i primi test: {{{ CREATE DATABASE prova; }}} Ecco la risposta: {{{ mysql> create database prova; Query OK, 1 row affected (0.00 sec) mysql> }}} Verifichiamo: {{{ mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | dbstinko | | mysql | | prova | +--------------------+ 4 rows in set (0.00 sec) mysql> }}} Perfetto... ;-) == Cancellare un database == Per cancellare il database appena creato, usate il comando: {{{ DROP DATABASE prova; }}} Ecco la risposta: {{{ mysql> drop database prova; Query OK, 0 rows affected (0.00 sec) mysql> }}} Ok, ora ricreatelo... Tornerà utile. = Ulteriori risorse = http://www.mysql.com/ [[BR]] http://database.html.it/guide/leggi/87/guida-mysql/ [[BR]] http://canone.ce.unipr.it/MySQLTutor/Home.htm [[BR]] http://database.html.it/guide/leggi/40/guida-linguaggio-sql/ [[BR]] ##CategoryServer ---- CategoryDaRevisionare |