(Last Updated On: November 10, 2018)

In this guide, we will look at how to Install and Configure phpMyAdmin on Fedora 29 / Fedora 28. PHPMyAdmin is an open source software tool written in PHP, intended to handle the administration of MySQL over the Web interface.

phpMyAdmin has support for a wide range of operations on MySQL, MariaDB, and Drizzle. It is often used to perform common Database operations (managing databases, tables, columns, relations, indexes, users, permissions, etc) through an intuitive and easy to use web interface.

Follow the steps below to Install phpMyAdmin on Fedora 29 / Fedora 28

Step 1: Install Apache HTTP Server and PHP

Apache HTTP server and PHP are required dependencies for phpMyAdmin. Install them first

sudo dnf -y install httpd php php-cli php-php-gettext php-mbstring php-mcrypt php-mysqlnd php-pear php-curl php-gd php-xml php-bcmath php-zip

Configure httpd basic settings:

Edit the configuration file /etc/httpd/conf/httpd.conf and set:

ServerAdmin [email protected]
ServerName  example.com
ServerTokens Prod

You can optionally set Keepalive

KeepAlive On

Enable and start httpd service

sudo systemctl start httpd
sudo systemctl enable httpd

If you have firewalld running, allow both http and https services.

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

Confirm your installed PHP version:

$ php -v
PHP 7.2.11 (cli) (built: Oct 9 2018 15:09:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Loaded extensions can be viewed by passing -m option to the phpcommand

$ php -m

Set PHP timezone on the file /etc/php.ini

date.timezone = Africa/Nairobi

See a complete List of Supported Timezones.

Step 2: Install and configure phpMyAdmin on Fedora 29 / Fedora 28

After PHP and Apache have been installed, you can install phpMyAdmin

sudo dnf -y install phpMyAdmin

The version installed on my Fedora machine is 4.8.3

# rpm -qi phpMyAdmin
Name        : phpMyAdmin
Version     : 4.8.3
Release     : 1.fc29
Architecture: noarch
Install Date: Sun 04 Nov 2018 12:51:53 PM UTC
Group       : Unspecified
Size        : 26120018
License     : GPLv2+ and MIT and BSD
Signature   : RSA/SHA256, Thu 23 Aug 2018 07:53:28 AM UTC, Key ID a20aa56b429476b4
Source RPM  : phpMyAdmin-4.8.3-1.fc29.src.rpm
Build Date  : Thu 23 Aug 2018 07:53:03 AM UTC
Build Host  : unused
Relocations : (not relocatable)
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : https://www.phpmyadmin.net/
Bug URL     : https://bugz.fedoraproject.org/phpMyAdmin
Summary     : Handle the administration of MySQL over the World Wide Web
Description :
phpMyAdmin is a tool written in PHP intended to handle the administration of
MySQL over the World Wide Web. Most frequently used operations are supported
by the user interface (managing databases, tables, fields, relations, indexes,
users, permissions), while you still have the ability to directly execute any
SQL statement.

Limit access to phpMyAdmin to your only trusted networks

sudo vim /etc/httpd/conf.d/phpMyAdmin.conf

Edit the Require ip lines – both on Line 17 and 34 of the file.

Require ip 127.0.0.1 192.168.18.0/24

Save the changes and restart httpd service

sudo systemctl restart httpd

Step 3: Access phpMyAdmin interface

Access  [http://(your hostname or IP address)/phpmyadmin/] from your favorite web browser and network whitelisted.

Login with your Database user to start administering database operations from phpMyAdmin web interface.

Step 4: Change Authentication Plugin for MySQL 8.0

To be able to authenticate to MySQL 8.0, login to MySQL CLI and change  Authentication Plugin.

$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 26
Server version: 8.0.13 MySQL Community Server - GPL

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'ph/axo>vJe;789';
Query OK, 0 rows affected (0.11 sec)

mysql> QUIT
Bye

Enjoy administering your MySQL or MariaDB database server with phpMyAdmin.

Don’t forget to check other Fedora articles available on our website.

How to Install Apache Tomcat 9 on CentOS 7 / Fedora 29 / Fedora 28

How to install Docker on Fedora 29 / Fedora 28

How to install LAMP Stack on Fedora 29 / Fedora 28

How to Install Django on Fedora 29 / Fedora 28

How to install PostgreSQL 11 on Fedora 29 / Fedora 28

How to install MySQL 8.0 on Fedora 29 / Fedora 28