Estas instruções são para o estoque mariadb on centos 7.1.
Aqui segue como fazer backup ou replicar as configurações atuais de uma máquina para uma nova instalação, presente ou futura.
Na máquina da qual queremos copiar as configurações, podemos executar:
/usr/libexec/mysqld --help --verbose > mysql_current_settings.txt
Em outra máquina, podemos instalar o mariadb-server e executar:
/usr/libexec/mysqld --help --verbose > mysql_default_settings.txt
Em seguida, colocamos os dois arquivos em um diretório, que neste exemplo é "/ a /".
Então nós corremos:
comm -3 <(sort /a/mysql_current_settings.txt) <(sort /a/mysql_default_settings.txt)
Se não houver saída, os dois arquivos são idênticos.
O que significa que todas as configurações, em ambas as máquinas, estão no padrão.
Se houver alguma saída, algumas linhas não serão recuadas, enquanto algumas linhas serão recuadas.
As linhas não recuadas estão presentes apenas no primeiro arquivo, que aqui é /a/mysql_current_settings.txt.
As linhas de indentend estão presentes apenas no segundo arquivo, que aqui é /a/mysql_default_settings.txt.
Agora sabemos todas as configurações, exceto algumas configurações que são definidas na linha de comando que iniciou o mysqld. Essas configurações podem vir de arquivos /etc/my.cnf ou /etc/my.cnf.d/*, ou de um script personalizado, ou um alias, etc. Em qualquer caso, podemos vê-los com o seguinte comando:
ps -ef | grep mysqld
Agora sabemos as poucas configurações que temos que alterar em uma nova instalação para configurá-la como a antiga.
Aqui seguem alguns outros detalhes.
Em centos 7.1, o seguinte comando mostra todas as configurações atuais, exceto algumas configurações que são definidas na linha de comando que iniciou o mysqld:
/usr/libexec/mysqld --help --verbose
No total, mostra:
na primeira parte, as configurações que podemos usar como primeiro parâmetro depois de "mysqld" quando o iniciamos;
na segunda parte, as configurações são definidas em tempo de compilação;
na terceira parte, as configurações atuais.
Mesmo se a última linha de sua saída disser:
para ver quais valores um servidor MySQL em execução está usando, digite:
mysqladmin variables -uroot -p
esse comando não mostra, por exemplo, bind-address, mesmo se nós o alterarmos em /etc/my.cnf e reiniciar o mysql.
O seguinte comando também mostra muitas configurações, mas não "bind-address":
mysql -uroot -p -e"SHOW VARIABLES;"
Note que, no centos 7.1, o mysqld não está no $ PATH.