-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration
Berkay Günaydın edited this page Aug 6, 2026
·
1 revision
propq is config-oriented: all execution behaviour can be set in propq.toml, and CLI flags override the config when explicitly provided.
-
-c PATH— explicit path via flag -
./propq.toml— current working directory -
~/.config/propq/config.toml— Linux/macOS%APPDATA%/propq/config.toml— Windows
Generate a starter file:
propq config generate # writes to platform config dir
propq config generate -o my.toml # writes to a path
propq config generate -o - # prints to stdoutValidate without touching servers:
propq config validate -c my.tomlTest connections too:
propq config check -c my.toml| Key | Default | Description |
|---|---|---|
timeout |
30 |
Query timeout in seconds |
concurrency |
5 |
Global concurrency limit |
no_transaction |
false |
Run in autocommit mode (no transaction wrapping) |
force |
false |
Allow destructive SQL (DROP/TRUNCATE/DELETE/ALTER) without --force
|
dry_run |
false |
Preview target databases without executing |
json |
false |
Output as JSON (default: table) |
quiet |
false |
Suppress spinner and banners |
editor |
vim |
Editor for --edit / --select modes. Falls back to $VISUAL → $EDITOR → vim/nano/hx/micro when empty. Can be "code --wait" etc. |
server |
"" |
Default regex filter for server names |
dbfilter |
"" |
Default regex filter for database names (include) |
exclude_db |
"" |
Default regex to exclude databases |
confirm_without_filter |
true |
When no DB filter is set (neither CLI nor config), prompt for confirmation before targeting ALL databases. Set false to run directly. |
Each server is one table. The key (NAME) is what you filter on with -s and what propq servers displays.
| Key | Required | Default | Description |
|---|---|---|---|
host |
✅ | — | Server hostname or IP |
port |
3306 |
TCP port | |
user |
✅ | — | MySQL user |
password |
"" |
Password (see note below) | |
max_connections |
3 |
Per-server semaphore — max concurrent connections to this server | |
tags |
[] |
String list for -t filtering (comma-separated, OR semantics) |
[defaults]
timeout = 30
concurrency = 5
force = false
dry_run = false
json = false
quiet = false
no_transaction = false
server = ""
dbfilter = ""
exclude_db = ""
confirm_without_filter = true
editor = "vim"
[connections.prod-eu-1]
host = "db1.example.com"
port = 3306
user = "myuser"
password = "mypassword"
max_connections = 3
tags = ["prod", "eu"]
[connections.prod-eu-2]
host = "db2.example.com"
port = 3306
user = "myuser"
password = "mypassword"
max_connections = 2
tags = ["prod", "eu"]
[connections.staging]
host = "staging.example.com"
port = 3306
user = "testuser"
password = "testpass"
# max_connections defaults to 3
# tags defaults to []-
Never commit real credentials. The repo ships
propq.toml.examplewith placeholder values only;propq.tomlis gitignored. - Prefer a dedicated, read-only MySQL user where possible.
- Keep
confirm_without_filter = trueunless you know every query you run is safe on every database. - Destructive SQL stays blocked without
--forceeven ifforce = trueis not set — see Safety.
Next: CLI-Reference
This wiki is community-maintained. Found something outdated? Open an issue on the repository.
propq — Async SQL executor for MySQL/MariaDB
- Home
- Installation
- Getting-Started
- Configuration
- CLI-Reference
- Output-Formats
- Safety
- Examples
- AI-Agents
- Development
External links