SQLWorkbench è un SQL query tool free particolarmente efficace che supporta un ampio numero di DBMS. Scritto in Java è in grado di interfacciarsi con qualsiasi database per il quale sia disponibile un JDBC driver. Essendo in java SQLWorkbench potrebbe essere eseguito in qualsiasi Sistema Operativo che disponga di JRE ( Java Runtime Environment)
Tra i database supportati e testati ci sono MySQL e MariaDB SQL. Di seguito i passi per “installare” e configurare SQLWorkbench per MySQL.
La configurazione per il database postgresql nel post: SQLWorkbench build 125 configurare per PostgreSQL – debian 9.xx
L’ultima versione stabile è la Build 125 del 5 maggio 2019.
Release Note Build 125. Con questa release si è avuto un cambio nel layout delle directory. Tutte le librerie addizionali ( es. esportazione excel ) ora si trovano nella sottodirectory /ext. Pertanto conviene effettuare il download con tutte le librerie opzionali che verranno posizionate correttamente.
Di fatto SQLWorkbench non necessita di una vera installazione è sufficiente scaricare il pacchetto generico, decomprimere e lanciare lo script sqlworkbench.sh. Per poter utilizzare SQLWorkbench è ovviamente necessario java JRE.
Controllare la versione java disponibile con java -version
# java -version openjdk version "1.8.0_212" OpenJDK Runtime Environment (build 1.8.0_212-8u212-b03-2~deb9u1-b03) OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)
Configurare e Installare SQLWorkbench per MySQL
Il pacchetto SQLWorkbench è disponibile alla pagina
http://www.sql-workbench.net/downloads.html
Per poter interagire con MySQL serve inoltre lo specifico driver JDBC. Il driver che andra opportunamente configurato in SQLworkbench è scaricabile dalla pagina
https://dev.mysql.com/downloads/connector/j/
la versione corrente di mysql JDBC Driver è la 8.0.16.
Scaricare la versione JDBC Platform independent
una volta scaricato il driver effettuare il check md5 con
# md5sum mysql-connector-java-8.0.16.tar.gz 3cd3a2cfa510b48fc54fadfc1db5db61 mysql-connector-java-8.0.16.tar.gz# md5sum mysql-connector-java-8.0.16.tar.gz
decomprimere con
# tar zxvf mysql-connector-java-8.0.16.tar.gz
Il driver estratto
mysql-connector-java-8.0.16.jar
andrà copiato nella directory /ext di sqlworkbench
Operando da terminale
scegliamo la directory opt per l’applicazione quindi
su mkdir /opt/sqlworkbench cd /opt/sqlworkbench
SQLWorkBench 125 con le librerie opzionali occupa circa 26MB e può essere scaricato con
# wget http://www.sql-workbench.eu/Workbench-Build125-with-optional-libs.zip ... Workbench-Build125-with-op 100%[=======================================>] 26.40M 1.03MB/s in 26s wget http://www.sql-workbench.eu/Workbench-Build125-with-optional-libs.zip
Decomprimiamo il pacchetto con
# unzip Workbench-Build125-with-optional-libs.zip
Rendiamo eseguibile per tutti gli users lo script di avvio workbench.sh
# chmod a+x sqlworkbench.sh
copiare il driver mysql-connector-java-8.0.16.jar che dovrebbe trovarsi in
Download/mysql-connector-java-8.0.16
in
/opt/sqlworkbench/ext
Volendo si può creare un link simbolico a sqlworkbench nel desktop con
ln -s /opt/sqlworkbench/sqlworkbench.sh sqlworkbench
avviamo. Come sempre all’ avvio la finestra in primo piano è quella per creare un profilo di connessione.
Per connettersi a MySQL è necessario a questo punto configurare il driver.
- Click sul pulsante Manage Drivers
- In primo piano ci sarà la finestra Manage drivers
- Selezionare MySQL dall’ elenco di destra con i DBMS supportati
- Click sul pulsante cartella in alto a sinistra e selezionare il file driver JDBC per mysql. Evidenziato in giallo era stato precedentemente scaricato nella cartella ext. Premere Open apparirà nella Library il driver .jar quindi premere OK.
- a questo punto è possibile completare il profilo di connessione
Si dovrà inserire:
- nome per la connessione
- nell URL: host (ip, dominio), porta e database
- username e password
Se si verifica l’errore:
"The server time zone value 'EDT' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support."
E’ necessario impostare la variabile serverTimezone = UTC utilizzando il pulsante [ Extended Properties ].
Collegamento diretto a server arvixe
Ricercare una stringa in tutto il database mysql
SQLworkbench in azione. Grazie alla funzione WbGrepData è possibile ricercare una stringa in qualsiasi campo (field) di tutte le tabelle del database. In questo caso la ricerca della stringa maurizio
WbGrepData -searchValue=maurizio -tables=* -types=table
viene riscontrata in 3 tabelle mysql. Tutte chiaramente visualizzate.
Database Compatibili con SQLworkbench
- PostgreSQL (Download JDBC driver)
- HSQLDB
- H2 Database Engine
- Firebird SQL (Download JDBC driver)
- Apache Derby
- Oracle (Download JDBC driver)
- Microsoft SQL Server (Download JDBC driver)
- IBM DB2
- MySQL (Download JDBC Driver)
- HP Vertica (Download JDBC driver)
Risorse: