What you can paste
- A SQL query.
- EXPLAIN output: the MySQL grid or EXPLAIN FORMAT=JSON, or a PostgreSQL text plan or EXPLAIN (FORMAT JSON).
- A slow-query log entry, or a whole MySQL-format log on a paid plan.
- Table definitions and index lists, when dbtempo asks for them.
How it decides
dbtempo analyses the plan and explains the cause with evidence.
What you get back
- A diagnosis in plain language.
- The fix: index SQL, a query rewrite, or manual steps, depending on the finding.
- Confidence and the evidence behind it, so you can check it against your own plan.
- When more context would change the answer, a request for the schema or plan. You can connect a database, run the read-only SQL it shows yourself, or continue with the query text alone.
What it never does
In paste mode dbtempo does not connect to your database and does not run your query. It never runs EXPLAIN ANALYZE against your database, because that executes the statement. If you run EXPLAIN ANALYZE yourself on a safe copy, you can paste the output. Nothing is applied for you: copy the proposal into your own migration process, or connect a project to review changes in a queue.
When one query is not enough
A project watches the database, ranks queries by the time they cost in total, and proposes one index set per table instead of one index per query. See the MySQL and PostgreSQL pages below.
