Cambiare il tipo di tabelle di default in MySQL

A seconda della versione di MySQL e dei criteri con cui si ? proceduto all’installazione, MySQL fa in modo che, qualora non venga specificata in fase di creazione della tabella la sua tipologia (MyISAM, BDB, INNODb ecc…), quest’ultima sia creata in base al default specificato nel file di configurazione, che per sistemi linux si trova in /etc/my.conf mentre in windows in \windows\my.ini o \Programmi\MySQL\my.ini (dipende anche in questo caso dalla versione e dal tipo di installazione effettuato).

default-storage-engine=INNODb

La riga che va modificata nel file di configurazione ? quella proposta qui sopra, cio? default-storage-engine=, cui si possono associare i diversi tipi di tabella supportati da MySQL.

Rendere permanenti le modifiche al prompt MySQL

Per rendere permanenti le modifiche effettuate sul prompt dei comandi del programma client mysql, va inserita la voce prompt nel file my.conf (linux) o my.ini (windows). Qui sotto ne ? riportato un esempio in cui dalla successiva connessione al server verranno riportati nome utente e nome database:

[mysql]prompt=\U \d >

La sezione del file di configurazione in cui apportare le modifiche ? quella relativa al client mysql, identificata dal nome del client racchiuso tra due parentesi quadre.

Modificare il prompt MySQL

Per modificare l’aspetto del prompt dei comandi del client MySQL, si usa, da shell, il comando PROMPT che in unione con alcune opzioni consente di modificarne l’aspetto.

In questo esempio il classico mysql> verr?? sostituito dal nome del database in uso.

 mysql>prompt \d>

Dopo il comando, il prompt si presenter?? cos?:

databaseprova>

Quelle qui di seguito sono alcune delle opzioni pi? ‘simpatiche’:?

  • \v Versione del server
  • \d Mostra il nome del database in uso
  • \h Mostra il nome host
  • \u Visualizza il nome utente
  • \U Nome utente completo di @nomehost

    Naturalmente ciascuna di queste opzioni pu? essere utilizzata congiuntamente alle altre.
    Per rendere permanenti le modifiche vedere qui.

  • I file dei database MySQL

    Ogni database di MySQL viene scritto su disco, precisamente in una directory variabile a seconda del tipo di installazione che si ? scelto. Ogni database, poi, ha al suo interno delle tabelle che vengono registrate su disco, indipendentemente dal tipo delle stesso (MyISAM, HEAP, BDB, InnoDB, MERGE o ISAM, in diversi file, ciascuno dei quali contiene la tabella ma anche altre informazioni.

    A seconda dell’estensione dei file ? possibile riconoscere il tipo di funzione che svolge il file in questione. Ad esempio, per ciascuna tabella MyISAM (le pi? utilizzate per la loro velocit?? di eleborazione) ci saranno tre file che ne porteranno lo stesso nome ma con estensione diversa.
    Si consideri la tabella persone di tipo MyISAM. Nella directory del database che la contiene ci saranno questi 3 file:

  • persone.frm
  • persone.MYD
  • persone.MYIIl file *.frm contiene la definizione della tabella, quello MYD i dati mentre *.MYI gli indici.

    Se la tabella fosse del vecchio tipo ISAM invece di avere MYD e MYI si avrebbero ISD e ISM.

  • Inserire dei commenti nelle tabelle MySQL

    Per commentare delle righe o delle query MySQL esistono tre modi differenti:

  • stile C (/* */) il commento sar?? quello compreso tra le due coppie di simboli;
  • carattere # il commento sar?? quello sulla riga in cui ? presente #
  • due trattini e spazio (questo dalla 3.23.3 in poi) il commento sar?? fino a fine riga
  • Dove trovare la password di root di MySQL Windows

    La password di root di MySQL, su piattaforma Windows, si trova all’interno del file di configurazione my.ini situato di default nella cartella c:\windows (o c:\winnt, a seconda di dove si trovi la cartella contenente Windows).
    L’aspetto delle righe di my.ini in cui trovare la password – se ? stata inserita per la connessione con il client – ? il seguente:

    # The following options will be passed to all MySQL clients[client]password	= XXXXXXXXXport		= 3306socket		= C:/www/tmp/mysql.sock

    Trovare i record duplicati in una tabella MySQL

    Per trovare dei duplicati in una tabella MySQL, si pu? eseguire una query in cui utilizzare congiuntamente a SELECT le funzioni COUNT, GROUP BY e HAVING. Quello che segue ? un esempio per cercare dei nominativi duplicati all’interno di una tabella persone.

    SELECT cognome, COUNT(cognome) as totale from PERSONE GROUP BY cognome HAVING totale >1;

    Alla tabella viene richiesto di estrarre i cognomi, contarne per ciascuno il numero di ricorrenze e mettere il risultato in un alias ‘totale’, quindi di raggrupparle per cognome e, infine, di compiere quest’ultima operazione se il valore dell’alias totale, quindi delle ricorrenze ? maggiore di 1.

    Aggiungere una voce statica alla cache ARP

    La cache ARP pu? contenere dei valori sia tipo dinamico (ossia viene effettuato un refresh della cache stessa ogni due minuti, quindi se non ci sono connessioni a un certo host entro questo periodo la voce viene eliminata) oppure di tipo statico (una voce inserita all’interno della cache avr?? validit?? fino al successivo reboot).

    Per inserire una nuova voce statica all’interno della cache ARP, va utilizzato, dal prompt dei comandi, il comando arp, seguito dall’opzione -s. Qui di seguito ne ? riportato un esempio:

    arp -s 192.168.0.23 10-01-34-BA-EC-C0

    Dopo il comando e l’opzione sono riportati l’indirizzo IP dell’host che si vuole aggiungere in cache e il relativo MAC address.-

    Visualizzare il contenuto della cache ARP

    Per visualizzare le voci presenti nella cache ARP si utilizza da prompt il comando arp seguito dall’opzione -a. L’output prodotto dal comando sar?? simile a questo:

    Interfaccia: 10.51.40.220 on Interface 0x1000003  Indirizzo Internet    Indirizzo fisico      Tipo  10.51.40.64           00-50-da-4b-d2-dc     dinamico  10.51.41.254          00-d0-95-84-dd-a0     dinamico

    Nella prima colonna viene visualizzato l’indirizzo IP dell’host, nella seconda il MAC address, mentre nell’ultima ? specificato se il tipo di memorizzazione del’abbinamento indirizzo IP / MAC address ? di tipo dinamico (verr?? cancellato entro un paio di minuti se nel frattempo non sono registrate altre connessioni all’hosto) oppure di tipo statico (la cache verr?? mantenuta attiva e pieno fino al prossimo riavvio del sistema operativo).