Servidor MySQL com base de dados XBMC – Parte 2

No seguimento do tutorial do servidor MySQL com a biblioteca XBMC vamos agora ensinar como configurar um backup automático da base de dados, no nosso caso um diário e outro mensal. Ensinaremos também a fazer uma pequena optimização da base de dados MySQL.

xbmc_05

Convém salientar que optimizar uma base de dados MySQL é um processo complexo. É provavelmente a base de dados mais usado no mundo e é extremamente escalável. Este tutorial é dedicado ao XBMC e ao Raspberry Pi pelo que não aconselhamos a seguir o mesmo para outras bases de dados e outros servidores.

Activar o cron:

Abrir um terminal e executar:

sudo update-rc.d cron defaults

Inserir as regras no crontab:

Vamos então inserir duas regras de backup automático da base de dados MySql. A 1ª faz um backup diário ás 5 da manhã e a 2ª, um backup mensal, no primeiro dia do mês ás 6 da manhã:

crontab -e

Inserir no final do ficheiro:

00 05 * * * /usr/bin/mysqldump -u root -pavossapassword --all-databases > /media/nomedodisco/Backup/XBMC/all-database_daily.sql
00 06 1 * * /usr/bin/mysqldump -u root -pavossapassword --all-databases > /media/nomedodisco/Backup/XBMC/all-database_monthly.sql

rpi_03

Guardar e sair: CTRL+X, a seguir Y e depois Enter.

sudo service cron restart

Nas regras em cima, -pavossapassword é a vossa password de root do MySQL, de acordo com o escolheram no 1º passo do 1º tutorial. –p + password é tudo junto.

  • /media/nomedodisco/Backup/XBMC/all-database_daily.sql é o local onde vai ficar o nosso backup. Neste caso é num disco usb externo ligado ao RPi. Alterem de acordo com o desejado.
  • Podem claro alterar a hora, data, frequência do backup conforme desejarem, para isso consultem o manual do cron.
Optimizar o MySQL

Abrir um terminal e executar:

sudo mv /etc/mysql/my.cnf /etc/mysql/my.cnf.bak
sudo cp /usr/share/doc/mysql-server-5.5/examples/my-small.cnf /etc/mysql/my.cnf
sudo nano /etc/mysql/my.cnf

E adicionar as seguinte linha na parte [mysqld] :

query_cache_size = 16M
bind-address = 0.0.0.0

Reiniciar o serviço:

sudo service mysql restart

rpi_01

O que fizemos aqui foi usar um ficheiro de configuração diferente do original, que também vem incluído com o MySQL, optimizado para máquinas com pouca memória RAM. A seguir definimos 8 MB na memória RAM reservada às “query’s” para um acesso mais rápido.

Caso a vossa biblioteca não seja muito grande e queiram reduzir um pouco mais o consumo de memória RAM (útil por exemplo, se tiverem mais serviços activos no RPi) podem descomentar e/ou alterar as seguintes linhas no mesmo ficheiro:

query_cache_size = 8M
innodb_buffer_pool_size = 64M
innodb_log_buffer_size = 512K

rpi_00

E assim terminamos a nossa sugestão. É possível optimizar um pouco mais mas para isso têm de ter em conta o tamanho da vossa biblioteca / base de dados. Esperámos que tenham gostado.

Deixar uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *