KODI: assembling a convenient and functional media center for your home. Part 6. Synchronization of the library. MariaDB

Lyrical digression

For more than a year I have been using KODI as a media center. It all started with some basic things, but even from such functionality I was absolutely delighted. Watching TV, movies and TV shows no longer looks like some kind of quest, and all my family members also love KODI, and I can't even imagine how I could cope without it before.





But I became more and more immersed in its capabilities and gradually increased the functionality. I implemented seemingly simple things, but if you put all the small details together, you understand how comfortable, logical and thoughtful everything is, and most importantly - functional. This is the assessment I give to the entire final result. For some, this will not be the case at all, of course, because everyone has “their own markers”. But after the first publications, I received a lot of positive feedback from the audience and guests of Habr, and I realized that my experience was useful to someone. It's nice. Therefore, I want to continue.





If you missed the previous publications - be sure to look into them, perhaps there is something interesting for you. In a nutshell, we installed and configured the OS and KODI from scratch, set up torrent content viewing, YouTube, IPTV. We talked about managing from other devices, backups, traffic analysis, and even taught KODI to run retro games.





All previous publications:

KODI: assembling a convenient and functional media center for your home. Part 1

KODI: assembling a convenient and functional media center for the home. Part 2

KODI: assembling a convenient and functional media center for the home. Part 3. Retro games

KODI: assembling a convenient and functional media center for the home. Part 4. Archive IPTV

KODI: assembling a convenient and functional media center for the home. Part 5. Yandex.Music





Why was this all started?

, – . – KODI, – Tizen OS. , KODI . …





, , . . Raspberry Pi 3 , ( ).





, – KODI Kubuntu 20.04 , – LibreELEC .





«» :





  • IPTV. ilook PVR IPTV Simple Client. , .





  • -. .





, LibreELEC , , . IPTV Elementum .





, MariaDB ? , , , . , ?





KODI . MySQL-, . , Windows. , 24/7, – , .





, .





. MariaDB

Wiki KODI, , – . – , , , – . – .





@vyacheslavteplyakov , Wiki , , . .





:

  • MariaDB;





  • ;





  • ;





  • – NFS SMB, NTFS, ;





  • KODI .





– . , KODI Kubuntu 20.04.





MariaDB





sudo apt update
sudo apt install mariadb-server
      
      



C . , , , , , root .









sudo mysql_secure_installation
      
      



, MariaDB. , . , – :





root@kodi-pc:/# sudo mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
      
      



root . , ENTER.





Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n]
      
      



(N).





By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n]
      
      



(Y).





Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n]
      
      



root. (N).





By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n]
      
      



, (Y).





Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n]
      
      



. (Y).





, - . kodi kodi MariaDB





sudo mariadb
GRANT ALL ON *.* TO 'kodi'@'localhost' IDENTIFIED BY 'kodi' WITH GRANT OPTION;
      
      



kodi





GRANT ALL PRIVILEGES ON *.* TO kodi@'%' IDENTIFIED BY 'kodi';
      
      



,





FLUSH PRIVILEGES;
      
      



MariaDB ,





exit
      
      



, 3306 bind-address 0.0.0.0. MariaDB





sudo mcedit /etc/mysql/mariadb.conf.d/50-server.cnf
      
      







port = 3306
      
      



bind-address 0.0.0.0 ( 127.0.0.1)





bind-address = 0.0.0.0
      
      



MySQL-





sudo service mysql restart
      
      



, . . .





, MySQL Workbench.





:

Connection Method - Standart (TCP/IP)

Hostname – 192.168.0.50 ( )

Port – 3306

Username – kodi ( , )





«Test Connection», , – :





. «». . MariaDB , .





. KODI

, , . , - Elementum.





. , :

/mnt/kodi/library/Movies

/mnt/kodi/library/Shows





/mnt/kodi/library. samba





sudo mcedit /etc/samba/smb.conf
      
      



:





[library]
comment = library
path = /mnt/kodi/library/
browsable = yes
writable = yes
guest ok = yes
read only = no
force user = nobody
force group = nogroup
force create mode = 0777
force directory mode = 0777
      
      



samba





sudo /etc/init.d/smbd restart
      
      



.





! ! ().





«///» Movies Shows , « ». Kubuntu.





, KODI, .





KODI, . advancedsettings.xml (/home/_/.kodi/userdata/) :





<advancedsettings>
  <videodatabase>
    <type>mysql</type>
    <host>192.168.0.50</host>
    <port>3306</port>
    <user>kodi</user>
    <pass>kodi</pass>
  </videodatabase>
  <videolibrary>
    <importwatchedstate>true</importwatchedstate>
    <importresumepoint>true</importresumepoint>
  </videolibrary>
</advancedsettings>
      
      



advancedsettings.xml – . , :

Host – IP- MySQL-;

User – MariaDB;

Pass – MariaDB.





. . KODI , , - , KODI .





:

322

68

- 319

- 2254

- 380

(nfo strm) – 3826





10 . , . MySQL Workbench.





, KODI «MyVideos119» . , «Movie» - . , .





, . 100 . , , , .





, , :





  • advancedsettings – , ;





  • «///» , , ;





  • , Elementum – ( -). , () , . , .





:





/home/kodi/.kodi/userdata/advancedsettings.xml

/home/kodi/.kodi/userdata/sources.xml

/home/kodi/.kodi/userdata/addon_data/plugin.video.elementum/settings.xml

/home/kodi/.kodi/userdata/addon_data/script.elementum.burst/settings.xml





, KODI , , , , .





. , .





advancedsettings.xml musicdatabase





  <musicdatabase>
    <type>mysql</type>
    <host>192.168.0.50</host>
    <port>3306</port>
    <user>kodi</user>
    <pass>kodi</pass>
  </musicdatabase>
      
      



advancedsettings.xml , videolibrary . , - - .





, , , – . , - .





- - .





KODI!








All Articles