Esta página describe Calíope 1.5, la versión que estoy construyendo ahora mismo. La 1.4 ya está en la App Store para Mac, iPad, iPhone, Apple Watch, Apple TV y Apple Vision Pro. El changelog dice en qué versión llegó cada función.

Añade un botón «Abrir en Calíope» a cada tema. Sólo funciona con la app instalada.

Mantenimiento de tablas

Mantenimiento de tablas

Analiza, comprueba, optimiza o repara las tablas seleccionadas, con las operaciones que tiene el servidor.

Dónde está: Espacio de Trabajo › Herramientas › Mantenimiento de tablas

Abre Mantenimiento de tablas desde la barra lateral del workspace. Selecciona las tablas en el árbol de la izquierda (la casilla de una base marca todas sus tablas, o márcalas una a una), elige la operación arriba —ANALYZE, CHECK, CHECKSUM, OPTIMIZE o REPAIR— y pulsa Ejecutar. Junto al botón ves cuántas tablas hay seleccionadas.

Los resultados aparecen debajo, una fila por cada mensaje que el servidor devuelve para cada tabla: los avisos se resaltan en naranja y los errores en rojo. En InnoDB, OPTIMIZE responde con una nota: reconstruye la tabla y la analiza en su lugar. CHECKSUM da un número por tabla; el mismo número en dos servidores significa las mismas filas. REPAIR sólo se ejecuta sobre tablas cuyo motor de almacenamiento sabe repararse: MyISAM, Aria, ARCHIVE y CSV. Antes de ejecutarlo, una línea bajo los modificadores dice cuántas de las tablas marcadas se saltarán, y cada una recibe una fila que explica por qué; en InnoDB la fila sugiere OPTIMIZE, que reconstruye la tabla. En el Mac, pulsa la cabecera de una columna para ordenar los resultados; Limpiar resultados vacía la lista. Mientras una operación corre, junto a Ejecutar aparecen una barra de progreso y Cancelar; las tablas se procesan de una en una, así que cancelar se detiene antes de la siguiente.

El árbol tiene un filtro por nombre en su cabecera, igual que el del Editor SQL: escribe parte del nombre de una base o de una tabla para acotar la lista. Cada base carga sus tablas la primera vez que la despliegas, así que si filtras con bases sin desplegar, el pie del panel te dice cuántas faltan y ofrece cargarlas. Seleccionar todo recorre todas las bases del servidor salvo las de sistema del propio servidor, que puedes marcar a mano, y puede tardar unos segundos. Si el servidor rechaza la operación sobre una tabla, esa tabla sale con una fila de error y el mensaje del servidor.

SQL Server

Hay tres operaciones: ANALYZE (UPDATE STATISTICS), CHECK (DBCC CHECKTABLE) y OPTIMIZE (ALTER INDEX ALL … REBUILD). No hay REPAIR —exige la base en modo de un solo usuario y puede perder datos— ni CHECKSUM. OPTIMIZE bloquea la tabla mientras la reconstruye: la reconstrucción en línea sólo existe en la edición Enterprise, y no con índices espaciales.

PostgreSQL

Hay dos operaciones: ANALYZE y OPTIMIZE, que ejecuta VACUUM y después REINDEX TABLE CONCURRENTLY, así que da dos filas por tabla; ninguna de las dos para la tabla. No hay CHECK —el núcleo no tiene nada parecido—, ni REPAIR, ni CHECKSUM, ni modificadores. VACUUM FULL, la única que devuelve espacio al sistema, se deja fuera a propósito: bloquea la tabla entera mientras la reescribe. En un servidor anterior a la 12, OPTIMIZE se queda en el VACUUM y la fila del índice dice por qué.

Palabras clave: ANALYZE, CHECK, OPTIMIZE, REPAIR, mantenimiento, CHECKSUM

Modificadores de operación

Opciones adicionales que modifican el comportamiento de la operación.

Dónde está: Mantenimiento de tablas › Cuadrícula de modificadores

Debajo de la operación, la cuadrícula de modificadores: LOCAL (sin binlog), FOR UPGRADE, QUICK, FAST, MEDIUM, EXTENDED, CHANGED y USE_FRM. Cada operación activa sólo los que acepta, y cambiar de operación los desmarca. Por ejemplo, QUICK acelera CHECK porque no recorre las filas buscando enlaces incorrectos, FOR UPGRADE verifica la compatibilidad con la versión actual del servidor, y LOCAL deja ANALYZE, OPTIMIZE y REPAIR fuera del registro binario, para que las réplicas no los repitan. Con CHECKSUM, QUICK sólo informa de la suma que la tabla mantiene en vivo, y casi ninguna la mantiene. USE_FRM reconstruye el índice de una tabla MyISAM a partir de su definición, como último recurso.

La rejilla enseña sólo los modificadores que tiene el motor. Con SQL Server CHECK admite PHYSICAL_ONLY (sólo la estructura, más rápido) y EXTENDED_LOGICAL_CHECKS; con PostgreSQL no hay ninguno y la sección no se dibuja.

Palabras clave: QUICK, EXTENDED, FOR UPGRADE, LOCAL, modificadores