Servidor MySQL com base de dados XBMC – Parte 1

De volta aos nossos tutoriais para Raspberry PI, hoje trazemos uma sugestão muito interessante: Instalar e configurar um servidor MySQL com base de dados XBMC. Isto é útil no caso um utilizar ter vários dispositivos com o XBMC, numa rede local, e pretende que todos estejam sincronizados.

Vejam como é fácil! Para quem ainda não tem um Raspberry PI, já viram a nossa super promoção ?

mysql_10

Usando uma biblioteca MySQL é possível guardar informação sobre todos os nossos conteudos (musica/vídeos/fotos) numa base de dados central, de modo a que múltiplos sistemas XBMC possam aceder a essa mesma informação ao mesmo tempo. As principais vantagens desta solução são:

  • Partilha do estado visto/não visto em todos os dispositivos
  • Parar um filme ou um episodio de uma série na sala e resumir no quarto por exemplo
  • Apenas uma biblioteca a manter para todos os dispositivos

Para esta solução é necessário uma máquina 24/7 ligada e o Raspberry é uma excelente solução para tal cenário um vez que tem um consumo energético muito baixo. O Raspberry irá conter toda a nossa biblioteca multimédia em discos ligados por USB, mas a vossa biblioteca pode estar em qualquer local na rede desde que esteja sempre disponível. Com a evolução recente de alguns add-ons para o XBMC é até possível adicionar conteúdo online à nossa biblioteca não sendo necessário ter o ficheiro armazenado na nossa rede.

Procedimento
1º Instalar o Mysql no Raspberry Pi

Abrir um terminal e executar:

sudo apt-get install mysql-server

(inserir password à escolha para o root user do mysql)

2º Configurar o MySQL

De modo a que o MySQL pode ser acedido a partir de qualquer máquina na rede, é necessário efectuar a seguinte alteração: Editar o ficheiro /etc/mysql/my.cnf ir à linha

bind-address = 127.0.0.1

e mudar para

bind-address = 0.0.0.0

mysql_05

Depois basta fazer o restart o serviço MySQL usando o comando: sudo service mysql restart

mysql_06

3º Criar um utilizador no Mysql e definir permissões

Num terminal executar:

mysql -u root -p

(inserir a password do root do mysql)

CREATE USER 'xbmc' IDENTIFIED BY 'xbmc';
GRANT ALL ON *.* TO 'xbmc';
\q

No final devem voltar a reiniciar o serviço MySQl: sudo service mysql restart

4º Tornar os ficheiros multimédia acessíveis através da rede

Na distribuição PiPplware iremos usar o serviço Samba que já vem configurado, poupando assim algum trabalho. Podem usar outros protocolos de rede com o NFS e AFP. Como já referimos os nossos ficheiros não têm necessariamente estar alojados no Raspberry, basta apenas que o RPi tenha acesso a estes. Podem estar até em vários locais diferentes na rede até mesmo na internet.

5º Configurar todas as instâncias do XBMC a sincronizar

Devemos agora configurar todos os equipamentos que tivermos com o XBMC de modo a usar a base de dados partilhada. Criar ou adicionar o seguinte advancedsettings.xml

<advancedsettings>
  <videodatabase>
    <type>mysql</type>
    <host>***.***.***.***</host>
    <port>3306</port>
    <user>xbmc</user>
    <pass>xbmc</pass>
  </videodatabase> 
  <musicdatabase>
    <type>mysql</type>
    <host>***.***.***.***</host>
    <port>3306</port>
    <user>xbmc</user>
    <pass>xbmc</pass>
  </musicdatabase>
  <videolibrary>
    <importwatchedstate>true</importwatchedstate>
    <importresumepoint>true</importresumepoint>
  </videolibrary>
</advancedsettings>

Alterar ***.***.***.*** pelo IP do servidor MySQL, neste caso o Raspberry. Copiar o ficheiro advancedsettings.xml criado para a pasta “userdata” de todas as instalações do XBMC que desejam sincronizar e reiniciar todos XBMCx para as alterações fazerem efeito.
mysql_07

6º Exportar uma biblioteca local existente (opcional):

Este passo é apenas necessário se já têm uma biblioteca local (numa instalação do XBMC) configurada e a pretendem migrar para a base de dados MySQL. Isto irá fazer um backup de toda a informação referente á sua biblioteca local, para onde estão os seus ficheiros multimédia de modo a ser usada posteriormente na base de dados MySQL. Isto inclui ficheiros .nfo com informação do vídeo/musica, artwork, etc. No XBMC ir a

  • Sistema/Definições > Vídeo > Biblioteca > Exportar biblioteca de vídeo > Separados

Fazer o mesmo para a musica se desejável:

  • Sistema/Definições > Musica > Biblioteca > Exportar biblioteca de musica > Separados
7º Importar / configurar uma biblioteca usando a base de dados MySQL

Se já copiaram o advancedsettings.xml para os vossos dispositivos, agora todos os XBMCs estarão a usar a base de dados do servidor MySQL, portanto a base de dados está em branco. Se ainda têm a biblioteca que estava a usar a base de dados local definida devem removê-la, (Definir conteúdo -> Nenhum). Agora podemos importar a biblioteca antiga ou configurar uma nova. Podem importar a biblioteca usando a opção com o mesmo nome mas este método não é recomendado. Dependendo do tamanho da vossa biblioteca este processo poderá demorar algum tempo pelo que aconselhamos agora a usarem o vosso dispositivo mais rápido com o XBMC para o resto do processo.

  • Ir a Vídeos > Ficheiros > Adicionar vídeos > Rede Windows (SMB) > RASPBERRYPI > Devices -> local onde têm os vídeos -> Definir Conteúdo de acordo

Fazer o equivalente para as músicas se desejado. Agora podem adicionar arquivos e actualizar a biblioteca a partir de qualquer um dos seus dispositivos XBMC que a biblioteca para todos eles vai ficar em sincronia automaticamente.

mysql_08

  • NOTAS: Se fizeram o backup da vossa antiga biblioteca como indicado em cima este processo será rápido e ficarão com uma biblioteca idêntica à anterior
  • Ao definirem o conteúdo é importante que escolham um caminho de rede (ex: smb://192.168.2.100/Media/Filmes) mesmo que o dispositivo com os ficheiros seja local, caso contrário o MySQL não funcionará correctamente.
  • Se usarem password nas vossas partilhas de rede, terão que copiar ou sincronizar também o arquivo passwords.xml da pasta “userdata” para cada dispositivo XBMC. As credenciais de acesso a discos partilhados pela rede Windows (Samba) no Pipplware são: user: pi / password: raspberry
  • Todas as versões do XBMC/KODI convém serem as mesmas, por exemplo 13.X, 14.X, etc, caso contrário isto poderá não funcionar correctamente.
8º Adicionar novos dispositivos XBMC á configuração MySQL

Para qualquer novo dispositivo XBMC que queira adicionar á configuração basta apenas copiar o advancedsettings.xml (e passwords.xml caso necessário) para a pasta userdata desse dispositivo. Não é necessário fazer rescanning ou re-importação. Se funciona em um dispositivo XBMC então deve funcionar em todos eles, uma vez que a base de dados é agora a mesma.

mysql_09

E está feito, esperamos que tenham gostado. Num próximo tutorial iremos ensinar como fazer uma pequena optimização e backup automático da base de dados MySQL.

 

Deixar uma resposta

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