SQLOptima Backup Pro - Portable Server
==========================================

What this is
------------
One self-contained EXE that runs on a Windows server and hosts:
  - Web console (React UI in wwwroot)
  - REST API (JWT)
  - Backup scheduler (Quartz)
  - Backup worker (SMO backups + cloud upload)

No separate API/Agent services are required for this bundle.

How to run
----------
1. Copy this entire folder (or unzip the archive) on the target Windows server.
2. Run SqlBackup.Server.exe (double-click or from PowerShell).
   Run as Administrator on first use if Windows prompts for DPAPI LocalMachine.
3. On first run the host creates:
     local.settings.json          machine secrets (keep private)
     FIRST_RUN_CREDENTIALS.txt    one-time admin password
     data\                        SQLite catalog, staging, local backups
4. Open http://127.0.0.1:5080 on that machine.

Default listen address: http://127.0.0.1:5080 (loopback only).
Change the port, still on this machine:
  set SQLBACKUP_URLS=http://127.0.0.1:9090
Remote browsers require HTTPS and a certificate. See docs\INSTALLATION.md.
Isolated lab only, cleartext on all interfaces:
  set SQLBACKUP_ALLOW_INSECURE_HTTP=true
  set SQLBACKUP_URLS=http://0.0.0.0:9090

Configure SQL Server
--------------------
After login (admin / password from FIRST_RUN_CREDENTIALS.txt):
  1. Servers  -> register SQL Server instances
  2. Storage  -> local path under data\backups and/or cloud object storage
  3. Plans    -> create schedules (native local + cloud mirror is the default)

Security
--------
- The default bind is loopback HTTP. Do not publish port 5080 to other machines without TLS.
- Change the admin password after first login and delete FIRST_RUN_CREDENTIALS.txt.
- Allow Windows Firewall only for trusted networks, and only after HTTPS is configured.

Stop
----
Press Ctrl+C in the console window, or close the window.
