{% extends "admin/dbs/wiki/_layout.html" %} {% block wiki %}
python manage.py dbs backup OUTPUT [--allow-missing-files] [--database ALIAS]
python manage.py dbs backup --stream [--prefix PREFIX] [--output-dir DIR]
python manage.py dbs restore INPUT [--dry-run] [--flush]
python manage.py dbs validate INPUT [--passphrase]
python manage.py dbs schedule [--interval 6h] [--keep 1-5] [--once]
python manage.py dbs health [--json]
python manage.py dbs audit verify
python manage.py dbs connection [--json]
python manage.py dbs key --show
python manage.py dbs security status|unlock USER|retrain|purge
python manage.py dbs ai [--agents] [--check]
python manage.py dbs upgrade [--check] [--self [--to X.Y.Z]] [--backups DIR]
dbs backup OUTPUT refuses a path that already exists. A missing or unreadable
source file stops it; --allow-missing-files backs up without the file and lists
what was left out.
dbs audit verify walks the audit trail's hash chain: each finished row is sealed
with the SHA-256 of the row before it and its own content, so a row changed or deleted after
it was written breaks the chain there. It prints the first broken link, or the head of the
chain to keep somewhere else. No DBS command deletes audit rows.
The standalone manager, outside any project (pip install "django-dbs[manager]"):
django_dbs run [--port] [--host] [--trusted-proxy CIDR] [--no-browser]
django_dbs createuser NAME --role admin|operator|viewer
django_dbs account list|role|disable|enable|reset-2fa
django_dbs password NAME
django_dbs server list|show|add|edit|remove|check|discover|browse|confirm-host-key
django_dbs backup list|take|verify|restore|download|upload|delete|undo-delete
django_dbs plan list|show|add|edit|remove|run
django_dbs activity list|show
django_dbs env list|pull|compare|reveal|push
django_dbs files list|download|upload|mkdir|delete
django_dbs redeploy start --from SERVER --to SERVER [--real]
django_dbs redeploy revert MOVE_ID [--real]
dbs backup --stream is how the manager takes a backup: the file goes to standard
output and a copy stays in DBS_BACKUP_DIR, so a backup whose connection breaks is
collected the next time the manager connects. The last line it prints on standard error is a
JSON summary of the name, size and SHA-256.
python manage.py django-dbs is the same command under its old name.
The original dbs_backup, dbs_restore, dbs_validate and
dbs_schedule commands still work unchanged.