Fórum Ubuntu Linux - PT

Suporte Técnico => Servidores => Tópico iniciado por: zaptool em 08 de Abril de 2015, 10:51

Título: Mysql Multiplas Instancias
Enviado por: zaptool em 08 de Abril de 2015, 10:51
Aqui onde trabalho, surgiu a necessidade de criar um ambiente com dois banco de dados distintos, um para homologação e outro para os programadores desenvolverem seus trabalhos.

Atualmente o banco de dados vigente é o de Homologação.

Tentei por inúmeras vezes seguindo dicas encontradas pelo google, que consiste basicamente em duplicar alguns arquivos e pastas, escutando respectivamente nas portas 3306(default) e 3307 (adicional).

No entanto, em nenhumas das minhas tentativas obtive sucesso.

Meu servidor é Ubuntu 14.04 e o Mysql é 5.6


Minha ultima tentativa foi seguindo o artigo contido no link abaixo:
https://naveensnayak.wordpress.com/2013/11/10/mysql-multiple-instances-on-ubuntu/


Gostaria de saber se alguém aqui já desenvolveu este processo e pode me dar alguma dica !


vlw Galera !!
Título: Re: Mysql Multiplas Instancias
Enviado por: zekkerj em 08 de Abril de 2015, 11:04
Olá zaptool,

Você não precisa ter duas instâncias de MySQL separadas para ter dois bancos. Vc pode perfeitamente ter dois bancos separados na mesma instância...

Outra alternativa que vc pode considerar é criar uma máquina virtual onde implantaria a base de dados de homologação.
Título: Re: Mysql Multiplas Instancias
Enviado por: zaptool em 08 de Abril de 2015, 11:28
Olá zekkerj !!

Entendi perfeitamente sua colocação, entretanto, a base de dados atuais possui cerca de 30 Schemas com cerca de 1200 tabelas.  

O Ambiente dos desenvolvedores precisam desses schemas basicamente duplicados, por isso existe a necessidade de separa-los em Bancos diferentes, entende ?

Encontrei um tutorial interessante
http://ithubinfo.blogspot.com.br/2014/03/easy-way-to-install-and-configure-mysql.html
, segui a risca mas ao subir o serviço mysql_multi start  somente a primeira instancia subiu....   :(

root@ubuntu:/etc/mysql# mysqld_multi report
Reporting MySQL servers
MySQL server from group: mysqld1 is running
MySQL server from group: mysqld2 is not running


SEGUE TRECHO DO LOG EM /var/log/mysqld_multi.error

Starting MySQL servers

150408 07:34:38 mysqld_safe Logging to '/var/log/mysqlcrm.err'.
150408 07:34:38 mysqld_safe Logging to '/var/log/mysqlerp.err'.
150408 07:34:38 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql2
150408 07:34:38 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
150408 07:34:40 mysqld_safe mysqld from pid file /var/lib/mysql2/mysql.pid ended
mysqld_multi log file version 2.16; run: Wed Apr  8 07:34:41 2015

Reporting MySQL servers
MySQL server from group: mysqld1 is running
MySQL server from group: mysqld2 is not running
Título: Re: Mysql Multiplas Instancias
Enviado por: zekkerj em 08 de Abril de 2015, 12:13
Citar
O Ambiente dos desenvolvedores precisam desses schemas basicamente duplicados, por isso existe a necessidade de separa-los em Bancos diferentes, entende ?
Ainda acho que isso não é necessário. Até onde eu sei, você ter suas duas bases diferentes na mesma instância. Pode inclusive exportar a primeira como texto SQL, mudar o nome do banco, depois importar de volta.
Título: Re: Mysql Multiplas Instancias
Enviado por: zekkerj em 08 de Abril de 2015, 12:17
Enquanto isso... os processos do mysql rodam com usuário próprio, certo? Nesse caso, certifique-se de que os diretórios novos (/var/lib/mysql2, /var/run/mysql2, /var/log/mysql2, etc) pertençam ao usuário e/ou ao grupo corretos, e não ao root.

Certifique-se também de ter reconfigurado e reiniciado o serviço AppArmor para liberar acesso de escrita aos novos diretórios.