Manutenzione delle tabelle
Apri in CalíopeAnalizza, 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