Server Management#
mudud is the MuduDB server process. It hosts the database kernel, runs installed MPK packages, and exposes three listeners: a TCP protocol endpoint, an HTTP management endpoint, and a PostgreSQL-compatible wire protocol port.
Prerequisites#
mududandmcliare installed and inPATH.A configuration file exists at
./mudud.cfg,~/.mududb/mudud.cfg, or a path passed with--cfg.On Linux,
io_uringmode requiresliburing-devat runtime.The process should be started with a high file-descriptor limit (
ulimit -n 65535is a practical baseline).
Starting the server#
Default start#
ulimit -n 65535
mudud
If ./mudud.cfg does not exist, mudud checks ~/.mududb/mudud.cfg. Create a default config with:
mudud init-cfg
Start with a custom config#
ulimit -n 65535
mudud serve --cfg ./config/mudud.cfg
What to expect#
After starting, mudud logs the effective configuration and opens three listeners:
TCP protocol:
listen_ip:tcp_listen_port(default127.0.0.1:9527)HTTP management:
listen_ip:http_listen_port(default127.0.0.1:8300)PostgreSQL wire protocol:
listen_ip:pg_listen_port(default127.0.0.1:5432)
Stopping the server#
Send SIGINT (Ctrl+C) or SIGTERM. mudud performs a graceful shutdown, waiting for in-flight work to finish before exiting.
Verifying the server#
Use mcli to check the HTTP management endpoint:
mcli --http-addr 127.0.0.1:8300 app-list
mcli --http-addr 127.0.0.1:8300 server-topology
If the commands return JSON output, the server is running and reachable.
Server modes#
Mode |
When to use |
|---|---|
|
Maximum compatibility; single TCP/PG serving model. |
|
High-performance async I/O on Linux (recommended on Linux). |
|
Portable async runtime when |
Common issues#
Address already in use: another process is using one of the configured ports. Change the conflicting port in
mudud.cfg.Permission denied: you may not have permission to bind to the configured
listen_ipor port. Use127.0.0.1and ports above1024for local development.Too many open files: raise the file descriptor limit with
ulimit -n 65535before starting.io_uring not available: if you are not on Linux or
liburing-devis missing, switchserver_modetoTokio.
See the Configuration Reference for all available options.