← All messages

A database manager inside the dashboard

The Phlo Dashboard gained dbadmin: browse tables, inspect structure, edit rows, run SQL, import and export. MySQL with a per-session login, and SQLite straight from data/.

The reason it is there rather than being a separate tool is the reason most of the dashboard exists. Managing a fleet means the answer to "why is this node behaving oddly" is often one query away, and the alternatives are all worse. A phpMyAdmin on each machine is another public surface to secure and update. An SSH tunnel plus a local client is fine for you and useless for anyone else. A hosted tool means the data leaves the building.

So it sits behind the authentication the dashboard already has, admin-only, and the MySQL credentials are per session rather than stored: the tool does not hold a key to your database when nobody is using it.

The SQLite half turned out to be the one used most, because it needs no credentials at all. A Phlo app with .db files in data/ is inspectable immediately, which matters for apps small enough that a database server was never worth setting up.

One migration detail from the same period, since it will bite anyone else on a recent PHP: several PDO constants changed status in 8.5, and the module was reading them the old way. Worth checking if you have a database tool of your own.

Phlo Dashboard 1.0. See the Dashboard handbook.

We use essential cookies to make this site work. With your permission we also use analytics to improve the site.