Setup Percona no Debian 7

Você está aqui:
Tempo estimado de leitura: 3 min

A replicação multi-master do MySQL é um excelente recurso dentro do MySQL. No entanto, existe apenas um problema; A replicação multi-master padrão parece nunca ser tão estável quanto a replicação mestre-escravo. Está sempre precisando de atenção. É aí que Percona entra em jogo. A equipe Percona desenvolveu um incrível produto chamado cluster Percona XtraDB. O XtraDB possui replicação multi-master de classe mundial com tecnologia Galera. Então, o que estamos esperando? Vamos começar.

Pré-requisitos

  • Uma distro Linux de sua escolha. Neste guia, estaremos usando o Debian 7. Você pode usar uma distro diferente se você quiser. ( Note que você pode precisar adaptar este guia para trabalhar com a distro de sua escolha )
  • Dois nós executando o mesmo sistema operacional.
  • Conhecimento básico da linha de comando e SSH.

Começando

SSH em suas máquinas virtuais.

VM 1:

ssh root@xxx.xxx.xxx.xxx

VM 2:

ssh root@yyy.yyy.yyy.yyy
Adicione os repositórios do Percona.

Nos dois nós, execute o seguinte comando:

echo -e "deb http://repo.percona.com/apt wheezy main\ndeb-src http://repo.percona.com/apt wheezy main" >> /etc/apt/sources.list.d/percona.list && apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A

Agora precisamos atualizar as fontes:

apt-get update
Instale o cluster Percona-XtraDB.

A instalação é simples:

apt-get install percona-xtradb-cluster-56

Se você está familiarizado com o MySQL, esta próxima tela deve parecer familiar. Basta seguir as instruções na tela para inserir uma senha.

Configure o primeiro nó.

A configuração é bem simples. Você simplesmente precisa adicionar algumas linhas ao arquivo de configuração do MySQL. Neste caso, vou usar o Nano, mas você pode usar o editor de texto de sua preferência.

Use isso para abrir o arquivo nas duas máquinas:

nano /etc/mysql/my.cnf

Vá até bind-address = 127.0.0.1e adicione um # antes dele. Adicione as seguintes linhas imediatamente após a linha (comentada) bind-address:

### Galera library.

wsrep_provider=/usr/lib/libgalera_smm.so

### IP addresses of your two nodes.

wsrep_cluster_address=gcomm://xxx.xxx.xxx.xx,yyy.yyy.yyy.yyy

### This will not work unless binlog is formatted to ROW.

binlog_format=ROW

### This changes how InnoDB autoincrement locks are managed and is a requirement for Galera

innodb_autoinc_lock_mode=2
### Node #1 address (The node you are ssh`d into now.)

wsrep_node_address=xxx.xxx.xxx.xx

### SST Method

wsrep_sst_method=xtrabackup-v2

### Cluster name

wsrep_cluster_name=xtradb

### Node Name, in this case we will just call it xtradb1

wsrep_node_name=xtradb1

### Authentication, REMEMBER THIS.

wsrep_sst_auth="sstuser:yoursecretpass"

Salve e saia do arquivo (Ctrl + X).

Agora, vamos inicializar o nó:

/etc/init.d/mysql bootstrap-pxc

Em seguida, precisamos criar o usuário e conceder privilégios. É por isso que você precisa se lembrar dessa senha. Você precisará fazer o login no shell do MySQL ( mysql -u root -p) e digitar o seguinte (não incluir o mysql>):

mysql> CREATE USER 'sstuser'@'localhost' IDENTIFIED BY 'yoursecretpass';
mysql> GRANT RELOAD, LOCK TABLES, REPLICATION CLIENT ON *.* TO 'sstuser'@'localhost';
mysql> FLUSH PRIVILEGES;
Configure o segundo nó.

A configuração para o segundo nó é idêntica à primeira, exceto por dois valores. Mais uma vez, comente bind-address = 127.0.0.1e cole o seguinte imediatamente depois. Lembre-se de editar os valores de acordo.

### Galera library.

wsrep_provider=/usr/lib/libgalera_smm.so

### IP addresses of your two nodes.

wsrep_cluster_address=gcomm://xxx.xxx.xxx.xx,yyy.yyy.yyy.yyy

### This will not work unless binlog is formatted to ROW.

binlog_format=ROW

### This changes how InnoDB autoincrement locks are managed and is a requirement for Galera

innodb_autoinc_lock_mode=2

### Node #2 address (The node you are ssh`d into now.)

wsrep_node_address=yyy.yyy.yyy.yyy

### SST Method

wsrep_sst_method=xtrabackup-v2

### Cluster name

wsrep_cluster_name=xtradb

### Node Name, in this case we will just call it xtradb1

wsrep_node_name=xtradb1

### Authentication, REMEMBER THIS.

wsrep_sst_auth="sstuser:yoursecretpass"

Em seguida, digite /etc/init.d/mysql start. Você verá a seguinte saída:

[....] Starting MySQL (Percona XtraDB Cluster) database server: mysqld . .
[....] State transfer in progress [ok]

É isso aí! Você configurou um cluster XtraDB multi-mestre! Este é um cluster XtraDB livre de preocupações com ótimo desempenho.

Testando o cluster.

No nó 1, digite em mysql -u root -pseguida create database demo;. No nó oposto, faça o login no MySQL com root e digite show databases;. Se tudo funcionou corretamente, você verá o banco de dados criado no nó oposto!

Esse artigo foi útil?
Não Gostei 0
Visualizações: 5
Fechar Menu