How to Install MariaDB Server on RHEL 8 / CentOS 8

spacer

End of life for CentOS 8 was December 31, 2021. MariaDB now supports RockyLinux 8. For the latest installation instructions of MariaDB database products on various operating systems, please refer to our enterprise docs: mariadb.com/docs/server/deploy/operating-systems.

 

MariaDB Server is available and supported on RHEL 8 and CentOS 8, and is easily deployed from OS vendor repositories or MariaDB repositories using YUM.

What’s new in RHEL 8?

Red Hat Enterprise Linux 7 (RHEL 7) was released back in 2014, and has had seven point releases since. The long-awaited Red Hat Enterprise Linux 8 was released in May 2019. Red Hat has announced that RHEL 7.7 will be the last point release on the RHEL 7.x release series, so we expect users will be looking to upgrade before support for RHEL 7.7 concludes in August 2021.

RHEL 8 includes a number of important enhancements over its predecessor. These include Linux Kernel 4.18 (vs Linux Kernel 3.10), and TLS 1.3 support. The latest point release, RHEL 8.1, adds support for kernel live-patching, allowing kernel security fixes to be deployed without reboot.

Red Hat provides a convenient document summarizing the changes from RHEL 7 to RHEL 8, which can be used when planning your upgrade.

The CentOS Project follows releases of upstream RHEL source code with community binary builds a few months later. CentOS Linux 8 was released in September 2019. MariaDB Server is available for use on both RHEL 8 and CentOS 8.

Installing MariaDB Server

The RHEL 8 and CentOS 8 distributions include MariaDB Community Server 10.3.

You can install MariaDB Server from the command-line:

$ sudo yum install mariadb-server

Benefits of MariaDB Server 10.4

While CentOS 8 and RHEL 8 include MariaDB Community Server 10.3, substantial enhancements are included in the MariaDB Server 10.4 release series that followed:

  • Instant ALTER for InnoDB tables
  • Optimizer trace to aid in performance diagnosis
  • Temporal tables, including system-versioned, application time-period, and bitemporal (both)
  • Ability to reload SSL certificates without server restart
  • Galera 4 technology, a major enhancement over Galera 3
  • Authentication enhancements, including multiple authentication methods per user

Installing MariaDB Server 10.4

To deploy MariaDB Community Server 10.4 on RHEL 8 or CentOS 8, first download and use the mariadb_repo_setup script to configure the MariaDB repositories for YUM:

$ wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
$ chmod +x mariadb_repo_setup
$ sudo ./mariadb_repo_setup

To avoid conflict with the OS-vendor packages, install dependencies separately and use the --repo flag to specify the repository:

$ sudo yum install perl-DBI libaio libsepol lsof boost-program-options
$ sudo yum install --repo="mariadb-main" MariaDB-server

Configuring and Securing MariaDB Server

MariaDB Server 10.3 and 10.4 write all data files and tablespaces to a directory on the file system called the data directory. After installing the packages, run the mysql_install_db utility to provision this directory.

$ sudo mysql_install_db

Start the systemd service for MariaDB Server using systemctl:

$ sudo systemctl start mariadb.service

Specific security practices should always follow any business-specific requirements and governance. Some basic steps should be taken to help harden the MariaDB Community Server deployment:

$ sudo mysql_secure_installation

MariaDB Enterprise Server

MariaDB Corporation provides commercial support for MariaDB Platform, which includes MariaDB Enterprise Server. MariaDB Enterprise Server is supported on a range of operating systems, including RHEL 8 and CentOS 8.

MariaDB Enterprise Server is based on MariaDB Community Server, but ships with enhanced features including:

  • Predictable releases through an Enterprise Lifecycle
  • Enhanced configuration defaults
  • MariaDB Enterprise Audit, with expanded functionality over the MariaDB Audit Plugin
  • MariaDB Enterprise Backup, with non-blocking backups
  • MariaDB Enterprise Cluster, with expanded encryption over MariaDB Cluster (Galera)

Want to hear more? Contact us or see the MariaDB Enterprise Documentation.