Estou tentando obter várias instâncias do mysql em execução em uma caixa de desenvolvimento para alguns testes. Esse cara está executando o ubuntu, então a configuração é um pouco diferente das nossas configurações de produção.
Eu gostaria de encontrar a maneira mais fácil de iniciar o serviço basicamente sudo e fazer com que ele use um arquivo init .cnf diferente (diferente do local padrão da distro de /etc/mysql/my.cnf
Alguma ideia?
Você já olhou para a ferramenta mysqld_multi ?
Isso permitirá que você execute diferentes configurações e distribuições diferentes usando o mesmo arquivo de configuração (/etc/mysql/my.cnf) e você pode ajustar o script init.d para usar os comandos mysqld_multi em vez de mysqld.
Outra ferramenta pode ser mysql sandbox , mas nunca usei isso pessoalmente em nenhuma distro.
Estou na mesma situação diariamente. Em vez de usar mysqld_multi, o que funciona bem para mim é instalar cada cópia do MySQL em uma árvore separada e, em seguida, executar
mkdir -p data etc var/run var/log/mysql
e corrigir caminhos de cópia em um esqueleto my.cnf:e finalmente correr
scripts/mysql_install_db
. Se vários servidores precisarem ser executados ao mesmo tempo, eu incluoskip-networking
ou atribuo uma porta TCP diferente também.