How to Install MySQL with phpMyAdmin on Ubuntu 12.04

Updated by Linode

Contribute on GitHub

View Project | View File | Edit File

phpMyAdmin is a web application that provides a GUI to aid in MySQL database administration. It supports multiple MySQL servers and is a robust and easy alternative to using the MySQL command line client.

This guide is written for a non-root user. Commands that require elevated privileges are prefixed with sudo. If you’re not familiar with the sudo command, you can check our Users and Groups guide.

Before You Begin

  1. Ensure that you have followed the Getting Started and Securing Your Server guides and the Linode’s hostname is set.

    To check your hostname run:

    hostname -f

    The first command should show your short hostname, and the second should show your fully qualified domain name (FQDN).

  2. Update your system:

    sudo apt-get update && sudo apt-get upgrade -y
  3. Set up a working LAMP stack. Please see the LAMP on Ubuntu 12.04 guide if needed.

    If you have installed the php-suhosin package, there are some known issues when using phpMyAdmin. Please visit the Suhosin phpMyAdmin Compatibility Issues page for more information about tuning and workarounds.

  4. Set up Apache with SSL, so your passwords will not be sent over plain text. To do so, go trough the SSL Certificates with Apache on Debian & Ubuntu guide.

  5. Install the mcrypt PHP module:

    sudo apt-get install mcrypt
  6. Restart Apache:

    sudo service apache2 restart

Setting Up phpMyAdmin

  1. Install the current version of phpMyAdmin:

    sudo apt-get install phpmyadmin

    You will be asked which server to automatically configure phpMyAdmin for. Select the web server that you have installed. If you have more than one web server installed, select the best option for your deployment. Follow through the rest of the guided installer to set passwords.

  2. For each virtual host that you would like to give access to your PHPMyAdmin installation, create a symbolic link from the document root to the phpMyAdmin installation location (/usr/share/phpmyadmin):

    cd /var/www/
    sudo ln -s /usr/share/phpmyadmin

    This will create a symbolic link named phpmyadmin in your document root.

Securing phpMyAdmin

.htaccess File

Secure your phpMyAdmin directory using an .htaccess file that only allows specified IP addresses to access it. You can do this by creating an .htaccess file in your phpmyadmin directory. Substitute the proper paths and IP addresses for your particular configuration:

order allow,deny
allow from

Force SSL

You can force phpMyAdmin to use SSL in the phpMyAdmin configuration file /etc/phpmyadmin/ by adding the following lines under the Server(s) configuration section:

$cfg['ForceSSL'] = 'true';

Testing Your phpMyAdmin Installation

To test phpMyAdmin, open your favorite browser and navigate to You will be prompted for a username and password. Use the username “root” and the password you specified when you installed MySQL. Alternatively, you can log in using any MySQL user and retain their permissions.

If you can successfully log in, phpMyAdmin has been installed properly.

More Information

You may wish to consult the following resources for additional information on this topic. While these are provided in the hope that they will be useful, please note that we cannot vouch for the accuracy or timeliness of externally hosted materials.

This guide is published under a CC BY-ND 4.0 license.