Install MariaDB on Windows Server

Preparation

Make sure your system is up-to-date. Use Windows Update to verify that you have installed the latest security updates and fixes for your version of Windows.

Install MariaDB

Go to downloads.mariadb.org and download the latest stable 64 bit version for Windows. At the time of writing, this is mariadb-10.2.14-winx64.msi. We recommend to use the Windows Installer package.

Configure MariaDB for Relution

Update MariaDB’s configuration with the option’s required by Relution:

  • Go to "%ProgramFiles%\MariaDB 10.2\data"

  • Open “my.ini” in a text editor (e.g. Notepad)

  • Find the section “[mysqld]”

Add the following settings to the “[mysqld]” section:

collation-server=utf8mb4_general_ci
character-set-server=utf8mb4
max_allowed_packet=1G
innodb_file_per_table=1

## No longer needed/supported for MariaDB >= 10.2.2
## If you have an older version please update or enable this
#innodb_large_prefix=on
#innodb_file_format=Barracuda
The “[mysqld]” section may already contain a character-set-server setting. Remove/replace this setting with the one above.
If you’re updating from an older version of MariaDB you may still have the innodb_large_prefix and innodb_file_format settings in your my.ini file. These settings are no longer needed and their presence may prevent the MariaDB service from starting correctly.

Restart the MariaDB service using either the Services manager (services.msc) or the command prompt. Note that the service is called “MySQL” for backwards compatibility reasons.

net stop MySQL
net start MySQL

Check installation

You should now be able to connect to this MariaDB instance. You can use the “MySQL Client (MariaDB 10.2 (x64))” shortcut that the installer should’ve placed on your start menu. After you connect, you should see output similar to this:

Enter password: ********
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 11
Server version: 10.2.14-MariaDB mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> exit
Bye

Alternatively, you can use the HeidiSQL client which is an optional part of the installer or the MySQL Workbench to connect to the instance.

Create Relution database

Next, we are going to create the relution database and an associated database user. This user is going to be used by the Relution service to connect to the database.

Connect to the database with an SQL client. Using a GUI application like HeidiSQL or MySQL Workbench is recommended for this task. Execute the following SQL statements:

CREATE DATABASE relution CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
CREATE USER 'relution'@'localhost' IDENTIFIED BY '$PASSWORD';
GRANT ALL PRIVILEGES ON relution.* TO 'relution'@'localhost' IDENTIFIED BY '$PASSWORD';
CREATE USER 'relution'@'%' IDENTIFIED BY '$PASSWORD';
GRANT ALL PRIVILEGES ON relution.* TO 'relution'@'%' IDENTIFIED BY '$PASSWORD';
FLUSH PRIVILEGES;
Replace $PASSWORD with a secure random password. We recommend to use a password manager to generate a long random password (e.g. 32 characters or more). This password is used by the Relution service and is not intended to be used by an administrator, so there is no need to keep it short for convenience.

This creates a new database called relution and a new database user with the name relution that has full privileges on this database. This user is used by the Relution service to access the database. If administrative access to the database is needed for maintenance purposes we recommended to create a separate database user for this.

Make sure you save the password (excluding the quotation marks) generated by that script in a secure location. You will need to configure this password later to grant Relution access to the database.

Verify that you can connect to the database as this user. Open the “Command Prompt (MariaDB 10.2 (x64))” shortcut from the start menu and enter the following command:

mysql -u relution -p relution

Enter the password when prompted. You should see the MariaDB prompt as above. Enter exit and press enter to exit.

Firewall configuration

If you install Relution on another machine, you need to open port 3306 on this machine, so Relution can talk to MariaDB. If Relution is going to be installed on the same machine you can skip these steps.

  • Open Windows Firewall with Advanced Security

  • Navigate to Inbound Rules

  • Click New Rule…​ in the Actions pane

  • Select Program

  • Click Next

  • Select This program path

  • Use Browse…​ to select the MariaDB’s service executable

    (C:\Program Files\MariaDB 10.2\bin\mysqld.exe)

  • Click Next

  • Select Allow the connection

  • Click Next

  • Select Domain and/or Private depending on your network infrastructure

  • Click Next

  • Enter a name for the rule

  • Click Finish