How to Install MariaDB 10.3 or MySQL 8.0 on Arch Linux

Prerequisites

  • A Vultr server running up to date Arch Linux (see this article.)
  • Sudo access:
    • Commands required to be ran as root are prefixed by #, and ones that can be ran as a regular user by $. The recommended way to run commands as root is to, as a regular user, prefix each of them with sudo

You can choose to install either MariaDB or MySQL, outlined in the following two sections.

Install MariaDB 10.3 Database

Install MariaDB:

# pacman -S mariadb

If you run the Btrfs filesystem, you should consider disabling copy-on-write for the database directory for performance reasons:

# chattr +C /var/lib/mysql/

Configure MariaDB:

# mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql

Start MariaDB, and make it start after every boot:

# systemctl enable --now mariadb

Complete recommended security measures. At the beginning, press ENTER for the current root database password, set a new root password, and press ENTER to answer yes on all further prompts.

# mysql_secure_installation

Install MySQL 8.0 Database

Although MariaDB is strongly recommended, you can alternatively install MySQL from the Arch Linux User Repository (AUR). Understand that AUR packages are not officially supported, may be updated less frequently, and because they are not necessarily submitted by a vetted Trusted User, their PKGBUILD/ETC should be reviewed for any suspect code. That said, as of early 2019, the current AUR maintainer for mysql is "Muflone". Although not a vetted Trusted User who can publish to the official repositories, he has been a valuable contributor to Arch since 2011, maintains about 250 AUR packages (many of them popular) and has never done anything suspect.

To install MySQL, compile and install the AUR package mysql. See Building Packages on Arch Linux (Including the AUR). MariaDB and MySQL have very similar post-install steps.

If you run the Btrfs filesystem, you should consider disabling copy-on-write for the database directory for performance reasons:

# chattr +C /var/lib/mysql/

Configure MySQL:

# mysqld --initialize --user=mysql --basedir=/usr --datadir=/var/lib/mysql

Start MySQL, and make it start after every boot:

# systemctl enable --now mysqld

Complete recommended security measures. An automatically generated temporary root database password was shown by the previous command. Set a new root password. Respond with y on all further yes/no prompts, and select 2 for "STRONG" password validation policy.

# mysql_secure_installation

Note you cannot have MariaDB and MySQL installed on the same system, as MariaDB is made to be a drop-in replacement and has files of the same name. Also, when compiling with less than 4GB total RAM (physical RAM + swap), you may encounter a memory exhausted error while compiling.

Test Connection

To connect to MariaDB or MySQL as the root database user, run the following:

$ mysql -u root -p

To quit:

MariaDB [(none)]> quit

Consider A Firewall

You may want to consider configuring a firewall. By default, MariaDB will listen on port 3306, not only from localhost, but also from anywhere on your public IP address. By default, MariaDB will only approve incoming connections from localhost, but external attempts will still reach MariaDB and get an error: Host... is not allowed to connect to this MariaDB server. Although MariaDB is considered quite secure, it's more secure to have a firewall not even give external packets to the MariaDB server, unless absolutely necessary. Even if direct remote access is desired, using a firewall to block the traffic and using a VPN would be more secure.

Prepare for Upgrades

By default, pacman will upgrade MariaDB when new versions are released to the official Arch repositories, when you upgrade your entire Arch system by running the following:

# pacman -Syu

It is recommended to configure pacman to not automatically install upgrades to MariaDB. When an upgrade is released and you upgrade your entire Arch system, pacman will let you know a new version is available. Edit /etc/pacman.conf, and add the following:

IgnorePkg   = mariadb*

It's a good idea to backup your database before upgrading.

When pacman shows you there is a MariaDB upgrade, force upgrading the packages:

# pacman -S mariadb mariadb-clients mariadb-libs

If you're running the AUR MySQL package, pacman never automatically compiles and installs new versions from the AUR, so the above steps are unnecessary, but the ones below are still required.

After an upgrade, the package's .install script will alert you to perform the following steps, but blocking the automatic upgrade ensures you won't miss it.

Restart MariaDB, to load the new version:

# systemctl restart mariadb

Check and update your tables to conform with the new version:

# mysql_upgrade -u root -p


Leave a Comment

Configurar un servidor Team Fortress 2 en Arch Linux

Configurar un servidor Team Fortress 2 en Arch Linux

Este tutorial explica cómo configurar un servidor Team Fortress 2 en Arch Linux. Supongo que ha iniciado sesión con una cuenta de usuario no root que tiene acceso a sudo

Configurar Mumble Server en Arch Linux

Configurar Mumble Server en Arch Linux

Este tutorial explica cómo configurar un servidor Mumble (Murmur) en Arch Linux. Todo lo que se hace en este tutorial se hace como usuario root. Instalación un

Creación de paquetes en Arch Linux (incluido el AUR)

Creación de paquetes en Arch Linux (incluido el AUR)

En Arch Linux, los repositorios oficiales son: core, extra y community. Estos paquetes ya están compilados y se instalan a través de pacman. Para th

How To Install Nginx 1.14 On Arch Linux

How To Install Nginx 1.14 On Arch Linux

Prerequisites A Vultr server running up to date Arch Linux (see this article.) Sudo access. Commands required to be ran as root are prefixed by #. Th

Configurar un servidor Counter-Strike: Global Offensive (CSGO) en Arch Linux

Configurar un servidor Counter-Strike: Global Offensive (CSGO) en Arch Linux

Este tutorial explica cómo configurar un servidor Counter-Strike: Global Offensive en Arch Linux. Este tutorial asume que ha iniciado sesión con un uso estándar

How to Install Apache 2.4 on Arch Linux

How to Install Apache 2.4 on Arch Linux

Prerequisites A Vultr server running up to date Arch Linux. See this guide for more information. Sudo access. Commands required to be run as root ar

Instalación de Arch Linux en un servidor Vultr

Instalación de Arch Linux en un servidor Vultr

Vultr le proporciona la increíble funcionalidad de permitirle usar su propia imagen personalizada además de sus excelentes plantillas, lo que le permite ejecutar

Instale Arch Linux con Btrfs Snapshotting

Instale Arch Linux con Btrfs Snapshotting

Prefacio Arch Linux es una distribución de propósito general conocida por su tecnología de punta y configuración flexible. Con las instantáneas de Btrfs, podemos tomar

How to Install MongoDB 4.0 on Arch Linux

How to Install MongoDB 4.0 on Arch Linux

Prerequisites A Vultr server running up to date Arch Linux (see this article) Sudo access: Commands required to be ran as root are prefixed by #, and one

How to Install PHP 7.3 on an Arch Linux Webserver

How to Install PHP 7.3 on an Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access. Commands require

How To Install PostgreSQL 11.1 On Arch Linux

How To Install PostgreSQL 11.1 On Arch Linux

Prerequisites A Vultr server running up to date Arch Linux (see this article.) Sudo access. Commands required to be ran as root are prefixed by #, and one

How to Use HTTPS on Arch Linux Webserver

How to Use HTTPS on Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access Commands required t

Configurar el servidor Spigot en Arch Linux

Configurar el servidor Spigot en Arch Linux

Este tutorial explica cómo configurar un servidor de Minecraft usando Spigot en Arch Linux. Este tutorial asume que usted es un usuario normal (no root) y tiene

How To Install Python 3.7 On An Arch Linux Webserver

How To Install Python 3.7 On An Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access: Commands require

Installing 2019 Arch Linux on a Vultr Server

Installing 2019 Arch Linux on a Vultr Server

Introduction Arch Linux has a smaller, but still strong, following than more popular distributions. Its philosophy is quite different, with advantages an

Usando Devtools en Arch Linux

Usando Devtools en Arch Linux

El paquete Devtools se creó originalmente para usuarios de confianza para crear correctamente paquetes para los repositorios oficiales. Sin embargo, puede ser utilizado por usuarios comunes

Usando Makepkg en Arch Linux

Usando Makepkg en Arch Linux

Si usa makepkg directamente, contamina un poco su sistema. El grupo de paquetes base-devel debe estar instalado. De esta manera, por defecto, las dependencias se necesitan solo

How to Install Perl 5.28 on an Arch Linux Webserver

How to Install Perl 5.28 on an Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access: Commands require

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

Los ataques de ransomware van en aumento, pero ¿puede la IA ayudar a lidiar con el último virus informático? ¿Es la IA la respuesta? Lea aquí, sepa que la IA es una bendición o una perdición

ReactOS: ¿Es este el futuro de Windows?

ReactOS: ¿Es este el futuro de Windows?

ReactOS, un sistema operativo de código abierto y gratuito, está aquí con la última versión. ¿Puede satisfacer las necesidades de los usuarios de Windows de hoy en día y acabar con Microsoft? Averigüemos más sobre este estilo antiguo, pero una experiencia de sistema operativo más nueva.

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Whatsapp finalmente lanzó la aplicación de escritorio para usuarios de Mac y Windows. Ahora puede acceder a Whatsapp desde Windows o Mac fácilmente. Disponible para Windows 8+ y Mac OS 10.9+

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

Lea esto para saber cómo la Inteligencia Artificial se está volviendo popular entre las empresas de pequeña escala y cómo está aumentando las probabilidades de hacerlas crecer y dar ventaja a sus competidores.

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

Recientemente, Apple lanzó macOS Catalina 10.15.4, una actualización complementaria para solucionar problemas, pero parece que la actualización está causando más problemas que conducen al bloqueo de las máquinas Mac. Lee este artículo para obtener más información

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

¿Qué es un sistema de archivos de diario y cómo funciona?

¿Qué es un sistema de archivos de diario y cómo funciona?

Nuestra computadora almacena todos los datos de una manera organizada conocida como sistema de archivos de diario. Es un método eficiente que permite a la computadora buscar y mostrar archivos tan pronto como presiona buscar.

Singularidad tecnológica: ¿un futuro lejano de la civilización humana?

Singularidad tecnológica: ¿un futuro lejano de la civilización humana?

A medida que la ciencia evoluciona a un ritmo rápido, asumiendo muchos de nuestros esfuerzos, también aumentan los riesgos de someternos a una singularidad inexplicable. Lea, lo que la singularidad podría significar para nosotros.

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

El impacto de la inteligencia artificial en la atención médica 2021

El impacto de la inteligencia artificial en la atención médica 2021

La IA en la salud ha dado grandes pasos desde las últimas décadas. Por tanto, el futuro de la IA en el sector sanitario sigue creciendo día a día.