Skip to content

Jak zsynchronizować bibliotekę Kodi na wielu urządzeniach z MySQL?

31 de lipiec de 2021
kodi sync

Kodi jest nadal jedną z najpotężniejszych aplikacji centrum multimedialnego i działa na wszystkim, od potężnych komputerów multimedialnych po małe Raspberry Pis. Ale jeśli masz w domu kilka telewizorów, czy nie byłoby miło, gdyby wszystkie pozostały zsynchronizowane?

Domyślnie, jeśli masz wiele maszyn Kodi, nie będą się one rozpoznawać. Odcinki obejrzane na jednym telewizorze nie będą wyświetlane jako „oglądane” na innym. Czy nie byłoby jednak miło, gdyby twoje pudełko Kodi w sypialni wiedziało, co oglądałeś w salonie i na odwrót? Czy byłoby miło, gdybyś mógł przestać oglądać film w salonie i wznowić oglądanie dokładnie tam, gdzie skończyłeś w innym miejscu w domu?

Cóż, to możliwe — wymaga to tylko trochę konfiguracji. Oto jak to zrobić.

Co będziesz potrzebował

Rdzeniem magii synchronizacji, którą zamierzamy podjąć, jest baza danych MySQL. Nie panikuj, jeśli nigdy wcześniej go nie używałeś! To wymaga trochę wiedzy technicznej, ale jesteśmy tutaj, aby poprowadzić Cię na każdym kroku. Jeśli będziesz uważnie śledzić, nie powinieneś mieć żadnych problemów.

Zamierzamy zainstalować bezpłatną wersję serwera MySQL, a następnie poinstruować wszystkie komputery Kodi, aby używały bazy danych na tym serwerze jako biblioteki (zamiast oddzielnej bazy danych na każdym komputerze). Od tego momentu, gdy Kodi sprawdza, czy widziałeś konkretny odcinek programu telewizyjnego lub film, wstrzymałeś multimedia lub ustawiłeś zakładkę, nie będzie tylko odpowiadał za konkretne centrum multimedialne, przed którym stoisz , ale dla wszystkich centrów medialnych w domu.

Do tego projektu potrzebne będą:

  • Więcej niż jedno centrum medialne z Kodi zainstalowane (wszystkie będą musiały być tą samą podstawową wersją Kodi — w tym przewodniku będziemy używać wersji 17 „Krypton”).
  • Bezpłatna kopia serwera społeczności MySQL —wiki Kodi zaleca chwytanie wersja 5.5 zamiast nowszej wersji 5.7, więc tego użyjemy w tym samouczku.
  • Zawsze włączony lub prawie zawsze włączony komputer, na którym można uruchomić serwer MySQL.


Serwer MySQL można zainstalować na dowolnym komputerze, który będzie stale włączony podczas korzystania z centrów multimedialnych. W naszym przypadku zamierzamy zainstalować MySQL na tym samym zawsze dostępnym serwerze domowym, na którym przechowujemy nasze filmy i programy telewizyjne – w ten sposób za każdym razem, gdy media są dostępne dla Kodi, podobnie jak baza danych.

Krok pierwszy: Zainstaluj serwer MySQL

W tym samouczku zainstalujemy MySQL na serwerze multimediów z systemem Windows 10. Nasze instrukcje instalacji powinny pasować do dowolnej wersji systemu Windows. W przypadku innych systemów operacyjnych zapoznaj się z Podręcznik MySQL 5.5.

Instalacja MySQL jest prosta. Wystarczy pobrać aplikację do instalacji serwera i uruchomić ją. Zaakceptuj umowę licencyjną i instalację „Typową”. Po zakończeniu upewnij się, że opcja „Uruchom kreator konfiguracji instancji MySQL” jest zaznaczona i kliknij przycisk Zakończ.

Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Kreator konfiguracji MySQL zostanie uruchomiony i wyświetli opcję wyboru pomiędzy konfiguracją szczegółową a standardową. Wybierz Konfiguracja standardowa i kliknij Dalej.

1627749466 12 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Na następnym ekranie zaznacz „Zainstaluj jako usługę Windows”, nazwij ją MySQL – lub, jeśli używasz wielu serwerów MySQL w jakimś celu, nadaj mu unikalną nazwę – i zaznacz „Uruchom serwer MySQL automatycznie”, aby upewnić się, że MySQL serwer jest zawsze włączony, kiedy go potrzebujesz.

1627749467 83 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Na następnym ekranie sprawdź Modyfikuj ustawienia zabezpieczeń, podłącz nowe hasło roota i zaznacz Włącz dostęp roota z komputerów zdalnych.

1627749467 39 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL


Przejdź do ostatniego ekranu i naciśnij Execute, aby kreator skonfigurował wszystko z określonymi przez Ciebie parametrami. Kiedy skończysz, przejdź do kroku drugiego.

Krok drugi: skonfiguruj swojego użytkownika MySQL

Następnie nadszedł czas, aby utworzyć konto użytkownika na serwerze MySQL dla swoich centrów multimedialnych. Potrzebujemy do tego trochę pracy z wierszem poleceń. Aby rozpocząć, uruchom klienta wiersza poleceń MySQL — powinieneś mieć dla niego wpis w menu Start.

1627749467 675 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Po otwarciu konsoli wprowadź hasło utworzone w poprzednim kroku. Znajdziesz się wtedy w znaku zachęty serwera MySQL.

1627749467 66 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

W wierszu polecenia wpisz następujące polecenia, po każdym naciśnięciu klawisza Enter, aby utworzyć użytkownika na serwerze bazy danych:

CREATE USER 'kodi’ IDENTIFIED BY 'kodi’;

GRANT ALL ON *.* TO 'kodi’;

flush privileges;

Pierwsza część pierwszego polecenia tworzy użytkownika, druga część tworzy hasło. Chociaż identyczne loginy/hasła są generalnie ogromnym zabezpieczeniem, nie, w tym przypadku wygodnie jest używać pasującej pary ze względu na prostotę. Baza danych MySQL na prywatnym serwerze, która śledzi, które odcinki Dextera oglądałeś, nie jest instalacją wysokiego ryzyka.

1627749467 585 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

To wszystko, co musisz na razie zrobić w wierszu poleceń — chociaż zalecamy pozostawienie otwartego wiersza polecenia dla serwera MySQL, ponieważ zamierzamy sprawdzić później i zerknąć do baz danych, gdy Kodi utworzy je dla nas.


Przed przystąpieniem do konfiguracji Kodi mamy jeszcze jedno ostatnie zadanie. Upewnij się, że Port 3306 (port serwera MySQL) jest otwarty na zaporze maszyny, na której zainstalowałeś MySQL. Domyślnie instalator Windows powinnam otwiera port automatycznie, ale widzieliśmy sytuacje, w których tak się nie stało. Najłatwiejszym sposobem otwarcia portu jest użycie polecenia PowerShell. Wyszukaj PowerShell w menu Start, a następnie kliknij go prawym przyciskiem myszy i wybierz „Uruchom jako administrator”.

1627749467 130 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Następnie uruchom następujące polecenie i naciśnij Enter:

New-NetFirewallRule -DisplayName „Allow inbound TCP Port 3306 for MySQL” -Direction inbound –LocalPort 3306 -Protocol TCP -Action Allow

Jeśli polecenie się powiodło, jak pokazano poniżej, powinieneś kontynuować.

1627749468 316 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Krok trzeci: Utwórz kopię zapasową bieżącej biblioteki Kodi (opcjonalnie)

Domyślnie Kodi używa wewnętrznej bazy danych SQLite. Aby Kodi mógł skutecznie komunikować się w sieci domowej, musimy poinstruować go, aby korzystał z zewnętrznej bazy danych MySQL. Zanim jednak przejdziemy do tego kroku, musisz podjąć decyzję wykonawczą: możesz wykonać kopię zapasową bieżącej biblioteki i przywrócić ją później (co może być czasem trudne) lub możesz zacząć od nowa z nową biblioteką (co jest łatwe, ale będzie wymagało ponownego ustawienia stanu oglądania w swoich programach i ewentualnie ponownego wyboru grafiki, jeśli nie przechowujesz jej lokalnie).

Jeśli chcesz wykonać kopię zapasową bieżącej biblioteki, możesz to zrobić z poziomu Kodi. Zrób to tylko z jednej maszyny — wybierz maszynę z najbardziej aktualnymi bibliotekami. Otwórz Kodi i przejdź do Ustawienia> Ustawienia multimediów> Eksportuj bibliotekę. (Jeśli nie widzisz tych opcji, upewnij się, że twoje menu są ustawione na „Zaawansowane” lub „Ekspert” w Kodi.)

1627749468 725 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Bibliotekę możesz wyeksportować jako pojedynczy plik lub jako osobne pliki. Pojedynczy plik pozwoli Ci umieścić kopię zapasową w jednym miejscu, podczas gdy wiele plików rozproszy dodatkowe pliki JPG i NFO do folderów multimedialnych — jest to bardziej niezawodne, ale dość zagracone. Wybierz dowolną opcję.

1627749468 310 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Po utworzeniu kopii zapasowej biblioteki przejdź do następnego kroku.

Krok czwarty: skonfiguruj Kodi do korzystania z nowego serwera MySQL

Po utworzeniu kopii zapasowej biblioteki (lub jeśli zdecydujesz się nie martwić o to i zacząć od zera), możesz wskazać Kodi na swój serwer MySQL. Musisz wykonać ten krok na każdym komputerze z Kodi, ale zalecamy skonfigurowanie go najpierw na jednym komputerze – prawdopodobnie na tym samym komputerze, z którego utworzono kopię zapasową biblioteki, jeśli zdecydujesz się to zrobić.


Aby skierować Kodi do MySQL, musimy edytować plik advancedsettings.xml Kodi. Domyślnie ten plik nie istnieje (chociaż możliwe jest, że podczas procesu instalacji Kodi utworzył taki, aby poradzić sobie z określonymi problemami konfiguracyjnymi). Jeśli plik advancedsettings.xml istnieje, będzie znajdować się w następującej lokalizacji, w zależności od systemu operacyjnego:

  • Okna: C:Użytkownicy[username]AppDataRoamingKodiuserdata
  • Linux i inne wersje Kodi . na żywo: $HOME/.kodi/userdata
  • System operacyjny Mac: /Użytkownicy/[username]/Biblioteka/Obsługa aplikacji/Kodi/dane użytkownika

Sprawdź w tym folderze. Czy jest tam plik advancedsettings.xml? TAk? Otwórz to. Nie? Musisz otworzyć edytor tekstu i go utworzyć. Niezależnie od tego, czy edytujesz istniejący, czy tworzysz nowy, wytnij i wklej następujący tekst do pliku (uwaga: jeśli w Twoim pliku advancedsettings.xml są już jakieś wpisy, pozostaw je na miejscu i umieść te wartości w prawidłowe sekcje):



mysql
192.168.1.10

3306 kodi

kodi


mysql
192.168.1.10

3306 kodi

kodi

Edytuj powyższy tekst, aby odzwierciedlić adres IP twojego serwera w twojej sieci LAN oraz nazwę użytkownika/hasło bazy danych MySQL (w naszym przykładzie był to po prostu kodi/kodi). Ta podstawowa konfiguracja powinna zsynchronizować biblioteki wideo i muzyki, ale możesz też zsynchronizuj inne części Kodi, jak również zsynchronizuj wiele profili z plakietkąjeśli ich używasz.

1627749468 801 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Gdy plik advancedsettings.xml będzie gotowy do użycia, otwórz Kodi na tym komputerze. Musisz albo zaimportować swoją bibliotekę (z Ustawienia> Ustawienia multimediów> Importuj bibliotekę), albo ponownie przeskanować źródła, aby rozpocząć wypełnianie bazy danych MySQL od podstaw. Zrób to teraz.

Kiedy to zrobisz, a twoja biblioteka wróci na miejsce, możesz przeskoczyć do wiersza poleceń MySQL i sprawdzić, czy Kodi utworzył i zapełnił bazy danych. W wierszu komentarza mySQL uruchom:

SHOW DATABASES;


Wygeneruje wszystkie bazy danych znajdujące się obecnie na serwerze MySQL. Powinieneś zobaczyć przynajmniej następujące bazy danych: information_schema , mysql , oraz performance_scheme , ponieważ są one częścią samej instalacji MySQL. Domyślne nazwy baz danych dla Kodi to myvideos107 oraz mymusic60 (w naszym przykładzie nie używamy bazy danych dla muzyki, więc na liście pojawia się tylko nasza baza danych wideo).

1627749468 105 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Jeśli kiedykolwiek będziesz musiał usunąć bazę danych z serwera MySQL, możesz użyć następującego polecenia:

DROP DATABASE databasename;

Puste bazy danych zajmują niewiele miejsca i nie wpływają negatywnie na wydajność systemu synchronizacji, ale dobrze jest utrzymywać porządek.

Jeśli Twoje bazy danych tam są, to dobry początek, ale warto wykonać proste sprawdzenie, czy Kodi prawidłowo zapełnia bazy danych. Z wiersza poleceń MySQL uruchom następujące polecenia (zastępując databasename z nazwą Twojej bazy danych wideo):

SELECT COUNT(*) from databasename.movie;

SELECT COUNT(*) from databasename.tvshow;

Każde zapytanie zwróci odpowiednio całkowitą liczbę filmów i programów telewizyjnych zawartych w Twojej bibliotece (zgodnie z bazą danych MySQL). Jak widać, w naszym przypadku jest to rozpoznanie naszej biblioteki ze 182 filmami i 43 programami telewizyjnymi:

1627749468 581 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Jeśli liczba wpisów wynosi zero, gdzieś po linii pojawia się problem. Oto krótka lista kontrolna rozwiązywania typowych błędów:

  • Czy skopiowałeś plik advancedsettings.xml na swój komputer przed uruchomieniem Kodi i ponownym zapełnieniem biblioteki?
  • Czy użyłeś polecenia GRANT ALL, aby dać kontu Kodi dostęp do serwera MySQL?
  • Czy otworzyłeś port 3306 na zaporze hosta MySQL?
  • Czy Twoje źródła są prawidłowe i możliwe do przeskanowania po usunięciu pliku advancedsettings.xml i przywróceniu lokalnej bazy danych? Jeśli nie, będziesz musiał rozwiązać problemy ze swoimi źródłami niezależnie od problemów z MySQL.


Jeśli wszystko wygląda dobrze i twoje SELECT COUNT zapytanie się kończy, co oznacza, że ​​możesz zacząć korzystać z synchronizacji cross-media-center.

Krok piąty: powtórz krok czwarty dla innych maszyn Kodi

Trudna część się skończyła! Teraz wystarczy przejść do każdej z pozostałych maszyn Kodi i umieścić ten sam tekst w pliku advancedsettings.xml, który zrobiłeś w kroku czwartym. Gdy to zrobisz (i ponownie uruchomisz Kodi na tym komputerze), powinno natychmiast pobrać informacje o twojej bibliotece z serwera MySQL (zamiast konieczności ponownego wypełnienia biblioteki samodzielnie).

Na niektórych urządzeniach, takich jak Raspberry Pis z systemem LibreELEC, musisz przejść do ustawień sieci i upewnić się, że opcja „Poczekaj na sieć przed uruchomieniem Kodi” jest włączona, aby ta funkcja działała poprawnie.

Ponadto, jeśli Twoje filmy znajdują się w udziale, który wymaga hasła, a po skonfigurowaniu pliku advancedsettings.xml na nowym komputerze pojawi się błąd, może być konieczne przejście do widoku „Pliki”, kliknięcie „Dodaj filmy”, i uzyskaj dostęp do folderu w udziale, aby Kodi poprosił Cię o podanie poświadczeń. Następnie możesz kliknąć „Anuluj” lub dodać źródło jako zawierające typ nośnika „Brak”.

1627749468 925 Jak zsynchronizowac biblioteke Kodi na wielu urzadzeniach z MySQL

Następnie spróbuj obejrzeć film na jednym pudełku. Powinieneś zauważyć, że kiedy skończysz, pokaże się jako „oglądany” również na innych urządzeniach Kodi! Możesz nawet zatrzymać wideo na jednym komputerze, a następnie wznowić w miejscu, w którym zostało przerwane, po prostu wybierając go do odtwarzania na innym komputerze. Ciesz się nową synchronizacją biblioteki w całym domu!

Źródło obrazu: FLIRC Kodi Edition Raspberry Pi obudowa

Czy ten post był pomocny?