phpMyAdmin is a free PHP web application for administering MySQL and MariaDB database servers through a browser. It combines controls for databases, tables and user accounts with an SQL workspace, so routine changes and written queries can be handled in the same interface. A single phpMyAdmin installation can also administer multiple configured servers.
Editing the database structure
The database structure is available for both inspection and editing. phpMyAdmin can create tables, change columns and indexes, copy or rename database objects, and remove objects that are no longer needed. Views are supported alongside tables, letting users work with saved database queries as well as stored records. Database search can cover the whole database or a chosen subset when the location of a value is uncertain.
Column transformations change how particular values are handled in phpMyAdmin. A display transformation can present a stored filename as a clickable link or show image data from a BLOB column. It changes the browser presentation without changing the stored value. Input transformations act before insertion instead, supplying a specialized editor or converting entered data. These features depend on phpMyAdmin’s configuration storage and the transformations available on the installation.
phpMyAdmin’s SQL workspace
The SQL interface accepts individual statements and batches of queries. Users can edit and execute SQL directly and view multiple result sets returned by queries or stored procedures. Query-by-example offers another way to construct queries, connecting the required tables automatically.
With configuration storage enabled, an executed query can be saved as a bookmark from its results page. The bookmark belongs to that database and becomes available beside its query boxes. Variable placeholders allow a saved statement to take new input when it runs, so a recurring query can retain its structure while using a different search value.
Stored procedures, triggers and events
phpMyAdmin also handles logic stored in the database itself. It can create, edit, call, export and remove stored procedures and functions, and create or edit triggers and events.
Table relations
Relation view connects fields between tables, while the Designer provides a graphical way to create, edit and display those connections. The Designer’s table layout can also be used to produce a PDF schema, giving the database structure an output that can be read outside the administration interface.
For InnoDB tables, phpMyAdmin can create native foreign-key relationships that MySQL enforces when other applications access the database. phpMyAdmin-only relations are confined to phpMyAdmin and require its configuration storage. They should not be treated as constraints that another database client will enforce.
Importing and exporting data
Import works at the selected database or table, with SQL, CSV, XML and OpenDocument spreadsheet support. SQL files can restore exported database data. CSV import can load rows into an existing table or, at database or server level, determine a suitable table structure for the incoming data. For ODS workbooks, sheet names become table names and a header row can supply column names; saved cell values are imported without recalculating spreadsheet formulas.
SQL output can be imported to restore a database, while CSV and ODS carry data into spreadsheet workflows. JSON and XML provide data for other programs, and PDF provides a presentation format. SQL export options can include column names in INSERT statements or combine several rows into one statement. Large imports remain subject to the hosting environment’s upload, memory and execution limits.
Managing database users
phpMyAdmin’s account controls manage database users. Administrators can create or remove accounts, edit their privileges, copy privileges to another user, and distinguish global permissions from access to a particular database. The database server authenticates these accounts and decides which operations they may perform.
User groups can simplify the phpMyAdmin navigation by hiding selected interface functions. That controls what appears on screen; database privileges remain the mechanism for restricting what a user can actually do.





