How do I update my droplet ? mainly PHP and Mysql. I just run a simple website from it and would like it all update to most current.
Updating both PHP and MySQL is easy enough. I’ll guide you through the process, however I strongly suggest before updating MySQL to backup your droplet.
In this case rather than updating, you’ll just install a higher PHP version on your droplet.
Here are the steps, if you are on an Ubuntu.
Make sure your Ubuntu server is having the latest packages by running the following command.
sudo apt update sudo apt upgrade
Add a repository for PHP 7.3
sudo apt install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt update
If you are using Apache as your Web Service, you’ll need to install PHP like this
sudo apt install php7.3
If you are using Nginx however, you’ll need to perform the following
sudo apt install php7.3-fpm
PHP with it’s extensions is useless so you’ll need to install them regardless which Web Service you are using. The next command will include the most common extensions
sudo apt install php7.3-common php7.3-mysql php7.3-xml php7.3-xmlrpc php7.3-curl php7.3-gd php7.3-imagick php7.3-cli php7.3-dev php7.3-imap php7.3-mbstring php7.3-opcache php7.3-soap php7.3-zip php7.3-intl -y
If you need to add another one, just type in
sudo apt install php7.3-nameofextension
And you are ready, you now have the latest PHP version on your droplet.
Now let’s continue with updating MySQL.
Since you have decided to update it, I’ll strongly suggest going directly to MariaDB. Luckily, the process is indeed easy enough. Let’s start
The first and most important step is to backup your databases. You can do so by using the following command
mysqldump --all-databases --user=root --password --master-data > backupdb.sql
This will dump your database in a file called backupdb.sql in the directory you currently are.
Optionally you can create a backup of my.cnf file somewhere in your system as well
cp /etc/mysql/my.cnf /opt/my.cnf.bak
Like PHP, MySQL needs to be reinstalled to have a higher version.
service mysql stop
Now we can uninstall the MySql server, associated utilities amd MySql user.
apt-get remove mysql-server mysql-client mysql-common deluser mysql rm -rf /var/lib/mysql
MySQL has been removed from your droplet
Now, going to the fun part, adding the updated software, in this case MariaDB 10.3.
First you need to add MariaDB repository on your system in order to Install MariaDB.
apt-get install software-properties-common apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 add-apt-repository 'deb [arch=amd64] http://mirror.zol.co.zw/mariadb/repo/10.3/ubuntu bionic main'
Once this has been covered, just in case run an update on your droplet and then continue with the installation
apt update apt -y install mariadb-server mariadb-client cp /opt/my.cnf /etc/mysql/
Once this has been completed, just start your MariaDB service like so
service mysqld start
If this doesn’t work, try with
service mariadb start
Ready for work
Finally, we have to import the previously exported databases back to MariaDB server as follows.
mysql -u root -p < backupdb.sql
You are ready to go!