Per monitorare un database MariaDB (e MySQL ovviamente) ci sono diversi strumenti a disposizione.

Il primo in assoluto è ovviamente mysqladmin, che fa parte dei tools di base di MariaDB.

Solo che non è facilissimo da usare, nel senso che bisogna conoscere molto bene dove andare a prelevare i dati, le query, ecc.

Ho deciso di eseguire il porting di un mio vecchio programma scritto in Java, da Swing a JavaFX.

Uno dei problemi che ho riscontrato è come rimpire una TableView da database.

Ovviamente le tabelle funzionano in maniera completamente diverse da Swing.

Qua vediamo proprio questo; però tenete in considerazione che:

  • come db uso SQLite (anche se cambia poco)
  • non spiegherò per filo e per segno come usare e installare il driver JDBC per SQLite; vi posterò direttamente il codice

Cominciamo dal db; la tabella che interroghiamo ha questa struttura:

0|id|INTEGER|1||1
1|title|VARCHAR|1||0
2|released|VARCHAR|0||0
3|genre|VARCHAR|0||0
4|director|VARCHAR|0||0
5|writer|VARCHAR|0||0
6|actors|VARCHAR|0||0
7|plot|VARCHAR|0||0
8|poster|VARCHAR|0||0
9|runtime|VARCHAR|0||0
10|imdb_id|VARCHAR|0||0

Facendo dei test, mi sono ritrovato con tutti questi utenti di root nella mia installazione di MariaDB (valido anche per MySQL):

root % No USAGE
root 127.0.0.1 Sì  ALL PRIVILEGES  
root ::1 Sì  ALL PRIVILEGES
root localhost Sì  ALL PRIVILEGES

Quando si parla di database e query, per tabelle pivot si intende traslare i dati ed incolonnarli in maniera differente dallo standard della tabella.

In pratica, facendo un esempio reale, ho questa query:

SELECT
IF (mov_tipo = "E", "ENTATE", "USCITE") tipo, YEAR(mov_data) anno, 
SUM(mov_valore) sum_val
FROM movimenti
WHERE mov_utente_fk = 1 
GROUP BY tipo, anno
ORDER BY anno DESC, tipo

Redis è uno dei database NoSQL più usati.

Nei repo di Debian 8 è già disponibile, ma in versioni precedenti alla 3.

Se invece vogliamo la versione 3, dobbiamo eseguire alcune operazioni.

Prima di tutto aggiungete queste righe al file /etc/apt/sources.list:

# redis 3
deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all