Premessa: per la scrittura di questo articoletto ho utilizzato come sistema di test una distribuzione Linux Ubuntu. Ho installato mysql-server tramite il gestore pacchetti Synaptic (potete usare anche apt-get install), e ho assegnato una password all’utente root non appena mi è stato chiesto.

Passiamo ora ad un elenco di comandi utili. Consiglio vivamente agli utenti non esperti di effettuare le prove su database di test, facendo attenzione a tutti i comandi impartiti. Non mi assumo nessuna responsabilità in caso arrechiate danni).

Accedere alla console mysql

# mysql -u root -p

Inseriamo la password quando ci viene chiesta. A questo punto comparirà:

mysql>

Ora possiamo impartire i nostri comandi.

Uscire dall’interfaccia mysql

quit

Mostrare tutti i database esistenti

show databases;

Attenzione, se vi dimenticare di digitare il “;” e premete invio, non vi preoccupate perché potete digitarlo nella riga successiva.

Quello che vedrete sarà simile a:

+------------+
| Database   |
+------------+
| mysql      |
| mysql_test |
+------------+

Creare un nuovo database “myNewDb”

create database myNewDb;

Al posto di “myNewDb”, mettete un nome a vostro piacimento. Se diamo ancora il comando “show databases;” possiamo vedere il nuovo database nella tabella a video.

Selezionare un database

use myNewDb;

Ora possiamo lavorare sul database myNewDb.

Cancellare un database

drop database nyNewDb;

Così abbiamo cancellato il database che avevamo creato in precedenza.

Mostrare le tabelle di un database

Per mostrare le tabelle di un database dobbiamo prima di tutto selezionarlo con il comando use (in questo altro esempio ho usato il database “mysql”):

use mysql;

e successivamente diamo il comando:

show tables;

Quello che vedrete sarà simile a:

+-----------------+
| Tables_in_mysql |
+-----------------+
| columns_priv    |
| db              |
| func            |
| ...             |
| user            |
+-----------------+
17 rows in set (0.00 sec)

Visualizzare la struttura di una tabella

Nel nostro caso, scegliamo di vedere la struttura della tabella “user”.

describe user;

Visualizzare tutto il contenuto di una tabella

select * from user;

Visualizzare alcuni campi di una tabella

In questo esempio ho deciso di selezionare solo i campi “user” e “password” della tabella “user”:

select user, password from user;

Creazione di una tabella

Per creare una nuova tabella, decidiamo di lavorare su un nuovo database (perché se avete seguito tutte le istruzioni passo passo non avete nessun database nuovo su cui lavorare); lo creiamo con:

create database mysql_test;

Controllate che sia stato creato:

show databases;

Selezioniamo il nuovo database con:

use mysql_test;

Controlliamo che sia vuoto con:

show tables;

Creiamo la tabella “persone”:

CREATE TABLE persone (
nome VARCHAR(20),
cognome VARCHAR(20)
);

Controlliamo che la nuova tabella compaia nel database:

show tables;

Visualizziamo la struttura della tabella appena creata con:

describe persone;

Popolare una tabella

Se vogliamo ora inserire valori nella nostra tabella “persone” creata appena sopra, facciamo ad esempio:

INSERT INTO persone VALUES ('Mario', 'Rossi');

e così via per tutti gli altri valori che vogliamo inserire.

Rinominare una tabella

Se vogliamo modificare il nome ad una tabella, diamo il comando:

ALTER TABLE nome_tabella RENAME nuovo_nome;

Modificare una colonna della tabella

Se vogliamo cambiare il nome di una colonna, lanciamo:

ALTER TABLE nome_tabella CHANGE nome_colonna nuovo_nome_colonna proprietà_nuova_colonna;

Esempio:

ALTER TABLE persone CHANGE cognome surname VARCHAR(20);

Se vogliamo cambiare solo le proprietà, lanciamo ad esempio:

ALTER TABLE persone CHANGE cognome cognome VARCHAR(15);

Aggiungere una colonna alla tabella

Se vogliamo aggiungere una colonna, lanciamo:

ALTER TABLE nome_tabella ADD nuova_colonna proprietà_nuova_colonna;

Esempio:

ALTER TABLE persone ADD indirizzo VARCHAR(30);

Cancellare una colonna della tabella

Se vogliamo cancellare una colonna, lanciamo:

ALTER TABLE nome_tabella DROP nome_colonna;

Esempio:

ALTER TABLE persone DROP indirizzo;

Cancellare una tabella

Cancelliamo la tabella creata in precedenza con:

drop table persone;

Mysql – Backup e Restore

Concludo questa breve guida ai comandi di base di MySQL con un link interessante che illustra come fare backup e restore di database MySQL utilizzando i tool mysqlhotcopy e mysqldump:

http://www.openskill.info/infobox.php?ID=939

Un ringraziamento particolare a Gandalf.