Diese Seite beschreibt Calíope 1.5, die Version, die wir gerade bauen. Die 1.4 ist fertig und in der App-Review, und der Store liefert heute 1.3 auf dem Mac und 1.2 auf dem iPad. Das Changelog sagt, in welcher Version jede Funktion kam.
Fügt jedem Thema einen Button „In Calíope öffnen“ hinzu. Funktioniert nur mit installierter App.
Lade tabellarische Daten aus CSV-, JSON- oder Excel-Dateien direkt in eine MySQL-Tabelle.
Wo es zu finden ist: Schema-Baum › Rechtsklick › Daten importieren…
Calíope enthält einen Import-Assistenten in drei Schritten, um Daten aus externen Dateien zu laden.
Zugriff:
Mach einen Rechtsklick (macOS) oder halte gedrückt (iPad) auf den Namen einer Tabelle im Schema-Baum und wähle Daten importieren…. Der Assistent öffnet sich mit der ausgewählten Datenbank und Tabelle vorkonfiguriert.
Schritt 1 — Datei:
Klick auf Datei auswählen… und wähle die zu importierende Datei. Der Assistent erkennt das Format automatisch.
Unterstützte Formate:
- CSV — mit automatischer Erkennung des Trennzeichens (,, ;, Tabulator).
- JSON — Array von Objekten [{…}, {…}].
- Excel (.xlsx) — erstes Blatt der Arbeitsmappe von Microsoft Excel oder Numbers.
Schritt 2 — Spalten:
Der Assistent zeigt die Spalten der Datei und eine Auswahl, um jede der entsprechenden Spalte der Zieltabelle zuzuordnen. Nicht zugeordnete Spalten werden als Ignorieren gekennzeichnet und nicht importiert. Aktiviere Erste Zeile ist Kopfzeile, wenn die Datei eine Titelzeile hat.
Schritt 3 — Importieren:
Konfiguriere die Importoptionen:
- Einfügemodus:
- INSERT — fügt Zeilen normal ein. Schlägt fehl, wenn ein Primärschlüsselkonflikt besteht.
- INSERT IGNORE — fügt neue Zeilen ein und ignoriert stillschweigend die bereits vorhandenen (PK-Duplikate).
- REPLACE — wenn ein PK-Konflikt besteht, löscht die vorhandene Zeile und fügt die neue ein.
- Zeilen pro Batch — Anzahl der Zeilen, die in jeder INSERT-Anweisung eingefügt werden. Optionen: 100, 500 oder 1000. Größere Batches sind schneller, verbrauchen aber mehr Serverspeicher.
Das Log-Panel zeigt den Fortschritt und das Ergebnis Zeile für Zeile.
Exportiere ausgewählte Datenbanken und Objekte in eine .sql- oder .sql.gz-Datei, ohne die Oberfläche zu blockieren.
Wo es zu finden ist: Workspace › Werkzeuge › Backup
Öffne Backup in der Navigationsleiste des Workspace. Wähle im Tab Backup die einzubeziehenden Datenbanken und Objekte über den Baum links aus. Konfiguriere die Optionen und wähle die Zieldatei. Klick auf Backup erstellen.
Verarbeitung im Hintergrund:
Das Backup läuft vollständig außerhalb des Hauptthreads. Die Oberfläche bleibt vollständig reaktionsfähig, während die Engine die Daten ausgibt. Das untere Log-Panel zeigt den Fortschritt Objekt für Objekt in Echtzeit.
Geschätzte Zeit (ETA):
Sobald das erste Objekt verarbeitet ist, erscheint neben dem Fortschrittsbalken ein Zähler für die geschätzte verbleibende Zeit, berechnet aus der aktuellen Dump-Geschwindigkeit.
Ein Backup abbrechen:
Klick jederzeit auf Abbrechen. Die Engine stoppt den Dump nach Abschluss des laufenden Vorgangs und entfernt die unvollständige Datei von der Festplatte.
macOS: die Datei wird am gewählten Pfad über das Finder-Panel gespeichert. iPad: nach Abschluss erscheint die Schaltfläche Datei teilen, um in den Gerätespeicher oder auf iCloud Drive zu exportieren.
Benachrichtigung nach Abschluss:
Wenn du während eines langen Backups die App minimierst oder wechselst, sendet Calíope nach Abschluss oder im Fehlerfall eine lokale Benachrichtigung. Erfordert erteilte Benachrichtigungsberechtigung (macOS: Mitteilungszentrale; iPad: Einstellungen › Mitteilungen). Aktiviere oder deaktiviere diese Benachrichtigung unter Einstellungen › Benachrichtigungen › Manuelles Backup im Hintergrund.
Wähle, welche Tabellen, Views, Routinen und Benutzer einbezogen werden.
Wo es zu finden ist: Backup › Auswahlbaum
Der Baum links zeigt jede Datenbank mit ihren Objekttypen: Tabellen, Views, Routinen, Trigger und Events. Verwende die Schnellschaltflächen Alles, Nichts und Nur Tabellen für die blockweise Auswahl oder markiere/entmarkiere einzeln. Der Abschnitt Benutzer erlaubt es, Benutzer und ihre Berechtigungen in das Backup aufzunehmen.
Der Baum hat zudem einen Filter nach Namen in der Kopfzeile und zeigt neben jeder Tabelle die geschätzte Größe. Das Kontrollkästchen jeder Datenbank wählt ihren gesamten Inhalt aus oder ab, und rechts daneben sehen Sie, wie viele Objekte von wie vielen ausgewählt sind. Der Abschnitt Benutzer liegt unter dem Baum, nicht darin: Benutzer gehören zum Server und hängen an keiner Datenbank.
Führe eine .sql- oder .sql.gz-Datei gegen den Server aus, um Daten wiederherzustellen.
Wo es zu finden ist: Backup › Tab Wiederherstellen
Wähle im Tab Wiederherstellen die Datei über die einheitliche Auswahl. Es werden .sql- und .sql.gz-Dateien (mit gzip komprimiert) akzeptiert; Calíope erkennt das Format anhand der magischen Zahl der Datei, nicht anhand der Erweiterung, sodass ein Umbenennen der Datei das Ergebnis nicht ändert.
Vorschau: klick auf Vorschau, um die ersten ~200 Zeilen vor der Ausführung zu prüfen. Nützlich, um zu prüfen, welche Datenbanken und Anweisungen ein Dump enthält, bevor du ihn anwendest.
Vorherige Bestätigung: beim Klick auf Wiederherstellen erscheint eine Zusammenfassung mit der Anzahl der erkannten Anweisungen und den betroffenen Datenbanken (extrahiert aus USE, CREATE DATABASE und DROP DATABASE). Wenn das Skript DROP-Anweisungen enthält, wird die Bestätigungsschaltfläche rot markiert.
Abbruch: während der Wiederherstellung kannst du auf Abbrechen klicken, um die Ausführung nach der aktuellen Anweisung zu stoppen.
Fehler: das Log-Panel zeigt jeden Fehler mit der ersten Zeile der fehlgeschlagenen Anweisung, um sie im ursprünglichen Dump identifizieren zu können.
macOS: die Auswahl öffnet den Standard-Finder-Dialog. iPad: die Auswahl verwendet den Dokumentbrowser des Systems, mit Zugriff auf iCloud Drive und kompatible Apps. Es wird ein security-scoped bookmark erzeugt, um die Datei nach dem Schließen des Pickers erneut lesen zu können.
Erfordert aktive Verbindung: die Schaltfläche ist deaktiviert, wenn kein Server verbunden ist. Ein oranger Hinweis weist darauf hin.
Konfiguriere Inhalt, Format und Komprimierung der erzeugten Backup-Datei.
Wo es zu finden ist: Backup › Optionsabschnitt
Im Tab Backup erlaubt der Optionsabschnitt einzustellen, was die erzeugte Datei enthält:
- DROP vor CREATE — fügt DROP TABLE IF EXISTS (oder DROP VIEW, DROP PROCEDURE usw.) vor jeder CREATE-Anweisung hinzu. Empfohlen für saubere Wiederherstellungen, die vorhandene Objekte überschreiben.
- Daten einbeziehen — fügt INSERT-Anweisungen mit den Daten jeder ausgewählten Tabelle hinzu. Deaktiviere es, um nur das Schema zu erzeugen (Struktur ohne Daten).
- Datum im Dateinamen einbeziehen — fügt das aktuelle Datum und die Uhrzeit zum Namen der Ausgabedatei hinzu (z. B. backup_2025-06-05_14-30.sql).
- Benutzer einbeziehen — exportiert die MySQL-Benutzerkonten und ihre Berechtigungen mit CREATE USER- und GRANT-Anweisungen.
- Benutzerpasswörter einbeziehen — explizite Option, standardmäßig deaktiviert. Wenn sie ausgeschaltet ist, werden die CREATE USER / GRANT mit IDENTIFIED BY '***REDACTED***' geschrieben. Aktiviere sie nur, wenn du die Datei auf demselben Server wiederherstellst und sicher bist, dass der Zielordner nicht mit iCloud Drive, Dropbox oder einem anderen Dienst synchronisiert wird.
- Ausgabe komprimieren (.sql.gz) — wendet gzip-Komprimierung auf die Datei an, während sie erzeugt wird, ohne das vollständige SQL im Speicher zu halten. Die resultierende Datei ist um 70 % bis 85 % kleiner als die entsprechende .sql. Die Komprimierung erfolgt in Echtzeit über das Compression-Framework von Apple.
macOS: die Datei wird über den Standard-Finder-Dialog gespeichert. iPad: nach Abschluss des Backups erlaubt die Schaltfläche Datei teilen, die .sql oder .sql.gz an jedes mit der Dateiauswahl des Systems kompatible Ziel zu exportieren.
Stichwörter: backup optionen, DROP IF EXISTS, daten einbeziehen, benutzer einbeziehen, schema, struktur, daten, dateidatum, drop before create, komprimieren, gzip, sql.gz, komprimierung
Konfiguriere wiederkehrende tägliche oder wöchentliche Backups mit Benachrichtigung nach Abschluss.
Wo es zu finden ist: Workspace › Werkzeuge › Backup
Calíope kann Backups automatisch ohne manuellen Eingriff ausführen. Um sie zu konfigurieren, öffne das Panel Backup in der Seitenleiste des Workspace.
So konfigurierst du ein geplantes Backup:
1. Klick im Abschnitt Geplant innerhalb des Backup-Panels auf Zeitplan hinzufügen.
2. Wähle die zu sichernde Datenbank, die Häufigkeit (täglich oder wöchentlich), die Ausführungszeit und den Zielordner.
3. Aktiviere den Schalter des Zeitplans, damit er läuft.
Verhalten:
- Wenn die App zur konfigurierten Zeit geöffnet ist, läuft das Backup im Hintergrund, ohne die Oberfläche zu blockieren.
- Nach Abschluss erhältst du eine Systembenachrichtigung mit dem Namen der Datei und ihrer Größe.
- Wenn die App zur geplanten Zeit nicht geöffnet war, wird das Backup als ausstehend markiert und beim nächsten Öffnen der App ausgeführt.
- Die ältesten Backups werden automatisch gelöscht, sobald die konfigurierte maximale Anzahl von Kopien überschritten wird.
Auswahl des Zielordners:
Calíope läuft in einer strengen Sandbox (Voraussetzung des App Store). Wenn du den Ordner mit Durchsuchen auswählst, wird eine dauerhafte Berechtigung für diesen spezifischen Pfad erzeugt. Wenn du den Ordner danach verschiebst oder umbenennst, weist dich die App darauf hin, dass du ihn erneut auswählen musst. Den Pfad von Hand in der Karte zu bearbeiten, reicht nicht — verwende immer die Schaltfläche Durchsuchen.
Leistung:
Geplante Backups verwenden dieselbe Streaming-Engine wie die manuellen: sie schreiben Objekt für Objekt direkt auf die Festplatte, ohne das SQL im Speicher anzusammeln. Das ermöglicht das Sichern von Datenbanken beliebiger Größe ohne Risiko einer RAM-Erschöpfung oder eines Absturzes der App.
Verfügbar auf macOS, iPad und iPhone. Erfordert die Benachrichtigungsberechtigung des Systems.
Verwende die Parameter eines Backups wieder, ohne es zeitlich zu planen. Sie werden auf Abruf mit einem Klick ausgeführt.
Wo es zu finden ist: Backup › Tab Geplant
Neben den automatischen Backups (täglich, wöchentlich, werktags, monatlich oder alle N Stunden) kann der Tab Geplantmanuelle Vorlagen aufnehmen: mit Namen gespeicherte Konfigurationen, die nur ausgeführt werden, wenn du in ihrer Zeile auf die Schaltfläche Ausführen klickst.
So erstellst du eine manuelle Vorlage:
1. Klick im Tab Backup, nach dem Konfigurieren von Ziel und Optionen, auf Als Konfiguration speichern… neben der Schaltfläche Backup erstellen. Die Vorlage wird im Tab Geplant mit der Häufigkeit "Manuell — auf Abruf" registriert.
2. Alternativ wähle unter Geplant › Hinzufügen in der Häufigkeitsauswahl die Option Ohne Zeitplan (auf Abruf ausführen).
Visuelle Unterschiede eines manuellen Presets:
- Indigofarbenes Symbol bolt.circle.fill (statt grünem calendar.badge.checkmark für aktive geplante).
- Primäre Schaltfläche Ausführen immer in der Zeile sichtbar.
- Kein Aktiv/Inaktiv-Toggle und keine "nächste Ausführung" (nicht zutreffend).
- Keine Ansammlung von missedRuns (nehmen nicht am automatischen Zyklus teil).
Verfügbare Häufigkeiten für automatische Backups:
- Täglich zu einer festen Uhrzeit.
- Wöchentlich an einem bestimmten Wochentag.
- Mo–Fr (werktags) von Montag bis Freitag.
- Monatlich an einem bestimmten Tag (1–28) des Monats.
- Alle N Stunden gezählt ab dem letzten Lauf.
- Manuell (auf Abruf) — ohne automatischen Zeitplan.
Ausführungsverlauf: jedes geplante Backup speichert die letzten 10 Ausführungen (Erfolge, Fehlschläge, abgebrochene und übersprungene). Das Symbol clock.arrow.circlepath in der Zeile öffnet das Sheet mit der Tabelle.
Stichwörter: preset, vorlage, manuell, auf abruf, geplant, häufigkeit, monatlich, werktags, alle N stunden, verlauf, run history