Adminer web-based database administration

We were recently looking for an open source light-weight database web administration tool that would be preferably database cross-platform and would work on either ASP.NET or PHP. Adminer fit the bill. Adminer is written in PHP. It supports, out of the box PostgreSQL, MySQL, SQLite2 and SQLite3, and even SQL Server and Oracle. This covers most of the databases we commonly use. Here we'll go over some other features we liked about it that are rare in other web database administration tools.

Sinlge File Deployment

This feature really puzzled us because we'd never seen it in a php web application before. Adminer can be deployed as a single php file. You can deploy it as a folder of php files if you wish and want to add more plugins, but if you just care about using it, you can go with the default single compiled php file. Just copy and go.

Relational Diagram View

Never seen this before in a web based database application tool. In fact we usually look for tools that have just this. I used open office diagrammer to look at one of my PostGIS topology schemas a while back and was really disappointed it left out some relationships. Topology has a bunch of self-joins which tripped up LibreOffice/OpenOffice. Not sure if it's still the case with latest LibreOffice. Here is a snapshot generated by Adminer from sample topology schema from our upcoming PostGIS in Action Second Edition.

Postgis_topology_schema

Of course this feature is not perfect. For one it is not a mind-reader and doesn't lay things out the way you want it from the out-set so for large databases there is a lot of manual moving things around. It does seem to remember where you moved things though Haven't quite figured out where it stores this information since it doesn't seem to be in the database or the application folder. Perhaps it stores in browser cache. The permalink does seem to include positioning of tables.

It also seems to work schema by schema rather than covering the whole database. This works generally for us since we rarely relate tables across schemas.

Clean layout for schema view

We really liked the schema dashboard screen, very clean and minimalist but covers all the key areas - table, sequences, types and even shows a description for each table if you bothered to put one in.

Schema view

The table / view display even shows descriptions of the table/view and columns if you have them.

adminer table view description

The SQL Command window is similarly nice and minimalist. What I like most is the show of history of queries run, similar to what pgAdmin has.

SQL window

It lacks some features like User Management you'd find in phpPgAdmin or pgAdmin. It does have GUI screens to edit data, export data, import data, add tables, foreign keys, indexes, types, and triggers and of course the SQL windows lets you do anything else you need to. Haven't really explored all those features to see how good they are but on spot check they seem decent. We particularly like the crispness of the edit/filter screen:

Adminer data editor

Server configs with link to help

If you have admin rights and go to server level (select no database), you get to see a lisitng of all the active postgresql.conf variables, and each variable is hyperlinked to the relevant section of the PostgreSQL on-line manual.

It had a process list link too, which unfortunately did not work with my PostgreSQL 9.2 database since it attempted to run the query:

SELECT * FROM pg_stat_activity ORDER BY procpid;

Instead of the equivalent 9.2 version

SELECT * FROM pg_stat_activity ORDER BY pid;

But I'm sure it's probably not the only admin tool that got a little burned by that 9.2 change.