Questa pagina descrive Calíope 1.5, la versione che sto costruendo adesso. La 1.4 è sull'App Store per Mac, iPad, iPhone, Apple Watch, Apple TV e Apple Vision Pro. Il changelog dice in quale versione è arrivata ogni funzione.

Aggiunge a ogni argomento un pulsante «Apri in Calíope». Funziona solo con l'app installata.

Manutenzione tabelle

Manutenzione delle tabelle

Analizza, controlla, ottimizza o ripara le tabelle selezionate, con le operazioni di cui dispone il server.

Dove si trova: Workspace › Strumenti › Manutenzione tabelle

Apri Manutenzione tabelle dalla barra laterale del workspace. Seleziona le tabelle nell'albero a sinistra (la casella di un database seleziona tutte le sue tabelle, oppure spuntale una per una), scegli l'operazione in alto — ANALYZE, CHECK, CHECKSUM, OPTIMIZE o REPAIR — e premi Esegui. Accanto al pulsante vedi quante tabelle sono selezionate.

I risultati compaiono sotto, una riga per ogni messaggio che il server restituisce per ciascuna tabella: gli avvisi sono evidenziati in arancione e gli errori in rosso. Su InnoDB, OPTIMIZE risponde con una nota: ricostruisce la tabella e la analizza al suo posto. CHECKSUM dà un numero per tabella; lo stesso numero su due server significa le stesse righe. REPAIR viene eseguito solo sulle tabelle il cui motore di archiviazione sa ripararsi: MyISAM, Aria, ARCHIVE e CSV. Prima di eseguirlo, una riga sotto i modificatori dice quante delle tabelle selezionate verranno saltate, e ognuna riceve una riga che spiega perché; su InnoDB la riga suggerisce OPTIMIZE, che ricostruisce la tabella. Sul Mac, fai clic sull'intestazione di una colonna per ordinare i risultati; Svuota i risultati svuota l'elenco. Mentre un'operazione è in corso, accanto a Esegui compaiono una barra di avanzamento e Annulla; le tabelle vengono elaborate una alla volta, quindi annullare si ferma prima della successiva.

L’albero ha un filtro per nome nell’intestazione, come quello dell’Editor SQL: digita parte del nome di un database o di una tabella per restringere l’elenco. Ogni database carica le sue tabelle la prima volta che lo espandi, quindi se filtri con database non espansi il piè di pagina indica quanti mancano e propone di caricarli. Seleziona tutto percorre tutti i database del server tranne quelli di sistema del server stesso, che puoi spuntare a mano, e può richiedere qualche secondo. Se il server rifiuta l'operazione su una tabella, quella tabella riceve una riga di errore con il messaggio del server.

SQL Server

Le operazioni sono tre: ANALYZE (UPDATE STATISTICS), CHECK (DBCC CHECKTABLE) e OPTIMIZE (ALTER INDEX ALL … REBUILD). Non c'è REPAIR —richiede il database in modalità utente singolo e può perdere dati— né CHECKSUM. OPTIMIZE blocca la tabella mentre la ricostruisce: la ricostruzione online esiste solo nell'edizione Enterprise, e non con indici spaziali.

PostgreSQL

Le operazioni sono due: ANALYZE e OPTIMIZE, che esegue VACUUM e poi REINDEX TABLE CONCURRENTLY, quindi dà due righe per tabella; nessuna delle due ferma la tabella. Non c'è CHECK —il nucleo non ha niente di simile—, né REPAIR, né CHECKSUM, né modificatori. VACUUM FULL, l'unica che restituisce spazio al sistema, è lasciata fuori di proposito: blocca l'intera tabella mentre la riscrive. Su un server precedente alla 12, OPTIMIZE si ferma al VACUUM e la riga dell'indice dice perché.

Parole chiave: ANALYZE, CHECK, OPTIMIZE, REPAIR, manutenzione, CHECKSUM

Modificatori di operazione

Opzioni aggiuntive che modificano il comportamento dell'operazione.

Dove si trova: Manutenzione tabelle › Griglia dei modificatori

Sotto l'operazione, la griglia dei modificatori: LOCAL (senza binlog), FOR UPGRADE, QUICK, FAST, MEDIUM, EXTENDED, CHANGED e USE_FRM. Ogni operazione attiva solo quelli che accetta, e cambiare operazione li deseleziona. Ad esempio, QUICK accelera CHECK perché non scorre le righe in cerca di collegamenti errati, FOR UPGRADE verifica la compatibilità con la versione attuale del server, e LOCAL tiene ANALYZE, OPTIMIZE e REPAIR fuori dal log binario, così le repliche non li ripetono. Con CHECKSUM, QUICK restituisce solo il checksum che una tabella mantiene aggiornato, e la maggior parte non ne mantiene. USE_FRM ricostruisce l'indice di una tabella MyISAM dalla sua definizione, come ultima risorsa.

La griglia mostra solo i modificatori che il motore ha. Con SQL Server CHECK accetta PHYSICAL_ONLY (solo la struttura, più veloce) e EXTENDED_LOGICAL_CHECKS; con PostgreSQL non ce n'è nessuno e la sezione non viene disegnata.

Parole chiave: QUICK, EXTENDED, FOR UPGRADE, LOCAL, modificatori