Synkronisering
Synkronisering
Synkronisering sørger for at holde den lokale database aktuel ved natligt at hente ændringsdata eller et komplet datasæt. Synkronisering kan også opdatere databasen med ændringer eller tilføjelser i tabelstrukturen.
Synkronisering sker med et Python-script, der henter den relevante datapakke gennem TL API.

Installation
Da der er tale om et python script skal der være installeret et python miljø på serveren, anbefalet version er python 3.12, og den kan hentes på dette link:
https://www.python.org/downloads/release/python-3127/
Seneste udgave af synkroniseringsscriptet kan hentes på dette link, kræver at man har en API-nøgle:
https://tlapi.geopartner.dk/TLAPI/v2/client/tlsyncversion/latest?token={apikey}&version={newversion}
Zip filen udpakkes i en mappe hvor det kan afvikles, det kunne være c:\geopartner\tlync
Der skal nu etableres et virtual enviroment (venv) det gøres ved at kører følgende i en kommandoprompt:
“c:\Program Files\Python312\python.exe” -m venv C:\geopartner\venv
I kommandoprompten aktiveres det virtuelle miljø ved at kalde “activate.bat” i \venv\scripts\
Der navigeres til mappen med tlsync, og de nødvendige python biblioteker skal installeres med følgende kommando:
python -m pip install -r requirements.txt
Konfiguration
Konfigurationen af synkroniseringen skrives i tlsync.ini i tlsync-mappen.
Eks:
[source]apikey=e5b0492ac1094bd192c53764b28dc209
[destination]dstdb_type=sqlserverdstdb_database=tlconnect2dstdb_schema=dbodstdb_user=tlconnectdstdb_password=dstdb_port=1433dstdb_host = PC10495\SQLEXPRESSdstdb_client = native_11dstdb_trustedconnection=yesurltlceditor = http://app01:8089/?Eller ved forbindelse til en Postgres database
[source]apikey=e5b0492ac1094bd192c53764b28dc209
[destination]dstdb_type=postgresdstdb_database=tlsyncdstdb_schema=tinglysning_datahubdstdb_user=postgresdstdb_password=postgresdstdb_port=5432dstdb_host = localhostdstdb_client =urltlceditor = http://app01:8089/?| Parameter | Bemærkning | Typisk værdi |
|---|---|---|
| apikey | Kundens api nøgle | Udleveres |
| dstdb_type | Angiver om installation er i SQL server eller Postgres. | postgres eller sqlserver |
| dstdb_database | Databasens navn | tlconnect |
| dstdb_schema | Angiver navn på schema hvor Geodata Connect / Tingbog er installeret | Typisk dbo i sql server og tlconnect i postgres |
| dstdb_user | Brugernavn til Geodata Connect / Tingbog adgang til databasen | |
| dstdb_password | Password til database adgang | |
| dstdb_port | Port til database adgang | 1433 for sql server eller 5432 for postgres |
| dstdb_host | Database serverens hostnavn | |
| dstdb_client | Kun relevant ved SQL server, angiver hvilke driver der anvendes. Kan være native_11, odbc_13, odbc_17 | native_11 |
| dstdb_trustedconnection | Kun relevant ved SQL server, angiver om database tilsluttes med trusted connection eller ej. Kan være yes / no | no |
| urltlceditor | URL til TL Connect Editor | http://app01:8089/? |
Database installation
Når tlsync.ini er dannet, kan synkroniseringsscriptet køres.
Hvis der startes med en tom database, kan synkroniseringen med fordel sættes til at opbygge databasen ved første kørsel. Det gøres med følgende:
python tlsync.py forcedbinstall
Så dannes tabeller og views og der indlæses data.
Herefter scheduleres kørslen i task scheduleren. En fuldindlæsning kan klares typisk på under 30 min.