User management
Right-click a connection and choose User Management.
MySQL only
This tool works with MySQL (and MariaDB, which shares the same privilege system). On PostgreSQL, SQLite and SQL Server it reports Available for MySQL only — manage roles there with SQL in the editor or with the server's own tooling.
What it shows
Every account on the server, as a user@host pair with its authentication plugin. In MySQL an account is the combination of both, so app@localhost and app@% are two different accounts with potentially different privileges.
Creating a user
New User asks for:
- Username
- Host —
localhostfor connections from the server itself,%for any host, or a specific address or subnet - Password
Then Create User.
Grant the narrowest host you can. % means the account can connect from anywhere the network allows, which is rarely what you want for an application account.
Privileges
Grant Privileges and Revoke Privileges work per database. Pick the account, pick the database, adjust.
A workable default for an application account is the four data statements — SELECT, INSERT, UPDATE, DELETE — on its own database only. Schema-changing rights (CREATE, ALTER, DROP) belong to migrations, not to the account your application runs under.
Dropping a user
Drop User removes the account after a confirmation naming user@host. Dropping an account does not touch the data it created.
Not covered by backups
Users and grants live at server level, so a database dump from Backup and restore does not contain them. Rebuilding a server from a dump means recreating the accounts separately — worth writing down while you still have a working server to read them from.
