Deployment modes
CoordinatorDB can run as a server or be opened directly by an application. Choose according to where connection state and access to the database should live.
Server
The server manages named persistent databases and authenticates clients. It exposes native TCP and, when enabled, HTTP. Both interfaces use the same database inventory, request limits and users.
The supplied native client supports an interactive session, piped SQL, local input files and --query for exact result bytes. Its connection retains the selected database, transaction and temporary tables.
An HTTP SQL request owns a separate logical session. Select its database with the URL parameter or with USE inside the same request. The HTTP listener also provides the browser Playground.
Embedded connection
An application opens coordinator::Connection with a file path or open_in_memory(). It executes SQL and receives typed result values directly.
The embedded API does not expose server commands such as USE, SHOW and SET, or server format encoders. It supports prepared statements and connection namespaces through ATTACH and DETACH.
Sharing a file
Multiple connections in one process can share a database file. Simultaneous access to the same file from separate processes is outside the supported concurrency model. For clients in several applications, connect them to one server process.