From Funtoo
Jump to: navigation, search



We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.

MariaDB is a drop in replacement for MySQL.

Mariadb's executable is /usr/bin/mysql

Mariadb's init script is /etc/init.d/mysql


# emerge dev-db/mariadb

First Run & Lock Down

Mariadb requires configuration upon instillation.

To deploy Mariadb:

# emerge --config dev-db/mariadb
# rc-service mysql restart
# mysql_secure_installation

Binary logs

The binary logs are used for database replication and they are enabled by default in /etc/mysql/mariadb.d/50-distro-server.cnf:


One can disable binary logs by creating custom configuration file under /etc/mysql/mariadb.d/ and name it e.g. 75-local.cnf with content:


The status of the binary logs can be inspected by the dev-db/phpmyadmin or by the SQL command:

    (sql source code) - Show binary logs

Binary log can be all removed:

    (sql source code) - Reset binary logs

Use RESET MASTER only if you don't use replication at all or if the server is configured as master first time!

Unmaintained binary log files will grow in count and size and they can consume considerable disk space (in my case it was more than 2 GB). Then one can purge old files by the PURGE BINARY LOGS SQL command. It can be used in two manners:

    (sql source code) - Remove logs older than given file
PURGE BINARY LOGS TO 'mariadb-bin.000036';
    (sql source code) - Remove logs older than given date
PURGE BINARY LOGS BEFORE '2017-08-24 11:13';

Purging old logs can be automated by the expire-logs-days configuration option, with number of days to keep logs.

Log's file name can be configured by the log-basename or log-bin options. If not configured, the default mariadb-bin with numbered extension will be used.


The default (unconfigured) log's file name was changed in time. The older MariaDB versions was using mysql-bin and even older setups was using hostname in name. It is safe to remove the old files, because they are not used by server more.

External Resources

see: dev-db/mysql