Skip to content

Use a website's database and phpMyAdmin

Each hosting can have one database, MariaDB or PostgreSQL, created together with the site. Its credentials are shown once at creation. Afterwards you can reset the password and, for MariaDB, open phpMyAdmin from the panel.

  • Your account has the Manage databases permission for the site. Administrators have it.
  • The site was created with a database (the Database setting under Advanced options in Create a website). WordPress sites always have one.
  • For phpMyAdmin: the panel runs with TLS, which is the default, and port 8447 is reachable from your browser through the firewall. The firewall template Hyperion panel + RPC opens 8443, 8447 and 9443.
  1. Open the site and stay on the Overview tab.
  2. In the Database card read Host (always localhost), Name, User and the engine tag.

The password is stored in /etc/hyperion/secrets/<id>.json on the node and is never displayed after creation. Applications on the same server connect to localhost.

  1. In the Database card, click Open phpMyAdmin.
  2. A new tab opens on https://<panel-host>:8447/pma/<hosting-id>/, already signed in to this site’s database. The password never reaches your browser.

The button appears for MariaDB databases only. Each request is checked against your panel session and your permission for that site, and is relayed to the node that owns the database. phpMyAdmin runs on its own port so that it has its own browser origin. Through the panel it accepts at most 1 MiB per request: import larger SQL files over SSH or by restoring a backup.

To switch the listener off, set pma_listen = "" in the [web] section of /etc/hyperion/web.toml and restart hyperion-web. The default is 0.0.0.0:8447. The button disappears when it is off, or when the panel runs without TLS.

  1. In the Database card, open Reset the database password….
  2. Enter New password, at least 12 characters, or click Generate to fill one in.
  3. Click Reset password and confirm.
  4. Update the application’s configuration with the new password.

The command line equivalent is sudo hctl db reset-password example.com; add --password-stdin to supply the password on standard input.

The page shows “Database password reset.” Connect with the new credentials:

Terminal window
mysql -u <db-user> -p -h localhost <db-name> -e 'SELECT 1'

Expected: a result row containing 1. For phpMyAdmin, the new tab shows the database’s tables.

  • Database: followed by a message, such as new password must be at least 12 characters. Use a longer password.
  • Sign in to the panel first. Your panel session ended. Sign in and open phpMyAdmin again.
  • No access. Your account cannot manage this hosting’s database. You lack Manage databases for the site.
  • phpMyAdmin is not available: The node that hosts this database did not answer. The node is offline. Check Nodes.
  • phpMyAdmin is not available: The node runs an older Hyperion that has no phpMyAdmin yet — update it from the Nodes page.
  • The browser cannot connect to port 8447: open the port in the firewall.