So far we have PHP, MySQL and Apache 2 installed on the Raspberry Pi Web Server, now we can install phpMyAdmin which is a web application to administer MySQL.
The easiest way to install phpMyAdmin is through apt-get:
During the installation, phpMyAdmin will walk you through a basic configuration. Once the process starts up, follow these steps:
Add the following line to the file:
This can be placed at the end of the file.
Restart Apache using:
You can then access phpMyAdmin by going to http://youripaddress/phpmyadmin or http://hostname/phpmyadmin
Go to http://youripaddress/phpmyadmin or http://hostname/phpmyadmin and try logging in with the username of: root and the password which you entered in the previous step.
To add an extra level of security it is recommended to use the htaccess / htpasswd system to stop anyone accessing the web pages.
To set this up, start off by allowing the .htaccess file to work within the phpMyAdmin directory.
Under the directory section, add the line “AllowOverride All” under “Directory Index”, so the section will look like this:
Save and exit the file.
With the .htaccess file allowed, we can proceed to set up a login to access the phpmyadmin web page.
Start by creating the .htaccess page in the phpMyAdmin directory:
Then enter the following:
Save and exit the file.
Below you’ll see a quick explanation of each line:
AuthType: This refers to the type of authentication that will be used to the check the passwords. The passwords are checked via HTTP and the keyword Basic should not be changed.
AuthName: This is text that will be displayed at the password prompt. You can put anything here.
AuthUserFile: This line designates the server path to the password file (which we will create in the next step.)
Require valid-user: This line tells the .htaccess file that only users defined in the password file can access the phpMyAdmin login screen.
Now we will go ahead and create the valid user / password information.
Start by creating a htpasswd file. Use the htpasswd command, and place the file in a directory of your choice as long as it is not accessible from a browser. Although you can name the password file whatever you prefer, the convention is to name it .htpasswd.
Where username is the username of your choice.
A prompt will ask you to provide and confirm your password.
Once the username and passwords pair are saved you can see that the password is encrypted in the file.
Now restart Apache:
Now when you go to the web page http://servername/phpmyadmin a login box will be displayed.
Fill it in with the username and password that you generated. After you login you can access phpmyadmin with the MySQL username and password as before.
The installation of MySQL onto the Raspberry Pi should be straight forward. However, there is an issue that can catch you out to do with the file system size. If there is not enough space on the SD card, the installation will fail, so you should check that first.
Run the following command:
The SD card is probably 4GB. The filesystem will be around 1.9GB. This was done to make it fit on 2GB cards. To stretch the filesystem to the full size you need to run:
and choose the:
option. Then you need to reboot.
Now:
should tell you that the filesystem has much more free space.
Run the installation script below to install MySQL.
If this fails and gives a message saying that it is unable to find MySQL, try installing MariaDB using the following:
To further secure your MySQL installation you should use sudo mysql_secure_installation utility in your terminal.
Note that you should use sudo to run this command as it requires root privileges.
This utility does the following:
All you need to do is go into your terminal and type sudo mysql_secure_installation and follow the prompts.