[PÁGINA 148, SUBSTITUIR O SEGUNDO e TERCEIROS PARÁGRAFOS PELO ABAIXO]

No caso do MySQL o comando nativo mysqlhotcopy ou mysqldump podem ser utilizados para criar uma “cópia” íntegra do banco. O primeiro se mostra mais recomendável pois não indisponibiliza o acesso ao banco, apenas trava as tabelas, para criar uma redundância dos arquivos e pastas do MySQL. Já a saída do mysql dump consiste num espelho do banco em formato ASCI.

16.2.2. Backup do banco MySQL

[O TEXTO DESSE ITEM DEVE VIRAR UM SUBITEM: 16.2.2.1]

Acrescentar subitem:

16.2.2.2 mysqlhotbackup

a) Para utilizar este processo, crie um usuário Bacula no banco de dados a ser backupeado (se não houver) e garanta permissões para travamento das tabelas:

$ mysql -p
Enter password:

mysql> CREATE USER ‘bacula’@’localhost’ IDENTIFIED BY ‘senha‘;

Você receberá o retorno indicando o sucesso do comando: Query OK, 0 rows affected (0.00 sec)

mysql> GRANT SELECT, RELOAD, LOCK TABLES ON *.* TO
‘bacula’@’localhost’ IDENTIFIED BY ‘senha‘;

Idem: Query OK, 0 rows affected (0.00 sec)

b) Crie um diretório para destino da cópia quente:

mkdir /mnt/copiamysql

c) Crie um shell script com o comando mysqlhotcopy (ex.: copiamysqlallbases.sh):

mysqlhotcopy –regex=.* –user root –password 123456 –allowold /mnt/copiamysql/ > /etc/bacula/copiamysqlallbases.sh

d) Confira permissão de execução ao script:

chmod o+x /etc/bacula/copiamysqlallbases.sh

e) Insira a opção ClientRunBeforeJob no Job de backup do servidor hospedeiro da base de dados:

Job {
Name = “BackupClient1”
JobDefs = “DefaultJob”

ClientRunBeforeJob = “/etc/bacula/copiamysqlallbases.sh”

}

f) Certifique-se que o caminho destino da cópia (/mnt/copiamysql/) encontra-se incluída no backup deste mesmo servidor:

FileSet {
Name = “bd_mysql_set”
Include {
Options {
signature = MD5
}
File = /mnt/copiamysql/
}

}

g) Reinicie o daemon do director ou submeta o comando reload no bconsole.

h) Submeta o job como forma de testar a execução do SCRIPT. Fim.

 

Disponível em: pt-brPortuguês

Deixe uma resposta