Múltiplas instâncias mysql no Centos 5.5

Múltiplas instâncias mysql no Centos 5.5

Havia um sistema antigo no Centos 5.5 com o padrão abaixo:

  • SO:CentOS versão 5.5 (final)
  • Servidor Web:Apache 2.2.3
  • Servidor AP:Tomcat 6.0.3.6
  • JDK:1.6.0_37-b06
  • Banco de dados:MySQL 5.5.27-1

Conforme necessidade do cliente, tenho que instalar a duplicação de tudo (Apache, Tomcat, Mysql, Java) na mesma máquina sem fazer nenhuma alteração e efeito no servidor. Fiz alguns testes em uma máquina virtual e tive problemas com o mysql. Meus testes com versões do mysql são 5.5.27 e 5.16.19 com diferentes configurações de datadir, porta e até mesmo my.cnf

[root@localhost ~]# vim /usr/local/src/mysql5.5.27/my.cnf
mysql5.5.27
basedir = /usr/local/src/mysql5.5.27
datadir = /usr/local/src/mysql5.5.27/data
port = 3306
socket = /tmp/mysql5.5.27.sock

[root@localhost ~]# vim /usr/local/src/mysql5.6.19/my.cnf
mysql5.6.19
basedir = /usr/local/src/mysql5.6.19
datadir = /usr/local/src/mysql5.6.19/data
port = 3307
socket = /tmp/mysql5.6.19.sock

Dois serviços estão iniciando bem sem erros Mas o problema é que tento fazer login no mysql, recebi este erro

Can't connect to local MySQL server through socket '/tmp/mysql.sock'

Por favor, se alguém tiver alguma experiência com múltiplas instâncias do mysql? Por favor, ajude-me a entender essas circunstâncias.

※ Desejo separar os arquivos de configuração de 2 instâncias do mysql.

Responder1

Para a linha de comando do mysql, você precisa de um arquivo my.cnf em um local lido mysql --help(no topo ele lista os arquivos de configuração lidos.

Você precisará de uma diretiva como:

  [client]
  socket = /tmp/mysql{version}.sock

informação relacionada