Update/Upgrade to MariaDB 10.4 on VestaCP/CWP/CentOS 7

by Sandeep B.

In this tutorial I’ll guide you on how to upgrade/install MariaDB to latest Mariadb10.4 on Centos 7 this tutorial will also work with CWP and VestaCP or any other compatible control panel.

we’ve reports that MariaDB 10.4 is not working for some with CWP instead upgrading to 10.4 you can safely upgrade to 10.2 (tested). Follow this tutorial from step 2

MariaDB 10.4 is now very stable and many features has been added and improved in this version you can check all lists of changes here

I’ve checked MariaDB 10.4 with WordPress, Joomla, xenforo, IPS forum and some more PHP scripts which depends on MySQL DB are working fine with this version hence it is safe to upgrade to this version.

Short description about MariaDB :

MariaDB is designed as a drop-in replacement of MySQL with more features, new storage engines, fewer bugs, and better performance. MariaDB is developed by many of the original developers of MySQL who now work for the MariaDB Foundation and the MariaDB Corporation, and by many people in the community.

To upgrade follow this simple steps to upgrade it to latest version :

Step 1 Remove MariaDB 5.5/10.0/10.1/10.2/10.3

Before installing it is recommended to backup your databases, although it is not necessary if you followed this steps carefully.

First backup your current my.cnf config :

cp /etc/my.cnf /etc/my.cnf.bak

Now we need to remove current version of mariadb 5.5 installed on centos 7 :

For MariaDB 5.5 :

service mariadb stop  /  service mysql stop
rpm -e --nodeps galera
yum remove mariadb mariadb-server

At this point MariaDB 5.5 will be removed completely but the databases are not removed don’t need to worry.

For MariaDB 10.0/10.1/10.2/10.3 :

service mysql stop 
rpm -e --nodeps galera
yum remove MariaDB-server MariaDB-client

At this point MariaDB 10.0/10.1/10.2/10.3 will be removed completely but the databases are not removed don’t need to worry.

Then Install MariaDB 10.4 :

Step 2 Installation/Updating from MariaDB 5.5/10.0/10.1/10.2/10.3 to MariaDB 10.4

Install/enable Official repo for mariadb 10.4:

yum install nano epel-release -y

Now edit/create the Repo file :

Ensure you don’t have any other MariaDB repo file in /etc/yum.repos.d if exists delete or backup the existing repo file :

mv /etc/yum.repos.d/mariadb.repo /etc/yum.repos.d/mariadb.repo.bak
nano /etc/yum.repos.d/mariadb.repo

then paste this lines and save it :

name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64

After that we’ll install Mariadb 10.4

yum clean all
yum install MariaDB-server MariaDB-client net-snmp perl-DBD-MySQL -y
yum update -y

Restore the my.cnf file :

rm -rf /etc/my.cnf
cp /etc/my.cnf.bak /etc/my.cnf

Then enable mariadb to start on boot and start the service :

systemctl enable mariadb
service mysql start

Step 3

After Installation we need to upgrade current databases by this command :


that’s it you’ve successfully upgraded MariaDB 5.5/10.0/10.1/10.2/10.3 to MariaDB 10.4.

You can confirm the version by running this command from terminal ssh:


Troubleshoot if root login doesn’t work for mysql :

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Go to :

If this post helps you in any way please consider a donation

Donate with PayPal :


Donate with Paytm :


You may also like


ryu September 3, 2019 - 2:04 am

rpm -e –nodeps galera
not found not install galera.
how can i install it?
yum install galera ?

Sandy September 4, 2019 - 10:46 pm

rpm -e is for uninstalling the rpm. Galera will auto install from mariadb repository

jay October 31, 2019 - 5:24 pm

Working 100%. thanks for article

moh November 7, 2019 - 9:22 am

thank you for this topic

Josh December 16, 2019 - 1:49 pm

Just be aware that vesta backups cannot be restored to Mariadb 10.4 due to the new authentication schemes. The data will be restored, but the user authentication will not work. I’m still to find the answer…

Sandy December 17, 2019 - 5:46 am

mysql_upgrade ?

Josh December 17, 2019 - 7:26 am

Hi Sandy, no looks like a bug in vesta. I’ve found a workaround and posted it at https://github.com/serghey-rodin/vesta/issues/1962 just waiting for them to roll it in. Good news is that anyone can use it if they patch that file.

Sandy December 17, 2019 - 8:08 am

awesome thanks for the info

Will April 23, 2020 - 5:13 am

Can you please confirm, if it is only old prior to 10.4 backups that can’t be restored or any that vesta does after install of 10.4?

Sandeep B. May 7, 2020 - 3:20 pm

use this version if you need new password hashing and new features else stick with mariadb 10.3 or 10.2

cmgui May 20, 2020 - 4:41 am

Step 3 – If you had previously set a password for root for your previous version Mariadb, mysql_upgrade will yield this error:
[root@server1 log]# mysql_upgrade
Version check failed. Got the following error when calling the ‘mysql’ command line client
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
FATAL ERROR: Upgrade failed

The solution:
[root@server1 log]# mysql_upgrade -u root -p

After that, I ran mysql_secure_installation

Also did this so you can run mysql as root without having to enter password:
[root@server1 ~]# vi ~/.my.cnf
user = root
password = Password1
user = root
password = Password1
user = root
password = Password1

The step “mysqld –skip-grant-tables –user=mysql &” in https://www.mysterydata.com/how-to-reset-root-password-in-mariadb-10-4-and-mysql-8-0/ does not seem to work. The background process seems to run forever. After running “mysqld –skip-grant-tables –user=mysql &” , cannot start mariadb because there is an existing mysqld running in the background. Had to kill the background process first.

Sandeep B. May 20, 2020 - 6:46 am

Thanks for the steps but not for all this will work, skip grant table option is by far working i already mentioned to kill the process in the post.


Leave a Comment