Hier wird kurz und knapp erklärt, wie man seine Kodi / XBMC Installationen mit einem Debian Server zentralisiert. Eine zentrale Datenbank für XBMC macht sinn, wenn mehrere Clients darauf zugreifen sollen.

Mysql Server

Erstmal installieren wir den Mysql-Server:

sudo apt-get install mysql-server mysql-client

Jetzt verbinden wir uns lokal auf den Mysql-Server:

mysql -u root -p

Hier wird das jeweilige Passwort aus der Installation von Mysql benötigt. Als nächstes erstellen wir den Mysql User xbmc mit dem Passwort xbmc der dann auf die Datenbank zugreifen wird, erteilen dem user die Rechte die Datenbanken auszulesen und zu beschreiben.

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

Die Tabellen legt sich der Xbmc Client selbst an!

Zum test lassen wir uns die Datenbanken- und Userliste ausgeben:

SHOW DATABASES; SHOW USERS;

Nun müssen wir noch die Konfiguration des Mysql-Servers bearbeiten, damit er auch auf Anfragen aus dem LAN reagiert und diese nicht ignoriert.

sudo nano /etc/mysql/my.cnf

Hier kommentieren wir die Stelle bind-address aus:

#bind-address = 127.0.0.1;

Einrichtung eines Kodi / XBMC Clients

Kodi / XBMC Datenbank

Damit das XBMC auf den zentralen SQL-Server zugreift muss noch die XBMC-Config editiert werden.

sudo nano /home/xbmc/.xbmc/userdata/advancedsettings.xml

Folgendes muss eingefügt werden:

<videodatabase>
   <type>mysql</type>
   <host>192.168.0.253</host>
  <port>3306</port>
  <user>xbmc</user>
  <pass>xbmc</pass>
</videodatabase>
 <musicdatabase>
   <type>mysql</type>
  <host>192.168.0.253</host>
  <port>3306</port>
  <user>xbmc</user>
  <pass>xbmc</pass>
</musicdatabase>

Hier als Beispiel, meine ~/.xbmc/userdata/dvancedsettings.xml:

<advancedsettings>
 <videodatabase>
   <type>mysql</type>
   <host>192.168.0.253</host>
   <port>3306</port>
   <user>xbmc</user>
   <pass>xbmc</pass>
 </videodatabase>
 <musicdatabase>
   <type>mysql</type>
   <host>192.168.0.253</host>
   <port>3306</port>
   <user>xbmc</user>
   <pass>xbmc</pass>
 </musicdatabase>
 <videolibrary>
   <importwatchedstate>true</importwatchedstate>
 </videolibrary>
</advancedsettings>
Das importwatchedstate ( Zeile 16 – 18 ) sorgt dafür das auch die Abspielzeiten in der SQL gespeichert werden.

Scrapen

Es muss nur von einem Client gescrapt werden. Die Die neuen Datenbankeinträge sind dann auch sofort bei den anderen Clients sichtbar. Es muss allerdings gewährleistet sein, dass die Pfade zu den Medien auf allen Clients gleich sind.


1 Kommentar

Avatar-Foto

Shojo · 12. Juni 2014 um 20:10

Dazu natürlich noch das passende Programm ;o)
https://www.bastelbunker.de/xbmc-database-viewer/

Schreibe einen Kommentar

Avatar-Platzhalter

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.