Troubleshooting
Symptoms tDB produces, what causes them, and what to do. Ordered most likely first.
| Symptom | Cause |
|---|---|
| No such export | tDB has not loaded yet |
| Only superusers can perform this action | Credentials no longer match the database |
| The PocketBase setup screen opened | You reached a different instance |
| Batch requests are not allowed | PocketBase's batch API is off |
| An error naming a SQL construct | No faithful SQLite translation |
| Admin UI unreachable from outside | tLib's port is closed or not forwarded |
| Waiting for tLib's HTTP listener | Not an error |
| Update tLib | tLib never reported HTTP readiness |
| A table does not exist | Its schema was never imported |
| Remote mode never reports ready | The health probe failed |
No such export when calling exports.tDB
The calling resource started before tDB, not the database being slow — a call made before the database is up parks until it answers.
- Check
ensure tDBsits above the calling resource inserver.cfg. This is almost always it. - Confirm tDB started — a config error stops the resource and the startup box says so.
- If the resource must start first, wrap the call in
exports.tDB:onReady(function() end).
Only superusers can perform this action, repeating
The superuser credentials tDB is using no longer match the database.
- Unset
tdb_superuser_emailandtdb_superuser_passwordinserver.cfg, and delete theConfig.Superuserblock fromconfig.local.lua. - Restart. tDB reprovisions the superuser, writes the new credentials to
config.local.luaand prints the password once.
Fixed when the startup box reports the client authenticated.
The PocketBase setup screen opened in my browser
The instance you reached is not the one tDB started. Find the second PocketBase bound to that port and stop it.
Batch requests are not allowed
PocketBase's batch API is off by default. Enable it in Admin → Settings → Batch API.
runTransaction needs no such setting and is usually the better choice.
An error naming a SQL construct
That statement has no SQLite translation. Check the name against refused constructs, then rewrite it or move it to raw SQL and write SQLite directly.
The admin UI is not reachable from outside
Most often tLib's port is closed on the host or not forwarded in NAT.
- Open tLib's port —
tlib_http_port, default 7777 — in the host firewall and forward it in NAT, following opening tLib's port. Test from outside the network; a probe from the server itself can pass on a port the internet cannot reach. - Confirm
Config.ExposeAdmin = true. - Confirm tLib is running and reports its HTTP listener up.
- Confirm the port you forwarded is tLib's, not PocketBase's internal 8090.
The startup box says Waiting for tLib's HTTP listener
Not an error: tLib's router is not up yet. The admin URL appears as soon as tLib reports ready. If it never clears, tLib is failing to bind — check tLib's log and whether its port is taken.
The startup box tells me to update tLib
tLib did not report HTTP readiness, so no admin URL is published. Install tLib 1.0 or newer, start it before tDB, and read tLib's startup output for the listener error. The database is unaffected — only the admin UI is.
A script says a table does not exist
Its schema was never imported; tDB starts empty. Put the dump in tDB/sql/ and restart —
see Importing .sql files. Then check tdb sql status: a FAILED
row names the statement that stopped it, and a PARTIAL row means the schema is there but
some triggers were skipped.
Remote mode never reports ready
tDB dials <RemoteHost>:<RemotePort>/api/health and expects a 200 before registering
anything.
- Confirm both
RemoteHostandRemotePortare set. One alone does nothing. - Open that health URL from the game server itself, not from your desktop.
- Check the remote PocketBase is reachable on that port, not only behind a proxy on another.
Getting help
Open an issue on the
repository with the exact error
text as text rather than a screenshot, the full startup box, your config.lua (it holds no
credentials, so it is safe to paste), and the statement involved if it is a SQL error.
tDB
Still stuck? Support can answer it directly.
Was this page helpful?
TIMMYG Studios