<# .SYNOPSIS Uruchamia SurrealDB jako serwer na dedykowanym porcie (tylko dla bazy), z trwałym magazynem RocksDB w katalogu ./data (nie w pamięci). .DESCRIPTION Port (domyślnie 8010) służy wyłącznie SurrealDB i jest używany zarówno przez backend (HubMi.Api), jak i przez frontend do synchronizacji (WebSocket /rpc). Dane trwale zapisywane są w backend/data (RocksDB). #> param( [int]$Port = 8010, [string]$Bind = "127.0.0.1", [string]$Username = "root", [string]$Password = "root", [string]$DataPath = (Join-Path $PSScriptRoot "..\backend\data") ) $ErrorActionPreference = "Stop" $surreal = (Get-Command surreal -ErrorAction SilentlyContinue)?.Source if (-not $surreal) { throw "Nie znaleziono 'surreal' w PATH. Zainstaluj SurrealDB: https://surrealdb.com/install" } $resolvedData = [System.IO.Path]::GetFullPath($DataPath) New-Item -ItemType Directory -Force -Path $resolvedData | Out-Null Write-Host "SurrealDB: bind $Bind`:$Port, rocksdb:$resolvedData" & $surreal start ` --user $Username ` --pass $Password ` --bind "${Bind}:${Port}" ` --log info ` "rocksdb:$resolvedData"