Università degli Studi di Modena e Reggio Emilia Facoltà di Scienze della Comunicazione e dell Economia Corso di Laurea in Comunicazione e Marketing Anno Accademico 2004/05 Metodi per la Gestione dei Dati (lezioni di laboratorio) Titolare del corso: ing. Stefano SETTI Lezioni di laboratorio (gruppo A-K): dott. Fabio RUINI
Brevissima presentazione AS: 2000/01: diplomato in Informatica presso l ITGS Blaise Pascal BUS-TCS di Reggio Emilia. AA: 2003/04: laureato in Economia, Reti, Informazione, presso la Facoltà di Scienze della Comunicazione e dell Economia dell Università di Modena e Reggio Emilia, con una tesi sulla piattaforma di LMS Moodle. Attualmente: componente del Web Staff che cura i contenuti del portale Dolly per il Corso di Laurea On Line in Comunicazione e Marketing; tutor tecnologico per il master in Finanza Aziendale e Controllo di Gestione, erogato dalla Facoltà di Economia Marco Biagi di Modena.
Obiettivi Conoscenza dei fondamenti del linguaggio SQL; Conoscenza del DBMS Open Source MySQL; Interazione con MySQL attraverso l'interfaccia grafica phpmyadmin; Preparazione all esame
Calendario delle lezioni (gruppo A-K) Giovedi 12 Maggio (ore 14.00 15.30) Giovedi 19 Maggio (ore 14.00 15.30) Mercoledi 25 Maggio (ore 15.45 17.15) Giovedi 26 Maggio (ore 14.00 15.30) Mercoledi 01 Giugno (ore 15.45 17.15) Mercoledi 08 Giugno (ore 15.45 17.15) Giovedi 09 Giugno (ore 14.00 15.30)
Programma delle lezioni 12/05/05: Download ed installazione di Mysql, attraverso il pacchetto software open source EasyPhp; 19/05/05: Creazione Data Base, creazione tabelle e popolamento DB; 25/05/05: DML (data manipolation language) principali istruzioni SQL; 26/05/05:... si continua con il DML; 01/06/05: Ricevimento; 08/06/05: Supporto ai progetti; 09/06/05: Supporto ai progetti.
Requisiti teorici Data Base e DBMS Progettazione concettuale Progettazione logica (relazionale)
Materiale didattico Lucidi delle lezioni disponibili su: Dolly - http://dolly.cei.unimo.it Pagina personale - http://www.webalice.it/fabio.ruini Documenti vari disponibili sul web verranno indicati volta per volta nelle slides
EasyPHP: cos è? EasyPHP è fondamentalmente una raccolta di software open source: un web server (Apache); un DBMS (MySQL); un client testuale per MySQL ( shell ); un client grafico per MySQL (phpmyadmin)
Architettura client - server I client inviano una richiesta al server Client SERVER Il server restituisce una risposta ai client
Un esempio: il web http://www.easyphp.org SERVER WEB
Un esempio ancora più completo Linguaggio di back end es: PHP, ASP, Browser web es: Firefox, Explorer, Opera, SERVER WEB es: Apache, IIS Server DBMS es: MySQL, Oracle, DB2,
Architettura a tre livelli di un DBMS Utente finale Utente finale Utente finale Utente finale Utente finale Schema esterno Schema esterno Schema esterno Schema logico Schema interno DB
UTENTI del DBMS Voi siete qui Utente finale Applicazioni Programmatori applicativi Utenti casuali DBMS Amministratori di DB DB
Installazione di EasyPHP (1.8) Step 1 1. Collegarsi al sito http://www.easyphp.org/
Installazione di EasyPHP (1.8) Step 2 1. Fare clic sul collegamento Downloads : http://www.easyphp.org/telechargements.php3
Installazione di EasyPHP (1.8) Step 2
Installazione di EasyPHP (1.8) Step 3 1. Scegliere la Versione Corrente di EasyPHP (attualmente è la v.1.8), facendo clic sul link corrispondente: http://www.easyphp.org/telechargements /dn.php?f=easyphp1-8
Installazione di EasyPHP (1.8) Step 3
Installazione di EasyPHP (1.8) Step 4 1. Scegliere uno dei mirrors da cui scaricare il programma di installazione. In casi di questo genere, si tende solitamente a scegliere il server situato il più vicino possibile, da un punto di vista geografico, al luogo dal quale si sta effettuando il download. NB: maggior vicinanza non significa sempre maggior velocità di download!
Installazione di EasyPHP (1.8) Step 4
Installazione di EasyPHP (1.8) Step 5 Dopo alcuni secondi, il download dovrebbe avviarsi automaticamente.
Installazione di EasyPHP (1.8) Step 5-bis In funzione del browser e del sistema operativo utilizzati, possono tuttavia configurarsi scenari differenti. L idea è quella di eseguire dalla posizione corrente quando possibile oppure, in alternativa, salvare l eseguibile e lanciarlo una volta ultimato il download.
Installazione di EasyPHP (1.8) Step 5-bis
Installazione di EasyPHP (1.8) Step 6 Se non è stato possibile eseguire dalla posizione corrente, il file sarà stato salvato sul computer locale. Occorre a questo punto individuarlo (il suo nome è easyphp1-8_setup.exe ) ed eseguirlo con un doppio clic del mouse.
Installazione di EasyPHP (1.8) Step 6
Installazione di EasyPHP (1.8) Step 7 Il programma di installazione chiederà innanzitutto all utente se desidera effettivamente procedere con l installazione di EasyPHP. La risposta dovrà ovviamente essere affermativa.
Installazione di EasyPHP (1.8) Step 8 Occorre a questo punto scegliere la lingua in cui installare il software.
Installazione di EasyPHP (1.8) Step 9 La schermata successiva, la prima del wizard, presenta brevemente le caratteristiche di EasyPHP e richiede la pressione del tasto Next per proseguire.
Installazione di EasyPHP (1.8) Step 9
Installazione di EasyPHP (1.8) Step 10 A questo punto vengono visualizzate le licenze di PHP, Apache, MySQL, PhpMyAdmin e la licenza generale GNU. Per proseguire nell installazione è necessario procedere alla loro accettazione.
Installazione di EasyPHP (1.8) Step 10
Installazione di EasyPHP (1.8) Step 11 Vengono in seguito presentati alcuni avvertimenti da seguire in caso di aggiornamento di EasyPHP a partire da una versione precedente già installata sulla macchina.
Installazione di EasyPHP (1.8) Step 11
Installazione di EasyPHP (1.8) Step 12 Occorre a questo punto scegliere la cartella di destinazione nella quale installare il software. E consigliabile mantenere quella di default ( C:\Programmi\EasyPHP1-8 ) e rispondere affermativamente ad un eventuale domanda da parte dell installer, nel caso dovesse chiedere l autorizzazione per procedere alla creazione della cartella in questione.
Installazione di EasyPHP (1.8) Step 12
Installazione di EasyPHP (1.8) Step 13 Verrà ora richiesto all utente in quale cartella del menu di avvio si desidera creare il collegamento all eseguibile di EasyPHP. Anche in questo caso è consigliabile seguire la proposta di default ( EasyPHP 1.7 ).
Installazione di EasyPHP (1.8) Step 13
Installazione di EasyPHP (1.8) Step 14 Controlliamo di aver inserito correttamente tutti i parametri nella finestra di riepilogo che compare sullo schermo, quindi procediamo con l installazione facendo clic sul pulsante Install.
Installazione di EasyPHP (1.8) Step 14
Installazione di EasyPHP (1.8) Step 15 Attendiamo ora qualche minuto affinchè l installazione di EasyPHP abbia luogo.
Installazione di EasyPHP (1.8) Step 16 Al termine del processo, comparirà una nota informativa, relativa alla configurazione di PHP. Siccome non ci occuperemo di PHP in queste lezioni, possiamo tranquillamente ignorare l avviso e fare clic sul pulsante Next.
Installazione di EasyPHP (1.8) Step 16
Installazione di EasyPHP (1.8) Step 17 L installazione è ultimata! Facciamo clic sul pulsante Finish per uscire dal wizard.
Avvio di EasyPHP Se l installazione è stata eseguita con successo, all interno del menu start dovrebbe essere comparso un nuovo gruppo di programmi, chiamato EasyPHP 1.8. Per avviare il EasyPHP è sufficiente fare clic con il mouse sull icona corrispondente.
EasyPHP si è avviato? Una volta avviato EasyPHP, nell area di notifica di Windows dovrebbe apparire una nuova icona.
L icona di EasyPHP diagnostica L icona di EasyPHP è dotata di una utile funzione di diagnostica. Un indicatore lampeggiante di colore rosso indica l avvio dei server MySQL o Apache. Al contrario, se l indicatore non compare, significa che entrambi i server sono disattivi.
L icona di EasyPHP menu di scelta rapida Con un doppio clic sull icona di EasyPHP è possibile accedere al pannello di amministrazione del software. Con un singolo clic del pulsante destro è invece possibile accedere a tutte le funzionalità offerte dal programma.
Pannello di amministrazione I pulsanti Apache e MySQL permettono di gestire l avvio e l arresto dei rispettivi server Apache e Mysql.
La shell di MySQL Come accennato in precedenza, EasyPHP comprende un client testuale ( shell o console ). Per accedervi occorre aprire una finestra DOS (in Windows XP: Start Tutti i Programmi Accessori Prompt dei comandi ).
La shell di MySQL Una volta entrati nel prompt dei comandi, occorre spostarsi all interno della directory nella quale è stato installato il client. Se durante l installazione non sono stati variati i parametri di default, per accedere alla cartella dovrebbe essere sufficiente digitare l istruzione: C:\>cd \Programmi\EasyPHP1-8\mysql\bin seguita dalla pressione del tasto INVIO
La shell di MySQL Il prompt dei comandi dovrebbe rispondere presentando un output del genere: C:\Programmi\EasyPHP1-8\mysql\bin\>_ A questo punto è possibile avviare il client digitando: C:\Programmi\EasyPHP1-8\mysql\bin\>mysql seguito dalla pressione del solito tasto INVIO.
Errore?!?
MySQL: un sistema multi-utente Come abbiamo potuto notare, cercando di avviare il client MySQL senza fornire alcun parametro, il software restituisce un errore. MySQL, essendo un sistema multi-utente, prevede infatti che, ogni qualvolta si tenti di accedervi, debbano venire immesse in input le proprie credenziali.
MySQL: un sistema multi-utente Per la prima connessione, possiamo accedere a MySQL con le credenziali di root : C:\Programmi\EasyPHP1-8\mysql\bin\>mysql u root (il parametro -u indica a MySQL che la stringa successiva rappresenta il nome dell utente che sta tentando di collegarsi al DBMS).
Finalmente connessi!
Creazione di un nuovo utente Quando si lavora all interno di sistemi multi-utente quali MySQL è buona norma non accedervi mai come root (se questo non è strettamente necessario), ma creare un nuovo utente ed utilizzare questo. Per creare un nuovo utente, all interno della console di Mysql digitare: mysql>grant ALL PRIVILEGES ON * TO nomeutente;
Log-out e nuovo log-in Per utilizzare subito il nuovo utente è necessario disconnettersi dal DBMS: mysql>quit; E quindi riconnettersi con le nuove credenziali: C:\Programmi\EasyPHP1-8\mysql\bin\>mysql u nomeutente
Password E buona norma associare a ciascun utente del sistema una rispettiva password. Per farlo, una volta entrati nel sistema come root, si utilizza una versione estesa dell istruzione GRANT vista in precedenza: mysql>grant ALL PRIVILEGES ON * TO nomeutente IDENTIFIED BY password ;
Accesso di un utente con password L accesso a MySQL di un utente protetto da password prevede una sintassi particolare: C:\Programmi\EasyPHP1-8\mysql\bin\>mysql u nomeutente -p (il parametro -p indica a MySQL che l utente nomeutente che sta tentando di connettersi al DBMS deve digitare una password per l autenticazione).
Ma è tutto così complicato?!? No! Per quanto sia importante conoscere il funzionamento della shell di MySQL, esiste una moltitudine di strumenti grafici che consentono di lavorare in maniera rapida ed intuitiva.
Creare un nuovo utente in maniera più semplice La stessa procedura di creazione di un nuovo utente, che attraverso la shell ha richiesto l immissione di istruzioni estremamente precise, può essere fatta in modo molto più intuitivo attraverso l interfaccia grafica offerta da phpmyadmin.
phpmyadmin
Creazione di un nuovo utente attraverso phpmyadmin step 1 Per creare un nuovo utente, la prima cosa da fare è fare clic sulla voce Privilegi nella schermata principale di phpmyadmin, raggiungibile facendo clic con il pulsante destro del mouse sull icona presente nell area di notifica e scegliendo quindi le voci Configurazione phpmyadmin, oppure aprendo una finestra del browser ed immettendo nella barra degli indirizzi l URL: http://127.0.0.1/mysql
Creazione di un nuovo utente attraverso phpmyadmin step 2 Il secondo passo consiste nello scegliere il link Aggiungi un nuovo utente, presente nella nuova schermata di phpmyadmin.
Creazione di un nuovo utente attraverso phpmyadmin step 2
Creazione di un nuovo utente attraverso phpmyadmin step 3 Il form che ci viene presentato nella nuova pagina ci permette di impostare vari parametri. Quelli di nostro interesse sono: nome password privilegi globali
Creazione di un nuovo utente attraverso phpmyadmin step 3
Creazione di un nuovo utente attraverso phpmyadmin step 4 Una volta creato l utente, comparirà un ulteriore schermata che ci chiederà di specificare con maggior dettaglio i privilegi da assegnare a questo utente. Per il momento possiamo ignorarle e tornare alla schermata principale di phpmyadmin con il link presente nella parte alta della pagina ( Server: localhost).
Futuro molto prossimo phpmyadmin si rivelerà uno strumento molto utile quando sarà il momento di scrivere query ma per oggi ci accontentiamo!
Contatti e-mail: ruini.fabio@unimore.it
Fine