Dimensione: 7796
Commento:
|
Dimensione: 7795
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 36: | Linea 36: |
>mysql -h indirizzo_host -u nome_utente -p | mysql -h indirizzo_host -u nome_utente -p |
IndiceBRTableOfContents |
Premessa
Lavori in corso: portate pazienza...
Cos'è MySql
MySQL (si pronuncia My Ess Que Ell) è il più diffuso database Open Source basato sul linguaggio SQL. Questo prodotto viene fornito dall'azienda MySQL AB che sviluppa il proprio business erogando servizi basati su MySQL stesso. MySQL è un RDBMS, ossia un sistema di gestione per database relazionali. 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 "storeroom" ma in diverse tabelle, in modo di velocizzarne l'accesso. L'acronimo SQL significa "Structured Query Language" ed indica il linguaggio standard di interrogazione dei Data-Base.
Installare MySql
L'installazione è semplicissima: avviare Synaptic e selezionare il pacchetto BR mysql-server BR che provvederà ad installare l'ultima versione del server e del client (attualmente la 5.0.22) nel vostro sistema.
Gestione degli utenti
Assegnare una password a root
Ad installazione ultimata, l'utente root potrà accedere senza password, converrà assegnargliene una quanto prima. BR Nota: per evitare problemi non modificate mai le tabelle del database mysql, almeno fino a che non avrete compreso il meccanismo delle protezioni, esse infatti contengono tutte le informazione per la gestione dei permessi degli utenti.
Per assegnare la password lanciare il seguente comando:
MYSQLADMIN –u root PASSWORD password_da_assegnare
Naturalmente sostituiremo "password_da_assegnare" con la password che desideriamo.
Per cambiare la password in qualsiasi momento scriveremo:
MYSQLADMIN –u root –p PASSWORD nuovapassword_da_assegnare
Dopo la pressione del tasto "Invio" sarà richiesta la vecchia password e il cambiamento avrà effetto.
Connettersi con un nome utente esistente
Lanciare il seguente comando da terminale:
mysql -h indirizzo_host -u nome_utente -p
Dove "indirizzo_host" sarà l'IP del server (in locale localhost) e "nome_utente" sarà ovviamente il nome utente... [[BR] MySql chiederà di fornire la password relativa all'utente usato:
Enter password: ********
Creare un nuovo utente
Lavori in corso: portate pazienza...
(DA COMPLETARE E RIVEDERE)
Il comando GRANT permette allo stesso tempo di creare un utente e di assegnargli dei permessi specifici: BR
GRANT <istruzioni_consentite> ON <database>.<tabella> TO <utente> IDENTIFIED BY <password>;
La sintassi qui proposta è molto semplice: BR <istruzioni_consentite>: è una lista di istruzioni di SQL che si vogliono permettere all'utente (CREATE, SELECT, UPDATE, DELETE, ALTER, EXECUTE, ecc..). Se si vuole dare all'utente permessi completi si può utilizzare la parola chiave ALL. BR <database>: E' il nome del database che stiamo prendendo in considerazione. BR <tabella>: Inserendo il nome di una tabella, si fa riferimento solo ad essa. Per tutte le altre tabelle non varranno le regole che stiamo specificando. Se si vuole fare riferimento a tutte le tabella si può utilizzare il carattere asterisco (*). BR <utente>: Specifica il nome dell'utente che vogliamo creare. BR <password>: Specifica la password associata all'utente che stiamo creando. La password va scritta in chiaro. BR
Ad esempio, consentire all'utente "tizio" di eseguire interrogazioni (SELECT), aggiornamenti (UPDATE), eliminazioni (DELETE) sul database "miodatabase", diamo il seguente comando:
GRANT SELECT,UPDATE,DELETE ON miodatabase.* TO tizio@localhost IDENTIFIED BY 'miapasswd';
Abbiamo concesso all'utente "tizio" la possibilità di agire sul data-base collegandosi da "localhost" (la macchina locale del database server). BR
Vediamo infine l'istruzione REVOKE che svolge la funzione opposta a GRANT, e cioè rimuovere permessi. Ne vediamo solo la sintassi in quanto molto simile all'istruzione GRANT:
REVOKE <istruzioni_revocate> ON <database>.<tabella> FROM <utente>;
per la quale valgono le stesse regole sopra viste per la GRANT. BR
Gestione dei database
Vedere l'elenco dei database esistenti
Lavori in corso: portate pazienza...
Selezionare un dadabase
Lavori in corso: portate pazienza...
Creare un database
Lavori in corso: portate pazienza...
Gestione delle tabelle
Vedere l'elenco delle tabelle del db selezionato
Lavori in corso: portate pazienza...
Selezionare una tabella
Lavori in corso: portate pazienza...
Creare una tabella
Lavori in corso: portate pazienza...
Tipi di campo disponibili
Quelli che seguono sono i tipi di campo disponibili per la creazione dei nostri database. BR TINYINT Valore numerico compreso tra -128 e 127 BR TINYINT UNSIGNED Valore numerico compreso tra 0 e 255 BR SMALLINT Valore numerico compreso tra -32768 e 32767 BR SMALLINT UNSIGNED Valore numerico compreso tra 0 e 65535 BR MEDIUM Valore numerico compreso tra -8388608 e 8388607 BR MEDIUM UNSIGNED Valore numerico compreso tra 0 e 16777215 BR INT o INTEGER Valore numerico compreso tra -2147483648 e 2147483647 BR INT UNSIGNED Valore numerico compreso tra 0 e 4294967295 BR BIGINT Valore numerico compreso tra -9223372036854775808 e 9223372036854775807 BR BIGINT UNSIGNED Valore numerico compreso tra 0 e 18446744073709551615 BR FLOAT (m,d) Valore numerico con valori decimali. Compreso tra -3.402823466E+38 e -1.175494351E-38 BR DOUBLE(m,d) o REAL(m,d) Valore numerico con valori decimali. Compreso tra -1.7976931348623157E+308 e -2.2250738585072014E-308 BR DECIMAL (m,d) o NUMERIC(m,d) Valore numerico con decimali che sarà memorizzato come una serie di caratteri BR DATE Campo contenente una data in formato "aaaa-mm-gg" BR DATETIME Campo contenente la data e ora, informato "aaaa-mm-gg hh:mm:ss" BR TIME Campo contente un’ora nel formato: "hh:mm:ss" BR CHAR Campo contenente una stringa di caratteri che può avere la massina lughezza di 255 BR TINYBLOB o TINYTEXT Campo che può avere la massima lunghezza di 255 in formato binario nel primo caso o testo nel secondo BR BLOB o TEXT Campo che può avere la massima lunghezza di 65535 in formato binario nel primo caso o testo nel secondo BR MEDIUMBLOB o MEDIUMTEXT Campo che può avere la massima lunghezza di 16777215 in formato binario nel primo caso o testo nel secondo BR LONGBLOB o LONGTEXT Campo che può avere la massima lunghezza di 4294967295 in formato binario nel primo caso o testo nel secondo BR ENUM (‘value1’,’value2’,…) Campo che può contenere uno dei valori presente tra le parentesi BR
???
??
?
???
??
?
Links utili
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