Daten und Sicherung
Zwei Wurzeln: das Datenverzeichnis — frei wählbar — und das Installationsverzeichnis, auf das alle übrigen relativen Pfade bezogen sind.
Was wo liegt — und was in die Sicherung gehört
Abschnitt betitelt „Was wo liegt — und was in die Sicherung gehört“| Pfad | Inhalt | Sicherung |
|---|---|---|
<Datenverzeichnis>\portal.db |
Konten, Mandanten, Mitgliedschaften, Rechnungsdaten, Nummernkreise, Stammdaten, Kontingentzähler, Verlauf | ja |
<Datenverzeichnis>\tenants\{id}\invoices\ |
archivierte Rechnungsdateien je Mandant | ja |
<Datenverzeichnis>\tenants\{id}\templates\ |
eigene Word-Vorlagen je Mandant | ja |
<Datenverzeichnis>\pdf-import-lexicon.custom.json |
eigene Feldbeschriftungen des PDF-Imports, falls angelegt | ja |
<Zielverzeichnis>\keys\api-keys.json |
API-Schlüssel — nur Hashes, der Klartext existiert nirgends | ja, sonst sind alle Schlüssel neu auszugeben |
<Zielverzeichnis>\.aspnet\DataProtection-Keys\ |
Schlüsselring für Anmelde-Cookie, Formularschutz und Zeitfalle | ja, sonst fliegen alle Sitzungen |
<Zielverzeichnis>\appsettings.Production.json |
die Konfiguration | ja |
<Zielverzeichnis>\usage\ |
Nutzungsprotokoll samt Inhalten, wenn eingeschaltet | optional |
<Zielverzeichnis>\logs\ |
Protokolldateien, 30 Tage | nein |
Beim Aktualisieren müssen erhalten bleiben
Abschnitt betitelt „Beim Aktualisieren müssen erhalten bleiben“appsettings.Production.json, das Datenverzeichnis, keys\, .aspnet\, usage\ und logs\.
Der Windows-Installer tauscht nur Programmdateien aus und hält sich daran. Wer eigene Verteilwege baut, muss diese Ausnahmen nachbilden.
Für eine konsistente Sicherung den Dienst kurz stoppen
Abschnitt betitelt „Für eine konsistente Sicherung den Dienst kurz stoppen“Die SQLite-Datenbank läuft im WAL-Modus; eine Dateikopie im laufenden Betrieb kann unvollständig sein.
sc stop Invoiceflair:: … sichern …sc start InvoiceflairWiederherstellung
Abschnitt betitelt „Wiederherstellung“- Dienst stoppen
- Die gesicherten Dateien zurückkopieren
- Dienst starten
Das Datenbankschema wird beim Start automatisch auf den Stand der installierten Version gebracht.
Die Anwendung räumt selbst auf
Abschnitt betitelt „Die Anwendung räumt selbst auf“Einmal beim Start und danach alle 24 Stunden werden abgelaufene Anmelde-Token und nicht angenommene Einladungen älter als 30 Tage entfernt. Ein Fehlschlag dabei nimmt den Dienst nicht mit — er wird protokolliert und beim nächsten Durchlauf wiederholt.