Traccar domyślnie korzysta z bazy danych H2. Jest ona zawarta w pakiecie instalacyjnym i konfiguruje się automatycznie w procesie instalacji. Twórcy Traccar nie zalecają jednak używanie bazy danych H2 do celów produkcyjnych. Do małych prywatnych projektów możesz zostawić bazę danych H2 i przejść do następnego wpisu. Jeśli jednak decydujesz się na migracji do bazy danych MySQL przejdź do poniższej instrukcji.
Informacje jak przeprowadzić migrację do bazy danych MySQL dostępne są zarówno na oficjalnej stronie Traccar jak i na forach internetowych. Instrukcję krok po kroku jak zainstalować bazę danych MySQL i zmianę konfiguracji serwera Traccar zamieszczam poniżej. Dla zachowania przejrzystości najpierw będą polecenia, a pod nimi zrzuty ekranu.
Otwórz terminal, zaktualizuj pakiety i w razie potrzeby dokonaj aktualizacji poleceniami:
sudo apt update
sudo apt upgrade
Zainstaluj serwer bazy danych MySQL MariaDB Server:
sudo apt install mariadb-server
Zabezpiecz serwer MariaDB:
sudo mysql_secure_installation
Po tej komendzie serwer zapyta o:
- Utworzenie hasła konta root dla serwera MySQL, wprowadź hasło i naciśnij enter.
- Switch to unix_socket autentification? – zabezpieczyłeś serwer hasłem dla konta root, więc wprowadź n jak no (nie) i naciśnij enter.
- Change the root password? – już masz zabezpieczone konto root, więc n i enter.
- Remove anonymous users? – usuń anonimowych użytkowników, więc wprowadź y jak yes (tak) i enter.
- Disallow root login remotely? – zabroń na zdalne logowanie root, więc y i enter.
- Remove test database…? – usuń testową bazę danych, więc y i enter.
- Reload privilege…? – przeładuj przywileje (reguły w bazie danych), więc y i enter.
Serwer bazy danych MariaDB został zainstalowany i zabezpieczony.
Zaloguj się do serwera bazy danych MySQL kontem root i wpisz hasło, które utworzyłeś w powyższych krokach; polecenia potwierdzaj naciskając klawisz Enter:
sudo mysql -u root -p
Dla celów instruktażowych moja baza danych to db1, użytkownik bazy danych to user1, hasło to password1. Użyj swoich danych (w miejscach db1, user1, password1) i pamiętaj żeby podmienić je w następnych krokach. Pamiętaj o kropkach, średnikach, apostrofach, itp. Gdy wprowadzisz poprawną komendę otrzymasz komunikat „Query OK,…”. Gdy pomylisz się zobaczysz „ERROR…”.
Utwórz bazę danych:
create database db1;
Zobacz czy baza danych została utworzona:
show databases;
Utwórz użytkownika bazy danych i hasło:
create user 'user1'@localhost identified by 'password1';
Zobacz czy użytkownik został utworzony:
select user from mysql.user;
Nadaj przywileje dla użytkownika:
grant all privileges on *.* to 'user1'@localhost identified by 'password1';
Nadaj przywileje dla bazy danych:
grant all privileges on db1.* to 'user1'@localhost;
Przeładuj przywileje:
flush privileges;
Zobacz przywileje nadane użytkownikowi:
show grants for user1@localhost;
Wyjdź z serwera bazy danych:
exit
Dobra robota, serwer bazy danych został zainstalowany i skonfigurowany.
Dane konfiguracyjne serwera Traccar zapisane są w pliku traccar.xml Jeśli instalowałeś Traccar według moich poleceń, plik konfiguracyjny powinien znajdować się w tych samym katalogu.
Poleceniem „nano” przejdź do edycji pliku traccar.xml:
sudo nano /opt/traccar/conf/traccar.xml
Zobaczysz zawartość pliku. Między znacznikami początkowymi <entry…> i końcowymi </entry> zobaczysz dane bazy danych H2. Musisz je skasować i wpisać nowe tak żeby wskazywały na bazę danych MySQL. Zobacz poniżej jak mają wyglądać nowe wiersze. Możesz je skopiować i wkleić lub przepisać. W długich wierszach nie używaj entera. Pamiętaj żeby podmienić db1, user1 i password1.
<entry key='database.driver'>com.mysql.cj.jdbc.Driver</entry>
<entry key='database.url'>jdbc:mysql://localhost:3306/db1?serverTimezone=UTC&useSSL=false&allowMultiQueries=true&autoReconnect=true&useUnicode=yes&characterEncoding=UTF-8&sessionVariables=sql_mode=''</entry>
<entry key='database.user'>user1</entry>
<entry key='database.password'>password1</entry>
Po wprowadzeniu nowych danych zapisz zmiany naciskając CTRL+o i potwierdź enterem. Wyjdź z edytora naciskając CTRL+x.
Uruchom ponownie Raspberry Pi, aby zastosować nową konfigurację. Wejdź na stronę serwera Traccar. Jeśli wszystkie zmiany zostały poprawnie wprowadzone zobaczysz rejestrację nowego użytkownika jak przy pierwszym uruchomieniu. Poprzednio Traccar korzystał z bazy danych H2, a teraz z MySQL, więc musisz na nowo utworzyć użytkownika.
Zrzuty ekranu z wykonanych czynności:









































