Eu gerei um dump do mestre e tenho que construir o escravo e dar privilégios e posição do log binário e nome do arquivo do mestre para que ele seja absorvido do mestre. Master é um aplicativo OLTP de alta transação com TPS de 74,21 inserções/s, 113,17 atualizações/s, 0,00 exclusões/s, 77468,29 leituras/s. Agora, quando as operações DML estão prestes a operar no SLAVE via binlogs, haverá algum impacto no desempenho do Master. Digamos, por exemplo, operações Load Avg ou IO no Master que podem ser afetadas. Como permite que o escravo leia as informações do binlog.
Nota: Mestre e Escravo têm a mesma configuração de servidor.
Versão do MySQL: 5.0.77
SO: CentOS 5.4
Mem: 16 GB de RAM (80% alocados para INNODB_BUFFER_POOL_SIZE)
Tamanho do banco de dados: 380 GB
Esta questão me atinge quando eu queria scp alguns dos arquivos para o Slave. Considerando que ele tem apenas 34 MBPS de velocidade média dentro da rede e demorou muito para ler as operações de IO e o Load Avg estava atingindo mais de 6, 7, 11 etc. Apenas uma medida para ter o escravo no lugar, não prejudicando o desempenho do mestre.
Minhas perguntas são:
Poderia haver algum pico de carga nos processadores da CPU ou IO, o que pode desacelerar o Master Perf?
Se houver algum meio que eu possa trfr dados que use menos utilização de cpu/IO?
Cumprimentos,
Mannoj Kumar
A resposta simples é Não.
Na replicação do Mysql, o mestre copia os arquivos de log bin para os escravos e, depois disso, o trabalho termina. Agora o Escravo irá rodar os arquivos bin e executá-los, mas não haverá performance no Mestre.
Pode haver um cenário em que você esteja usando replicação síncrona completa, em que o mestre aguardará que o escravo execute a consulta, mas novamente não afetará o desempenho em termos de memória ou CPU, mas o mestre aguardará a consulta para ser executado.
Além disso, para sua segunda pergunta, Phil já respondeu, que o ssh envia dados por meio de criptografia que usa muito CPU; portanto, se você quiser outras maneiras, use os outros métodos descritos por Phil.