lazysql - Cheatsheet Terminal Database Management
lazysql è un”interfaccia utente terminale per la gestione dei database, scritta in Go (nello spirito di lazygit/lazydocker). Si connette a MySQL, PostgreSQL, SQLite e MSSQL, e ti consente di scorri schemi e tabelle, esegui SQL, pagina i risultati e modifica le righe — con keybinding stile Vim, connessioni multiple e viste a schede — tutto senza lasciare il terminale.
Installazione
| Piattaforma | Comando |
|---|
| Go install | go install github.com/jorgerojas26/lazysql@latest |
| macOS (Homebrew) | brew install lazysql |
| Arch Linux (AUR) | yay -S lazysql |
| Binary | scarica dalla pagina GitHub Releases |
| Verifica | lazysql --version |
Avvio
| Comando | Descrizione |
|---|
lazysql | Apri il connection manager |
lazysql "mysql://user:pass@localhost:3306/db" | Connettiti via URL |
lazysql "postgres://user:pass@localhost:5432/db" | URL PostgreSQL |
lazysql /path/to/file.sqlite3 | Apri un file SQLite |
lazysql --help | Elenco completo delle opzioni |
URL di Connessione
| Database | URL di Esempio |
|---|
| MySQL | mysql://user:pass@host:3306/dbname |
| PostgreSQL | postgres://user:pass@host:5432/dbname |
| SQLite | sqlite3:///absolute/path.db o un percorso file |
| MSSQL | sqlserver://user:pass@host:1433?database=dbname |
Le connessioni salvate vengono preserve nella config di lazysql così puoi selezionarle dal manager la prossima volta.
Keybinding Core
| Key | Azione |
|---|
Ctrl+e | Apri/modifica una nuova connessione |
Enter | Connettiti / apri l”elemento selezionato |
Tab / Backtab | Spostati tra riquadri (albero, risultati, editor) |
L | Focalizza l”editor SQL |
H | Focalizza le tabelle/sidebar |
q | Esci |
? | Help / riferimento keybinding |
Navigazione Dati
| Key | Azione |
|---|
j / k | Sposta riga giù / su |
h / l | Sposta colonna sinistra / destra |
g / G | Salta alla prima / ultima riga |
Ctrl+f / Ctrl+b | Pagina avanti / indietro |
/ | Filtra/ricerca nei risultati |
c | Modifica la cella selezionata |
d | Cancella la riga selezionata |
o | Aggiungi una nuova riga |
Esecuzione SQL
| Key/Azione | Descrizione |
|---|
Focalizza editor (L), scrivi SQL | Scrivi una query |
Ctrl+r | Esegui la query corrente |
| Riquadro risultati | Scorri le righe restituite |
| Multiple tabs | Mantieni aperte diverse query/set di risultati |
-- Nel riquadro dell''editor, poi Ctrl+r per eseguire
SELECT id, email, created_at
FROM users
WHERE created_at > NOW() - INTERVAL 7 DAY
ORDER BY created_at DESC;
Flusso di Lavoro di Modifica
| Passaggio | Come |
|---|
| Modifica una cella | Selezionala, premi c, scrivi, conferma |
| Stage changes | lazysql raggruppa le modifiche |
| Commit | Applica le modifiche in staging al database |
| Discard | Scarta le modifiche in staging prima di commit |
Flussi di Lavoro Comuni
# Ispeziona velocemente un database SQLite locale
lazysql ./app.db
# Connettiti a un Postgres dev e scorri le tabelle
lazysql "postgres://dev:dev@localhost:5432/myapp?sslmode=disable"
# Mantieni multiple connessioni e schede per una migration review
lazysql # aggiungi connessioni nel manager, cambia con schede
lazysql vs Altri DB Client
| Aspetto | lazysql | Harlequin | psql/mysql CLI |
|---|
| Interfaccia | TUI, multi-DB | TUI SQL IDE | Plain REPL |
| Keybinding | Stile Vim | Stile editor | Readline |
| Data editing | Modifica cella inline | Query-driven | SQL only |
| Migliore per | Browsing + light edits | Scrivere/iterare SQL | Scripting, admin |
Risorse