MySql e la ricerca FullText

February 18th 2012 by Paolo Bindi in: MySql | Tags: mysql fulltext search

In questo articolo illustero' come MySql rende piu' semplice la gestione di un motore di ricerca, utilizzando gli indici FULLTEXT e le ricerche booleane ordinate per range di importanza. Per rendere la lettura piu' snella e chiara, l'articolo e' suddiviso in punti principali, i quali comprendono tutte le caratteristiche di questa metodologia, lasciando alla vostra curiosita' lo studio dell'algoritmo per il calcolo del range, per il quale indico solo il link alla documentazione ufficiale.

Continua a leggere »

MySql: Consigli sull'utilizzo degli indici

January 17th 2012 by Paolo Bindi in: MySql | Tags: mysql index explain plan

In questo articolo descrivero', in linee generali, come MySql gestisce gli indici, indicando come e quando crearli per sfruttarli al meglio.

Continua a leggere »

MySql - Tipi dati e loro caratteristiche (storage, range, ...)

November 23rd 2011 by Paolo Bindi in: MySql | Tags: mysql data type storage

In questo articolo, farò una breve panoramica sui tipi di dati presenti in MySql e su alcune loro caratteristiche, come lo storage, il range, etc...
Approfondisco in particolare alcuni tipi di dato, riferiti a questi gruppi NUMERIC, STRING e TEMPORAL, rimandando l'approfondimento completo di tutti gli altri, al manuale on-line

Continua a leggere »

MySql Ricerca full-text

October 20th 2011 by Paolo Bindi in: MySql | Tags: mysql fulltext search

Cos'e' e perche' si usa la ricerca Full-Text. Vi illustro nei dettagli i vantaggi e come si usa.

Continua a leggere »

MySql - Select annidata

September 2nd 2011 by Paolo Bindi in: MySql | Tags: mysql start with

Un esempio per visualizzare una struttura ad albero, con padri e figli annidati, su piu' livelli.

Continua a leggere »

MySql - Rename tabelle e campi to lower

June 15th 2011 by Paolo Bindi in: MySql | Tags: mysql rename lower table field

Vi illustro due istruzioni per rinominare tutte le tabelle di uno schema e nomi dei campi da maiuscolo a minuscolo. Ho avuto la necessita' di eseguire questo cambio, dopo la migrazione da Oracle a MySql.

Continua a leggere »

Convertire formato data da Oracle a MySql

May 18th 2011 by Paolo Bindi in: MySql | Tags: mysql oracle date convert

Per la migrazione da Oracle a MySql, le date, che sono in formato differente, occorre convertirle prima di eseguire l'insert nella relativa tabella.
Ho creato questa semplice funzione to_timestamp, che esiste gia' in Oracle, ma non in MySq

Continua a leggere »

MySql e UTC date

February 2nd 2011 by Paolo Bindi in: MySql | Tags: mysql UTC convert_tz

Per convertire una data ad un qualsiasi fuso orario, MySql mette a disposizione la funzione CONVERT_TZ (Link al manuale ufficiale )

Pero', prima di utilizzarla c'e' bisogno di alcuni accorgimenti...

Continua a leggere »

MySql - Confronto di schemi e tabelle di due db

December 20th 2010 by Paolo Bindi in: MySql | Tags: mysql mysqldiff

Esistono vari modi di effettuare il confronto tra due schemi, e molti di questi fanno riferimento a dei prodotti software, come ad esempio il Toad, SQLyog o DbForge.
QUi vi voglio invece illustrare due metodi, che sono carenti della parte grafica, ma che possono essere utilizzati a prescindere dal software e dall'ambiente sul quale si lavora (ad esempio, Toad non e' previsto per sistemi Ubuntu)

Continua a leggere »

MySql - Usare regexp all'interno delle query

September 25th 2010 by Paolo Bindi in: MySql | Tags: mysql regexp

Mysql permette di usare le espressioni regolari, tipiche del linguaggio PHP, all'interno delle query.
Vediamo come

Continua a leggere »

Una stored procedure Mysql di esempio

July 3rd 2010 by Paolo Bindi in: MySql | Tags: mysql stored procedure

Nel seguente articolo vi illustro la sintassi di una procedura per il caricamento dei dati in una tabella.
La procedura, che occorre chiamare nel seguente modo

CALL LOAD_DATA_PRUEBA (100000, 34118, 18794, 6, '2010-01-01');

Di seguito i dettagli di come costruire una semplice procedura in MySql

Continua a leggere »

MySql - Partitioning (II parte)

February 20th 2010 by Paolo Bindi in: MySql | Tags: mysql partitioning hash range

Nella seconda trattero' nel dettaglio i vari tipi di partizionamento, illustrando le caratteristiche principali e i vantaggi nell'uso di uno rispetto all'altro.

La lettura di questa sezione, prescinde dall'aver letto la parte I di questo articolo, che trovate nella sezione MySql.

Continua a leggere »

MySql - Partitioning (I parte)

February 15th 2010 by Paolo Bindi in: MySql | Tags: mysql partitioning hash range

Dalla versione 5.1, Mysql prevede, oltre a numerose novita', anche quella del partizionamento di indici e tabelle. Supporta cinque metodi di partizionamento orizzontale dei dati: range, hash, key, list e composite (sub-partizionamento).

Il partizionamento dei dati di indici e tabelle permette di ottenere tempi inferiori di risposta alle query, in quanto vengono analizzati soltanto i dati relativi alle partizioni pertinenti anziché le tabelle e gli indici nella loro totalità. Il partizionamento, inoltre, rende più semplici e veloci le operazioni di archiviazione e altre attività di manutenzione.

Di seguito vi illustro come implementare tale funzionalita', facendo riferimento alla documentazione ufficiale visualizzabile qui:

http://dev.mysql.com/doc/refman/5.1/en/partitioning.html

e al forum di discussione

http://forums.mysql.com/list.php?106

Continua a leggere »