Centralizar la base de datos de Kodi en un NAS Synology – Parte 2

Base de datos de Kodi en un NAS. Parte 2

Seguimos con el tutorial para trasladar la base de datos de Kodi a nuestro NAS Synology. La configuración del NAS la puedes ver en la primera parte de este tutorial.

Kodi cuenta con multitud de opciones de configuración en sus menús, pero hay una serie de parámetros que solo se pueden modificar si añadimos un archivo llamado advancedsettings.xml. En este archivo podemos incluir instrucciones que de otra manera no podriamos añadir, entre ellas el nuevo destino de la base de datos.

Así que lo primero será crear ese archivo en el ordenador. Puedes usar el Bloc de notas de Windows o el Textedit de Mac (no te valdrá Word o cualquier otro editor de texto complejo que enriquezca el texto) para crear un archivo de texto simple con el nombre “advancedsettings” y luego cambiar la extensión a xml. Pero te aconsejo que uses un editor de código como el Notepad++ en Windows o el Atom (tanto para Windows como para Mac). Son gratuitos y muy fáciles de usar sin necesidad de tener ninguna idea de programación.

Esto es lo que tiene que incluir tu archivo:

<advancedsettings>
<videodatabase>
<type>mysql</type>
<host>X1</host>
<port>3306</port>
<user>X2</user>
<pass>X3</pass>
<name>X4</name>
</videodatabase>
<musicdatabase>
<type>mysql</type>
<host>X1</host>
<port>3306</port>
<user>X2</user>
<pass>X3</pass>
<name>X5</name>
</musicdatabase>
</advancedsettings>

Los lenguajes de programación se componen generalmente de entiquetas de apertura y de cierre, en este caso entre los símbolos «<” y «>” para las de apertura, y «</” y «>” para las de cierre.

Si te fijas un poco verás que hay una etiqueta «advancedsettings» que engloba todo el código que hemos puesto (<advancedsettings> la de inicio y </advancedsettings> la de cierre). Luego encontrarás una parte de código que se refiere a la base de datos de la sección de video y otra a la de música («videodatabase» y «audiodatabase», respectivamente). No es mi intención explicar nada de programación pero sí es necesario que te asegures de que cualquier etiqueta de apertura que pongas tiene que tener su equivalente de cierre. Si lo prefieres copia el código de arriba y símplemente sustituye las X por los datos de tu instalación:

  • X1: se refiere a la IP de tu NAS. Ni que decir tiene que tu NAS tiene que tener una dirección IP fija que no cambie constantemente. Pon aquí esa IP. Suponemos como ejemplo que es la 192.168.1.150
  • X2: aquí tienes que poner el nombre de usuario que creamos en el NAS con phpMyAdmin anteriormente (mira la 1ª parte de este tutorial). Si has seguido mi ejemplo al pie de la letra, será “kodi” (sin comillas).
  • X3: el password que le dimos al usuario anterior. En el ejemplo también “kodi”.
  • X4: este campo es voluntario y se refiere al nombre de la base de datos que va a crear Kodi. Si no lo indicas (y eliminas esa línea entera incluyendo las etiquetas <name> y </name>), Kodi la llamará “MyVideos_?”. La interrogación corresponderá a un número asociado a la versión de Kodi que estés usando (Jarvis, Krypton, Leia…). Te aconsejo que lo indiques porque no te cuesta nada y te puede servir si en un futuro creas varios perfiles en kodi con diferentes bases de datos. Por ejemplo podrías poner algo como “kodivideo” (kodi igualmente añadirá el número de la versión a ese nombre que has puesto).

Y lo mismo tendrás que hacer con la base de datos de tu música. Kodi es un reproductor multimedia que permite gestionar video, audio e incluso fotos, y para cada tipo de contenido crea su propia base de datos. Yo tan solo lo uso para video pero incluyo también las instrucciones necesarias para la base de datos del audio por si en un futuro lo necesitase. El único dato diferente con respecto a la sección de video será el nombre (X5). Llámala por ejemplo «kodiaudio».

El archivo quedaría así:

<advancedsettings>
<videodatabase>
<type>mysql</type>
<host>192.168.1.150</host>
<port>3306</port>
<user>kodi</user>
<pass>kodi</pass>
<name>kodivideo</name>
</videodatabase>
<musicdatabase>
<type>mysql</type>
<host>192.168.1.150</host>
<port>3306</port>
<user>kodi</user>
<pass>kodi</pass>
<name>kodiaudio</name>
</musicdatabase>
</advancedsettings>

 

Ya lo tienes. Tan solo necesitas grabar ese archivo en cada uno de tus dispositivos donde tengas instalado Kodi. El directorio en el que hay que grabarlo es «Userdata» (junto a los archivos guisettings.xml, sources.xml…). Si no sabes conectarte a Kodi desde el ordenador, puedes echar un vistazo al tutorial sobre el uso del Gestor de archivos de Kodi, y verás donde encontrar esa carpeta (su acceso directo es el «Directorio del perfil») y como grabar el archivo en ella usando un pendrive, por ejemplo.

En la captura siguiente puedes ver el archivo advancedsettings.xml ya dentro de la carpeta Userdata de una Raspberry Pi.

Interior de la carpeta Userdata de kodi

Nota: si además del perfil por defecto que trae Kodi (Master User, se llama) has creado alguno nuevo, el archivo advancedsettings tendrás que meterlo en la carpeta de ese perfil, que encontrarás dentro del directorio «profiles» y que corresponderá a la carpeta profiles/nombredelperfil/

Ya está todo hecho. Ahora tendrás que reiniciar Kodi en alguno de los aparatos para que lea el archivo advancedsetting.xml que acabas de incluir (Kodi sólo lee ese archivo al arrancar).

Verás que tardará un poco más en arrancar porque tiene que conectarse al NAS por primera vez, crear una base de datos nueva y trasladar los datos que tenía en la base de datos local.

Recuerda también reiniciar el resto de aparatos, aunque en esta ocasión el arranque será mucho más rápido porque la base de datos ya estará creada.

De ahora en adelante, cada vez que cambies una imagen en cualquiera de tus dispositivos, se reflejará también en el resto. Podrás empezar a reproducir una película en cualquiera de ellos y continuar desde el punto donde la dejaste en otro.

28 comentarios en «Centralizar la base de datos de Kodi en un NAS Synology – Parte 2»

  1. Hola, vaya por delante que mis conocimientos informáticos a este nivel son nulos, gracias por tu tiempo y ayuda para explicarlo todo tan bien. Tengo kodi instalado en un Mi box TV(android TV) con toda la colección, tengo las fuentes (peliculas y series) en un NAS ds215j, bien direccionadas y funcionando. Me interesa compartir esa colección con otros dispositivos (tablet, portatil,PC…). Sigo el tutorial al pie de la letra y cuando vuelvo a abrir kodi para que cargue el advancedsetings.xml la colección ha desaparecido.Qué estoy haciendo mal? Realmente lo que hacemos con ésto (si me funcionase) es copiar mi colección al NAS y al poner el advancedsettings en todos dispositivos «llamaría» a la colección que está en el NAS? Entonces se podría borrar la colección del Mi box TV porque la colección ya estaría en al NAS? me está ocupando mas de 2 GB y el Mi box no tiene mucha capacidad. Hay que volver a redireccionar las fuentes en todos los dispositivos?
    Lo siento, estoy un poco perdido
    Gracias de antemano

    1. Hola Zervera,
      Efectivamente lo que haces con el advancedsettings es decirle a Kodi: a partir de ahora, la base de datos la vas a guardar en el NAS, no en Mi Box TV.
      Pero tienes que tener claro que la base de datos es una cosa y otra muy distinta el caché de Kodi. Las imágenes de tu colección (lo que realmente ocupa espacio) se guardan en el dispositivo (si sabes entrar (hay otro tutorial para ello) mira lo que ocupa la carpeta thumbnails.
      Dicho esto, para saber si la base de datos efectivamente se está guardando en el NAS, deberías volver a abrir phpmyadmin y ver si se han creado las dos bases de datos (la de video y la de música). Sie es así, pincha sobre la de video y abre alguna de sus tablas para ver si está vacía.
      Si te digo la verdad, no tengo claro de si al hacerlo con una base de datos ya creada (como es tu caso) te la traslada al NAS o empieza de cero. Si así fuera, tendrías que actualizarla otra vez (escrapear toda tu colección). No sé si eso sería mucho problema o no. Piensa que solo es una vez porque después todos tus dispositivo usarian esa colección. De nuevo, si ese es el caso, yo antes de hacerlo borraría todo el contenido de la carpeta «thumbnails» para liberar espacio. Al actualizar la colección se volverá a llenar pero eliminas todo el caché inútil (portadas de pelis que hayas borrado, etc.).
      No sé si me he explicado bien. Pregunta todo lo que quieras.

      1. Muchas gracias. Es una faena lo de que no la traslade y lo del caché, hay que hacerla de nuevo, pero merece la pena, como dices es solo una vez y tienes todos los dispositivos con la misma colección. Una vez que pierdes un rato en comprobar la colección todo funcionando. Gracias otra vez

    1. Dime con más detalle cual es el problema que tienes. Si después de hacerlo todo has abierto Kodi, la base de datos ya tendría que estar creada. Entrando de nuevo en phpmyadmin debería aparecerte con el nombre que le hayas puesto en el archivo advancedsettings.
      Pero como digo, tendrías que explicar con más detalle el problema que tienes.

  2. He seguido todos los pasos, de synology y luego he creado el adavancedsettings en kodi, he abierto kodi y escaneado una de las fuentes. Pero en php my admin no veo que se haya creado nada. Y en ptro equipo con ltro kodi y el advanced settimgs tambien cambiado… no aoarece nada en la coleccion

    1. Me va a ser difícil ayudarte así, pero empieza por verificar todo esto:
      1 – Has reiniciado los equipos Kodi (el archivo advancedsettings sólo se lee al arrancar el perfil). De no haberlo hecho, la base de datos seguiría estando en el propio dispositivo. Cuando escaneas una carpeta, acceden tus dispositivos al exterior (ves la iformación de las nuevas películas)?
      2 – Has creado correctamente el usuario y contraseña en phpmyadmin y son los mismos que has puesto en advancedsettings
      3 – Abre phpmyadmin y verifica que no hay ninguna base de datos creada por kodi (la columna izquierda de la pantalla). Si este fuera el caso, el problema estaría en el punto anterior.
      Si en cambio sí hay alguna base de datos creada, el punto 2 podriamos descartarlo. Habría que verificar si la base de datos puede haberse corrompido. Yo la borraría y volvería a encender algundo de los aparatos con Kodi para que volviese a generarla.

  3. Si, he reiniciado los equipos, y si acceden añ contenido al escanear la fuente. Genere bien el usuario con las mismas claves ( kodi/kodi ) y em el advancedsettings que pusiste solo modifique la ip a la de mi nas, que es fija.

    En phpmy admin si voy a bases de datos me aparecen estas 3

    -information schema
    -mysql
    -performance schema

  4. No queria molestar por telefono, acabo de conseguirlo. El problema esta en que en Mac, existen dos carpetas userdata de Kodi y estaba en la incorrecta

  5. Buenas, algo tarde pero a ver si tengo suerte.

    Es posible EVITAR que kodi añada ese numero al final del nombre de la base de datos?

    Salu2.

  6. Muchas gracias, ha sido muy útil, no sabía que se podía hacer esto. EL advancedsettings no lo encuentro en esa carpeta en la versión de Kodi Windows 10 ¿Dónde se alojan los ficheros de las librerías en el nas?¿Se puede hacer esto mismo con el resto de la carpeta userdata para tener los mismos addons, configuraciones, skins, etc? GRACIAS DE NUEVO!

    1. El advancedsettings es un archivo que no existe por defecto, tienes que crearlo tú (y siempre está en la carpeta userdata).
      Efectivamente se puede hacer exactamente lo mismo con el resto de perfiles (si es eso lo que me preguntas). Lo addons, una vez instalados en un perfil, quedan instalados en los demás (aunque aparecerán desactivados).

  7. En la red local va de lujo. Muchas gracias. ¿Pero sería posible acceder desde fuera de la red? El acceso a los videos y audios lo consigo, pero a la coleccion compartida en la red local, ni de coña…

    1. Hola Juan Carlos,
      Si te refieres a la base de datos, diría que no. La ruta de acceso desde la red local no es la misma que desde fuera, así que entiendo que a la fuerza las bases de datos han de ser diferentes.
      Pero yo tengo varios dispositivos en mi red local (compartiendo bases de datos) y otros tantos que acceden desde fuera (WebDAV) con su propia base de datos cada uno y no es mayor problema.

  8. Buenas tardes.

    Me interesa mucho todo lo que he visto en este artículo y estoy pensando en aplicarlo en mi NAS, pero mi Synology no dispone de la versión 5 de mariaDB, solo la 10, voy a intentarlo con ella, pero no se si funcionará igual de bien, ¿¿lo has podido probar tu antes??

    1. Hola José Miguel,

      Actualmente ya sólo tengo la versión 10 de MariaDB instalada y lógicamente se sigue pudiendo usar para centralizar la base de datos de Kodi.
      Eso sí, tendrás que pasar la base de datos de la versión 5 a la 10 si ya la tenías centralizada.

      1. Muchas gracias por contestar.

        No la tenía todavía centralizada, estoy todavía usando PLEX como servidor y el plug-in de KODI para acceder, pero no termina de gustarme, estoy mucho más cómodo directamente con KODI sólo. A ver si este fin de semana me puedo poner.

        Un saludo!!

  9. Hola. LLevaba buscando esta información bastante tiempo. He seguido tu manual totalmente y he conseguido que funcione pero sólo a medias. La base de datos me la crea y consigo ver la información e los vídeos, pero creo que no la mueve al NAS Synology por lo siguiente: se me llena la memoria donde tengo instalado KODI, y era justo eso lo que quería evitar.
    ¿Podrías indicar donde dentro del NAS Synology donde debería estar la base de datos creada para ver si está allí?

    Gracias

    1. La base de datos no es lo que ocupa espacio, es el caché de Kodi. Y eso no lo vas a evitar centralizando la base de datos.
      Si arrastras mucha información de películas que ya has borrado, puedes borrar ese caché (hay un archivo .db pero ahora no tengo a mano Kodi para darte el nombre) para que se regenere de nuevo.

      1. Tuve problemas al escribir los datos del user (en la base de datos lo puse en minúscula y en MariaDB en mayúscula) y por eso se me llenaba la memoria y se me bloqueaba el programa. Estaba creando una base de datos de videos de muchos archivos (pero no borro nunca nada de ellos, aunque excepcionalmente les cambio el nombre). Con lo cual el tamaño de la caché es el que tiene que tener. De hecho mi idea de tener la base de datos en el NAS era para descargar la memoria del KODI (que uso desde un Nvidia Shield). Así que no se si la solución esta es la mejor o quizás debería ponerle al Nvidia un pendrive para aumentar la memoria.

        Gracias

    1. Claro que sí.
      Cada versión de Kodi usa su propia versión de base de datos. No podrás centralizarla (en realidad podrás centralizar cada una de las versiones pero sin ninguna utilidad).

Responder a AdminCancelar respuesta