@page @model PlanTempusAdmin.Pages.Setup.DatabaseModel @{ ViewData["Title"] = "Database Schema"; }
backup-logs.sql
@Model.SqlSchema
Database Bruger Setup

Opret en dedikeret bruger til backup scriptet:

-- Opret bruger til backup script
CREATE USER backup_writer WITH PASSWORD 'your_secure_password_here';

-- Giv rettigheder
GRANT CONNECT ON DATABASE plantempus TO backup_writer;
GRANT USAGE ON SCHEMA public TO backup_writer;
GRANT INSERT, UPDATE ON backup_logs TO backup_writer;
GRANT USAGE, SELECT ON SEQUENCE backup_logs_id_seq TO backup_writer;

-- Giv læseadgang (brug din eksisterende app-bruger)
-- GRANT SELECT ON backup_logs TO your_app_user;
-- GRANT SELECT ON backup_repository_summary TO your_app_user;
Tabel Struktur
Kolonne Type Beskrivelse
idSERIALPrimary key
started_atTIMESTAMPBackup start tidspunkt
completed_atTIMESTAMPBackup slut tidspunkt
duration_msINTEGERVarighed i millisekunder
backup_typeVARCHAR(50)'forgejo_repos', 'postgres_db', etc.
source_nameVARCHAR(255)Repository eller database navn
source_pathVARCHAR(500)Fuld sti på serveren
destinationVARCHAR(50)'azure_blob', 's3', 'local', 'sftp'
remote_pathVARCHAR(500)Sti på destination
statusVARCHAR(20)'running', 'success', 'failed', 'partial'
size_bytesBIGINTBackup størrelse
file_countINTEGERAntal filer i backup
error_messageTEXTFejlbesked hvis fejlet
error_codeVARCHAR(50)Fejlkode
retry_countINTEGERAntal forsøg
hostnameVARCHAR(100)Server hostname
script_versionVARCHAR(20)Script version
checksumVARCHAR(64)SHA256 checksum
@section Scripts { }