XAMPP - Replacing MariaDB with MySQL

As of XAMPP 5.5.30 and 5.6.14, XAMPP ships MariaDB instead of MySQL. MariaDB is not 100% compatible with MySQL and can be replaced with the “orginal” MySQL server.

Requirements

  • Windows
  • XAMPP for Windows
  • Administrator privileges to restart Windows services

Backup

  • Backup the old database into a sql dump file
  • Stop the MariaDB service
  • Rename the folder: c:\xampp\mysql to c:\xampp\mariadb

Installation

[mysqld]
# Set basedir to your installation path
basedir=c:/xampp/mysql

# Set datadir to the location of your data directory
datadir=c:/xampp/mysql/data

# Default: 128 MB
# New: 1024 MB
innodb_buffer_pool_size = 1024M

Initializing the data directory

  • Copy the old data directory from c:\xampp\mariadb\data to c:\xampp\mysql\data
  • Start the MySQL server. You can use the XAMPP Control Panel (MySQL > Start) to start the MySQL service.
  • Repair all corrupted tables in the c:\xampp\mysql\data directory. Press ENTER if your password is empty.
cd c:\xampp\mysql\bin
mysqlcheck.exe -u root -p --auto-repair --all-databases

Update structure to latest version:

mysql_upgrade.exe -u root -p --force

Check the tables for errors:

mysqlcheck.exe -u root -p --check --all-databases

Note

If you don’t want to copy and migrate the old data directory, you can create a fresh directory with this command:

c:\xampp\mysql>bin\mysqld.exe --initialize-insecure --basedir=c:\xampp\mysql --datadir=c:\xampp\mysql\data