Baza danych — SQLite, MariaDB, kopie zapasowe i w chmurze
TaxMachine wspiera SQLite (lokalnie) i MariaDB/MySQL (sieć/chmura), oferuje kreatory kopii i przywracania, konwersję między silnikami oraz opcjonalne szyfrowane kopie w chmurze.
Opublikowano
Co potrafi (TL;DR)
TaxMachine obsługuje cztery silniki bazodanowe: SQLite (domyślny, lokalny), MySQL i MariaDB (jeden sterownik), Microsoft SQL Server oraz PostgreSQL. W produkcji używa się SQLite dla pojedynczego stanowiska i MariaDB dla pracy wielostanowiskowej oraz bazy na zdalnym serwerze (VPS, chmura). Program ma wbudowane kreatory tworzenia i przywracania kopii, narzędzie konwersji baz między silnikami oraz automatyczną aktualizację schematu po podniesieniu wersji. Opcjonalna, płatna usługa Kopie w chmurze wysyła zaszyfrowane (AES-256, hasło tylko po stronie klienta) archiwum kopii na serwery TaxMachine.
Wspierane silniki bazodanowe
- SQLite — domyślny, lokalny plik
.db. Tryb WAL domyślnie włączony. - MariaDB / MySQL — jeden sterownik, ten sam protokół. Port domyślny
3306. - Microsoft SQL Server.
- PostgreSQL.
W oknach kopii i przywracania udostępniamy użytkownikowi SQLite oraz MariaDB/MySQL. SQL Server i PostgreSQL są dostępne w narzędziu konwersji do migracji „w jedną stronę" (np. z zewnętrznego SQL Server do bazy SQLite w TaxMachine).
Struktura bazy
Domyślny katalog danych: C:\Users\Public\Documents\TaxMachine\
(dla programu pity.exe katalog PITy\). Pliki:
LocalDB.db— główna baza: faktury, księgowania, ewidencje, dokumenty, ustawienia firmy. Format SQLite. Towarzyszący plikLocalDB.db-wal(write-ahead log) musi być kopiowany razem z głównym.db, w przeciwnym razie baza może zostać uszkodzona.ldb.db— baza licencji i wbudowanych słowników. Występują wariantyldb.db-freeildb.db-prodla różnych poziomów licencji.cfg.db— konfiguracja programu (lista baz, ustawienia stanowiska); otwierana jako pierwsza przy starcie programu.ap.db— log operacji modułu Automat Płatnika.
W katalogu znajduje się też podkatalog kopie\ używany domyślnie
do zapisu lokalnych kopii. Lokalizację można zmienić w opcjach programu.
Praca wielostanowiskowa (MariaDB)
Bazy SQLite nie wolno umieszczać na dysku sieciowym ani udostępniać kilku komputerom — równoczesne otwarcie z dwóch instancji programu grozi nieodwracalnym uszkodzeniem pliku. Do pracy 2+ użytkowników jednocześnie na tych samych danych służy serwer MariaDB (rekomendowany) lub MySQL.
Konfiguracja w oknie Konfiguracja → Bazy danych: adres serwera,
port (domyślnie 3306), nazwa bazy, użytkownik i hasło. Połączenia
testuje przycisk „Testuj połączenie" — program faktycznie otwiera
połączenie i wykonuje zapytanie kontrolne.
TaxMachine pracuje z bazą MariaDB zarówno w sieci lokalnej, jak i na zdalnym hostingu czy VPS-ie (Hetzner, OVH, AWS RDS itp.) — opis scenariusza chmurowego w odpowiedzi FAQ o pracy z bazą na zdalnym serwerze.
Kopie zapasowe — strategie
Awaria dysku, błąd zapisu, ransomware, kradzież lub pożar nastąpi prędzej czy później. Branżowy standard, do którego należy dążyć:
- 3 kopie danych łącznie (oryginał + 2 kopie),
- 2 różne nośniki (np. SSD wewnętrzny + dysk USB),
- 1 kopia off-site (poza pomieszczeniem biura — w chmurze albo na dysku w innym budynku).
Domyślna konfiguracja TaxMachine zapisuje kopie do podkatalogu
kopie\ obok bazy — czyli na tym samym dysku, na którym znajduje
się baza. To wystarcza wyłącznie do szybkiego odtworzenia po pomyłce
operatora; awaria sprzętu unieszkodliwia jednocześnie bazę i kopie.
Zalecana zmiana: w opcjach programu wybierz katalog na innym
fizycznym dysku (zewnętrzny USB, dysk wewnętrzny inny niż systemowy,
NAS) — szczegółowo opisane w przewodniku
Kopie baz danych.
Kopie zapasowe — funkcje w programie
Kreator kopii jest uruchamiany ręcznie przyciskiem „Twórz kopię" w zakładce Konfiguracja albo automatycznie z harmonogramu. Przebieg:
- Kontrola integralności SQLite — wynik inny niż „ok" powoduje ostrzeżenie, ale tworzenie kopii kontynuuje.
- Wykonanie kopii pliku bazy — dla SQLite szybka ścieżka oparta na oficjalnym API SQLite Online Backup. Dla MariaDB/MySQL kopiowanie tabela po tabeli do tymczasowego pliku SQLite.
- Kompresja (opcja „Kompresuj kopie") — archiwum 7-Zip (
.7z), poziom kompresji4, wielowątkowo. - Szyfrowanie (opcja „Szyfruj kompresowane kopie") — hasło ustawiane w archiwum 7-Zip, AES-256. Minimalna długość hasła 6 znaków; dwa pola hasła muszą być zgodne.
- Wysyłka do chmury (opcja „Przesyłaj dane do chmury") — wymaga kompresji i szyfrowania, opis w sekcji niżej.
Nazwa pliku ma format [NazwaBazy]_[data_godzina].db (np.
LocalDB.db_2026-05-22 14-30-15.db); kompresowane archiwum dostaje
rozszerzenie .7z. Każda kopia to pełny snapshot bazy, nie różnicowy.
Kopie w chmurze (płatna usługa)
Opcjonalna usługa abonamentowa, włączana w kreatorze kopii polem „Przesyłaj dane do chmury". Po wykonaniu i zaszyfrowaniu archiwum program liczy jego skrót kontrolny oraz rozmiar pliku, rejestruje metadane kopii w usłudze, loguje się do serwera FTPS i wysyła zaszyfrowane archiwum do katalogu przypisanego do licencji lub konta użytkownika, a po zakończeniu oznacza wysyłkę jako kompletną.
Cechy usługi: codzienna automatyczna kopia off-site bez konfigurowania własnej infrastruktury, szyfrowanie po stronie klienta (AES-256, na serwerach trzymane są wyłącznie zaszyfrowane archiwa), replikacja w kilku lokalizacjach geograficznych, brak limitu rozmiaru i ilości kopii, łatwe odtworzenie na nowym komputerze (zakładka „Kopie w chmurze" w kreatorze przywracania). Wysyłka działa wyłącznie dla zarejestrowanego programu; w trybie demo kreator pokazuje informację „Kopia w chmurze niedostępna".
Więcej oraz cennik: /sklep/kopie-w-chmurze.
Przywracanie kopii
Okno Konfiguracja → Przywróć kopię prowadzi przez:
- Wybór źródła — zakładka Kopia lokalna (plik
.dblub.7zz dysku) albo Kopie w chmurze (lista pobrana z serwera dla licencji lub użytkownika). - Wybór operacji: Odtworzenie kopii, Zapis kopii (.db) na dysku lokalnym lub Pobranie archiwum (.7z).
- Wybór bazy docelowej — SQLite (ścieżka pliku) lub MariaDB/MySQL (host, port, baza, użytkownik, hasło). Program testuje połączenie i wykrywa, czy baza docelowa nie jest aktualnie otwartą bazą roboczą; ostrzega przed nadpisaniem niepustej bazy.
- Hasło wymagane dla
.7z(wpisywane ręcznie albo z opcji). - Pobranie z chmury (FTPS) → dekompresja w katalogu tymczasowym → odtworzenie do bazy docelowej.
Odtworzenie SQLite do SQLite korzysta z natywnego API kopii SQLite;
odtworzenie SQLite do MariaDB wykonuje migrację schematu i przepisanie
danych. Po odtworzeniu można zaznaczyć „Dodaj do listy baz" i
„Przełącz na tę bazę" — wpis zostanie dodany do listy baz programu
w pliku ldb.db.
Konwersja baz
Narzędzie konwersji baz danych ma dwa panele (źródło i cel) oraz przycisk
„Kopiuj dane". Każdy panel pozwala wybrać typ bazy (SQLite — plik
.db; MariaDB/MySQL — adres serwera, port, baza, użytkownik, hasło;
dodatkowo dostępne są też SQL Server i PostgreSQL).
Dostępne operacje: „Testuj połączenie" otwiera bazę i wykonuje
zapytanie kontrolne; „Wykonaj kopię" eksportuje bazę jako .db
lub .json; „Kopiuj dane" uruchamia migrację w osobnym wątku,
przepisując każdą tabelę ze źródła do celu.
Najczęstsze użycie to migracja SQLite → MariaDB przy przechodzeniu na pracę wielostanowiskową. Migracja w drugą stronę (MariaDB → SQLite) też jest wspierana — przydatna przy serwisie bazy lub przenoszeniu danych na komputer bez serwera MariaDB.
Aktualizacja struktury bazy
Po podniesieniu wersji programu schemat bazy może wymagać zmian (nowe
tabele, kolumny, indeksy). TaxMachine wykrywa to automatycznie przy
starcie i pokazuje kreator aktualizacji bazy. Kreator informuje o numerze
wersji, tworzy automatyczną kopię aktualnej bazy w katalogu kopie\
(z weryfikacją integralności), wykonuje migrację schematu w transakcji,
a w razie błędu wycofuje zmiany i pokazuje treść błędu wraz z nazwą tabeli.
Anulowanie aktualizacji blokuje pracę z bazą. Przy pracy wielostanowiskowej po aktualizacji jednego stanowiska schemat zmienia się dla wszystkich — pozostałe stanowiska też muszą zostać zaktualizowane do tej samej wersji programu, zanim się ponownie podłączą.
Bezpieczeństwo
- Szyfrowanie kopii — AES-256 w archiwum 7-Zip, klucz z hasła użytkownika.
- Hasło zna tylko klient — TaxMachine nie przechowuje hasła ani nie ma mechanizmu odzyskiwania. Bez hasła kopii nie da się odtworzyć.
- Transmisja do chmury — szyfrowana (FTPS) na już zaszyfrowanym archiwum.
- MariaDB przez Internet — natywne SSL/TLS w serwerze i programie;
przy publicznym wystawianiu portu
3306zalecamy dodatkowo VPN (WireGuard, Tailscale, OpenVPN) lub SSH-tunnel — szczegóły w FAQ.
Ograniczenia
- SQLite nie nadaje się do dysku sieciowego ani do pracy wielostanowiskowej — do pracy 2+ osób jednocześnie używaj MariaDB.
- Pliki towarzyszące
.db-walmuszą być kopiowane razem z głównym plikiem.db. - Hasło do kopii w chmurze musi mieć minimum 6 znaków (zalecane 12+, mieszane litery / cyfry / znaki specjalne).
- Kopia w chmurze wymaga zarejestrowanego programu i włączonej kompresji oraz szyfrowania — niezaszyfrowanego pliku kreator nie wyśle.
- Synchronizacja katalogu bazy przez OneDrive / Dropbox / Google Drive podczas pracy programu często prowadzi do uszkodzenia pliku — używaj wbudowanego mechanizmu kopii.
Powiązane
Inne moduły programu:
- Funkcje dla biur rachunkowych — multi-firm na wspólnej bazie MariaDB
- Księgi rachunkowe (KR) — najbardziej intensywny moduł pod względem objętości danych w bazie
- Powrót do listy funkcji programu
Pomoc i dokumentacja:
- Kopie baz danych — strategia i konfiguracja
- Lokalna baza danych (SQLite)
- Praca wielostanowiskowa (MariaDB)
- Instalacja serwera MariaDB
- Konwersja baz danych
- Przenoszenie danych na nowy komputer
- Kopie MariaDB / MySQL poza TaxMachine (skrypty zewnętrzne)
- FAQ: praca z bazą na zdalnym serwerze
- Kopie w chmurze — usługa w sklepie
- Porównanie wersji programu