Skip to Content
phpMyAdmin

phpMyAdmin

Manage QuickBox databases through a browser: browse schemas, run queries, and adjust users without leaving the web UI.

Overview

phpMyAdmin in QuickBox is the packaged web database console installed and managed through qb, with nginx and PHP-FPM wired automatically. It is purpose-built for administering your existing QuickBox-managed databases through a browser.

It is not a database server or a replacement for backups; it sits on top of the database you already run.

Key features

The highlights below show what is provisioned for you when you install phpMyAdmin with qb.

One-command setup

Provision the latest stable phpMyAdmin, generate config, and restart PHP-FPM/nginx with qb install phpmyadmin.

Cookie auth + secret

Installer seeds a fresh blowfish secret and uses your QuickBox DB credentials for cookie-based authentication.

Reverse proxy ready

Nginx location for /phpmyadmin is created automatically with PHP-FPM passthrough and try_files safety.

Dashboard hooks

Shows under Database Management, with package controls and user process entries aligned to phpMyAdmin.

Safe updates

Update/reinstall keeps your stored DB host/user/pass and blowfish secret while refreshing the app files.

PHP extensions handled

Installs the PHP modules phpMyAdmin needs (mbstring, zip, gd, curl, xml, mysql, intl, bcmath) for its own PHP version and applies the PHP security fixes on install and update.

When to use it

Use phpMyAdmin when you need a browser UI on the QuickBox database and want qb to maintain the nginx route, PHP modules, and configuration.

Symptoms

  • You need a browser UI to inspect QuickBox databases or run SQL without SSH.
  • Existing phpMyAdmin install is outdated or misconfigured after upgrades.
  • Users see login issues because DB credentials changed or the blowfish secret is missing.

Resolution

  • Install with qb install phpmyadmin to fetch the latest build and auto-generate a valid config.
  • Pass --pma-user / --pma-pass / --pma-host / --pma-port to align with custom database settings.
  • Update with qb update phpmyadmin to refresh files while preserving stored credentials and secrets.

Installation

phpMyAdmin is an admin-installed, server-wide utility. Installing it provisions the latest stable build, enables the required PHP modules, writes the config with cookie auth and a fresh blowfish secret, and serves it at /phpmyadmin behind nginx.

Install from the Dashboard

Open App Dashboard → Package Management (/dashboard?mode=packages), find phpMyAdmin in the catalog (it lists under Database Management), and click Install. The install uses your QuickBox database credentials by default. Reinstall and Remove are in the same Package Management panel. To update, use the amber Update badge on the phpMyAdmin row in the App Dashboard. All three preserve your stored DB host/user/pass and blowfish secret. phpMyAdmin is admin-only — see App Management for the full flow.

Install from the CLI (automation)

The CLI runs the same installer and is suited to scripting:

bash
qb install phpmyadmin
qb update phpmyadmin
qb reinstall phpmyadmin
qb remove phpmyadmin
Custom database credentials
Info

If your database host, port, or credentials differ from the QuickBox defaults, the CLI accepts override flags that the standard install does not prompt for: --pma-user, --pma-pass, --pma-host, --pma-port. Use these when QuickBox is not managing your DB credentials:

bash
qb install phpmyadmin --pma-user=dbuser --pma-pass='strong-pass' --pma-host=127.0.0.1 --pma-port=3306

Commands and install options

OptionDescriptionExample
qb install phpmyadmin

Fetch the latest stable phpMyAdmin, auto-generate config, and restart PHP-FPM/nginx.

qb update phpmyadmin

Refresh files to the latest build while preserving stored credentials and the blowfish secret.

qb reinstall phpmyadmin

Re-run the installer and regenerate config.

qb remove phpmyadmin

Remove phpMyAdmin and clean up its nginx location block.

--pma-user=<user>

Database user written into config.inc.php (overrides the QuickBox default).

qb install phpmyadmin --pma-user=dbuser
qb install phpmyadmin --pma-user=dbuser
--pma-pass=<password>

Database password for the supplied user.

qb install phpmyadmin --pma-pass='strong-pass'
qb install phpmyadmin --pma-pass='strong-pass'
--pma-host=<host>

Database host (overrides the QuickBox default).

qb install phpmyadmin --pma-host=127.0.0.1
qb install phpmyadmin --pma-host=127.0.0.1
--pma-port=<port>

Database port (overrides the QuickBox default).

qb install phpmyadmin --pma-port=3306
qb install phpmyadmin --pma-port=3306

Full flag reference: CLI Reference.

Access and authentication

URL / route

phpMyAdmin is served at /phpmyadmin through the generated nginx location block. Access it at http(s)://your-host/phpmyadmin after installation.

Login / credentials

Login uses the database credentials stored during installation. By default, qb writes your QuickBox DB host, user, and password into config.inc.php and configures cookie-based auth with a generated blowfish secret.

Security notes

  • Protect the route with HTTPS (pair with qb install lecert if you need Let’s Encrypt).
  • Restrict exposure to trusted networks; phpMyAdmin contains database access.
  • If you rotate DB credentials, reinstall or update with the new --pma-user / --pma-pass flags so the stored values stay current.

Configuration and files

Key paths below show where phpMyAdmin and its nginx location live. Use these when auditing configuration or cleaning up.

Key locations
Path
Description
phpMyAdmin deployment
/usr/share/phpmyadmin/
Application files and generated configuration
config.inc.php
Generated with cookie auth, DB host/user/pass, blowfish secret
tmp/
Temp directory created during install
/etc/nginx/software/
Package location blocks
phpmyadmin.conf
Serves /phpmyadmin via PHP-FPM with try_files guard
/etc/php/{version}/fpm/pool.d/
Dedicated PHP-FPM pool, on the PHP version phpMyAdmin runs on
phpmyadmin.conf
Pool config; socket /run/php/php{version}-fpm-phpmyadmin.sock

phpMyAdmin runs in its own PHP-FPM pool. A new install uses the newest PHP version your package source offers within the 8.1 to 8.4 range phpMyAdmin supports. An existing install on an older PHP is moved up to the newest one automatically when you update QuickBox or run qb fix php, provided the installed phpMyAdmin supports it; the new pool is checked before the old one is removed, and phpMyAdmin stays where it was if anything fails. Install and update bring its PHP version up to its security floor, and qb fix php --security --check shows where it stands (see Fix PHP).

Common tasks

Reinstall and remove run from the dashboard Package Management panel, and updates from the amber Update badge on the phpMyAdmin row in the App Dashboard (or use the CLI). Update, reinstall, and remove all preserve stored credentials and the blowfish secret.

  • Browse databases at /phpmyadmin after install.
  • Custom DB credentials — if QuickBox is not managing your DB credentials, reinstall from the CLI with the --pma-* flags to refresh config.inc.php (see the Installation note above).
  • After rotating DB credentials, reinstall (CLI with new --pma-* flags, or the dashboard Reinstall for QuickBox-managed defaults) so the stored values stay current.
  • Secure the route by pairing with Let’s Encrypt for HTTPS.

Best practices

Keep the deployment aligned with QuickBox defaults and avoid manual edits that the installer manages.

Do

  • Use qb install phpmyadmin instead of manual tarball installs so nginx, PHP modules, and config stay in sync.
  • Create a dedicated DB user with least privileges for phpMyAdmin access; rotate the password if you change database settings.
  • Protect the /phpmyadmin path with HTTPS (pair with qb install lecert for Let's Encrypt) and strong admin passwords.
  • Update regularly with qb update phpmyadmin to receive security fixes while keeping your stored credentials.

Don't

  • Do not edit generated config.inc.php by hand unless you know the phpMyAdmin directives being changed.
  • Avoid exposing /phpmyadmin publicly without HTTPS or firewall rules; it contains database credentials.
  • Do not reuse stale DB credentials after changing the QuickBox database host/user/pass—reinstall or update with new flags instead.

Troubleshooting

Common issues trace back to credentials, nginx routing, or missing PHP modules. Start with the checks below.

Login fails or loops
Warning

Symptom: Credentials are rejected or sessions loop.


Checks: Confirm the DB user/pass you supplied to qb are current; reinstall with updated --pma-user / --pma-pass; ensure the generated blowfish secret was not removed from config.inc.php.

404 or 502 on /phpmyadmin
Warning

Symptom: Route not found or upstream errors.


Checks: Verify /etc/nginx/software/phpmyadmin.conf exists; rerun qb install phpmyadmin or qb update phpmyadmin to recreate; reload nginx if you edited other site configs.

Missing PHP extensions
Warning

Symptom: phpMyAdmin reports missing modules.


Checks: Run qb fix php, which installs any PHP package phpMyAdmin needs and is missing and restarts its PHP-FPM service; if modules are still missing, reinstall via qb so the required PHP modules (mbstring, zip, gd, curl, xml, mysql, intl, bcmath) are enabled.

Resources

Further reading and related utilities.

Join the Community

Media server operators sharing configs, getting support, and shaping the future of QuickBox Pro.

  • Dedicated Support
  • Feature Previews
  • Community Configs
  • Active Discussions
Join Discord Server
Last updated on