Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Wymagania wstępne

Zanim będzie można umieszczać lub replikować dane, należy spełnić następujące wymagania wstępne:

  • Zainstaluj wymagany driver na serwerze bramy ruchu danych

  • Przyznaj wymagane uprawnienia w źródle danych

  • Skonfiguruj łącznik źródła danych

Konfiguracja sterowników

Sterownik driver można zainstalować za pomocą Narzędzia do instalacji sterowników (zalecane) lub ręcznie. Instalacji ręcznej należy próbować tylko w mało prawdopodobnym przypadku wystąpienia problemu z Narzędziem do instalacji sterowników.

Używanie Narzędzia do instalacji sterowników w celu instalacji sterownika

W tej sekcji opisano, jak zainstalować wymagany driver. Proces ten obejmuje uruchomienie skryptu, który automatycznie pobierze, zainstaluje i skonfiguruje wymagany driver. W razie potrzeby można także uruchamiać skrypty, aby zaktualizować i odinstalować driver.

Przygotowanie instalacji

  • Na serwerze bramy Ruch danych musi być zainstalowane środowisko Python 3.6 lub nowsze.

    Środowisko Python jest preinstalowane w większości dystrybucji systemu Linux. Aby sprawdzić, która wersja środowiska Pythona jest zainstalowana w Twoim systemie, uruchom następujące polecenie:

    python3 --version

Instalowanie aplikacji driver

Aby pobrać i zainstalować driver:

  1. Na urządzenie bramy Ruch danych zmień katalog roboczy na:

    opt/qlik/gateway/movement/drivers/bin

  2. Wykonaj następujące polecenie:

    Składnia:

    ./install postgres

    Jeśli driver nie może zostać pobrany (ze względu na ograniczenia dostępu lub problemy techniczne), zostanie wyświetlony komunikat informujący, skąd pobrać driver i dokąd go skopiować na urządzenie bramy Ruch danych. Po wykonaniu tej czynności ponownie uruchom polecenie install postgres.

    W przeciwnym razie zostanie wyświetlona umowa licencyjna dotycząca driver.

  3. Wykonaj jedną z poniższych czynności:

    • Naciśnij klawisz [Enter] wielokrotnie, aby powoli przewinąć treść umowy licencyjnej.
    • Naciśnij klawisz spacji wielokrotnie, aby szybko przewinąć treść umowy licencyjnej.
    • Naciśnij klawisz „q”, aby zamknąć tekst umowy licencyjnej i wyświetlić opcje jej akceptacji.
  4. Wykonaj jedną z poniższych czynności:

    • Wpisz „y” i naciśnij klawisz [Enter], aby zaakceptować umowę licencyjną i rozpocząć instalację.
    • Wpisz „n” i naciśnij klawisz [Enter], aby odrzucić umowę licencyjną i zakończyć instalację.
    • Wpisz „v” i naciśnij klawisz [Enter], aby ponownie wyświetlić umowę licencyjną.

  5. Zostanie zainstalowany driver.

driver — aktualizacja

Uruchom polecenie aktualizacji, jeśli chcesz odinstalować driver w poprzedniej wersji, zanim zainstalujesz dostarczony driver.

Aby pobrać i zaktualizować driver:

  1. Na urządzenie bramy Ruch danych zmień katalog roboczy na:

    opt/qlik/gateway/movement/drivers/bin

  2. Wykonaj następujące polecenie:

    Składnia:

    ./update postgres

    Jeśli driver nie może zostać pobrany (ze względu na ograniczenia dostępu lub problemy techniczne), zostanie wyświetlony komunikat informujący, skąd pobrać driver i dokąd go skopiować na urządzenie bramy Ruch danych. Po wykonaniu tej czynności ponownie uruchom polecenie update postgres.

    W przeciwnym razie zostanie wyświetlona umowa licencyjna dotycząca driver.

  3. Wykonaj jedną z poniższych czynności:

    • Naciśnij klawisz [Enter] wielokrotnie, aby powoli przewinąć treść umowy licencyjnej.
    • Naciśnij klawisz spacji wielokrotnie, aby szybko przewinąć treść umowy licencyjnej.
    • Naciśnij klawisz „q”, aby zamknąć tekst umowy licencyjnej i wyświetlić opcje jej akceptacji.
  4. Wykonaj jedną z poniższych czynności:

    • Wpisz „y” i naciśnij klawisz [Enter], aby zaakceptować umowę licencyjną i rozpocząć instalację.
    • Wpisz „n” i naciśnij klawisz [Enter], aby odrzucić umowę licencyjną i zakończyć instalację.
    • Wpisz „v” i naciśnij klawisz [Enter], aby wyświetlić umowę licencyjną od początku.
  5. Stary driver zostanie odinstalowany, a zainstalowany zostanie nowy driver.

driver — odinstalowywanie

Uruchom polecenie odinstalowania, jeśli chcesz odinstalować driver.

Aby odinstalować driver:

  1. Zatrzymaj wszystkie zadania skonfigurowane do korzystania z tego łącznika.

  2. Na urządzenie bramy Ruch danych zmień katalog roboczy na:

    opt/qlik/gateway/movement/drivers/bin

  3. Wykonaj następujące polecenie:

    Składnia:

    ./uninstall postgres

    Sterownik driverzostanie odinstalowany.

Instalowanie sterownika ręcznie

Sterownik driver należy instalować ręcznie tylko wtedy, gdy automatyczna instalacja nie zakończyła się pomyślnie.

Po zainstalowaniu Brama danych ruchu danych pobierz następujące pliki RPM. Łącza do bezpośredniego pobrania tych plików można znaleźć w sekcji binary-artifacts w pliku /opt/qlik/gateway/movement/drivers/manifests/postgres.yaml. Po zakończeniu pobierania skopiuj pliki na komputer z Brama danych ruchu danych.

Kiedy brama Brama danych ruchu danych jest zainstalowana w systemie Red Hat 9.x:

  • postgresql<wersja>-libs-<wersja>PGDG.rhel9.x86_64.rpm
  • postgresql<wersja>-<wersja>PGDG.rhel8.x86_64.rpm
  • postgresql<wersja>-odbc-<wersja>PGDG.rhel8.x86_64.rpm

Kiedy brama Brama danych ruchu danych jest zainstalowana w systemie Red Hat 8.x:

  • postgresql<version>-libs-<version>PGDG.rhel8.x86_64.rpm
  • postgresql<version>-<version>PGDG.rhel8.x86_64.rpm
  • postgresql<version>-odbc-<version>PGDG.rhel8.x86_64.rpm

Na serwerze Brama danych ruchu danych otwórz wiersz poleceń i wykonaj następujące czynności:

  1. Zatrzymaj usługę Brama danych ruchu danych:

    sudo systemctl stop repagent

  2. Opcjonalnie potwierdź, że usługa została zatrzymana:

    sudo systemctl status repagent

    Status powinien być następujący:

    Active: inactive (dead) since <timestamp> ago

  3. Zainstaluj pliki RPM.

  4. Zmień katalog roboczy na <Brama danych ruchu danych-Install-Dir>/bin.

  5. Skopiuj lokalizację sterownika do pliku site_arep_login.sh w następujący sposób:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/lib:/usr/lib64:/usr/pgsql-<version>/lib" >> site_arep_login.sh

    Spowoduje to dodanie sterownika do "LD_LIBRARY_PATH" i zaktualizuje lokalizację sterownika w pliku site_arep_login.sh.

  6. Opcjonalnie potwierdź, że lokalizacja sterownika została skopiowana:

    cat site_arep_login.sh
  7. Upewnij się, że w pliku /etc/odbcinst.ini znajduje się wpis dotyczący PostgreSQL, jak w poniższym przykładzie:

    [PostgreSQL]

    Description = PostgreSQL ODBC driver

    Driver = /usr/pgsql-13/lib/psqlodbc.so

    Setup = /usr/pgsql-13/lib/psqlodbcw.so

    UsageCount = 1

  8. Uruchom usługę Brama danych ruchu danych:

    sudo systemctl start repagent

  9. Opcjonalnie potwierdź, że usługa została uruchomiona:

    sudo systemctl status repagent

    Status powinien być następujący:

    Active: active (running) since <timestamp> ago

Port

Port 5432 musi być domyślnie otwarty dla komunikacji wychodzącej na serwerze Brama danych ruchu danych. Można to zmienić w ustawieniach złącza.

Rejestrowanie zmian z zainstalowanej przez klienta bazy danych PostgreSQL

  • Adres IP komputera Data Movement gateway należy dodać do pliku konfiguracji pg_hba.conf ze słowem kluczowym „replication” w polu bazy danych.

    Przykład:

    host replication all 176.123.1.212/32 trust

  • Należy zainstalować wtyczkę danych wyjściowych test_decoding (która znajduje się w pakiecie postgresql12-contrib).

  • Użytkownik określony w ustawieniach połączenia musi mieć przyznane uprawnienia do zapisu i odczytu źródłowej bazy danych, aby umożliwić tworzenie „okien czasowych” w bazie danych. Okna czasowe są wymagane do odczytu zmian.

  • W pliku konfiguracji postgresql.conf należy ustawić następujące parametry i wartości.

    wal_level = logical
    max_replication_slots = number of replication slots

    Gdzie number of replication slots musi być większa niż jeden oraz ustawiona zgodnie z liczbą uruchamianych zadań. Jeśli na przykład jest uruchamianych pięć zadań, należy ustawić max_replication_slots = 5. Okna czasowe otwierają się automatycznie przy rozpoczęciu zadania i pozostają otwarte, nawet jeśli zadanie już nie jest aktywne. Otwarte okna czasowe należy usuwać ręcznie.

    max_wal_senders = number of concurrent tasks

    Gdzie number of concurrent tasks musi być większa niż jeden oraz ustawiona zgodnie z liczbą zadań, które są wykonywane jednocześnie. Jeśli na przykład jednocześnie są wykonywane trzy zadania, należy ustawić max_wal_senders = 3.

  • Parametr wal_sender_timeout przerywa połączenia, które są nieaktywne dłużej niż od określonej liczby milisekund. Wartością domyślną limitu czasu jest 60 sekund. Aby wyłączyć mechanizm limitu czasu (opcjonalnie), należy ustawić parametr na zero.

    Informacja

    Domyślnie wartość wal_sender_timeout parametru jest interpretowana przez serwer jako milisekundy. Aby jawnie określić sekundy, należy do wartości dodać „s” zgodnie z poniższym przykładem:

    wal_sender_timeout=60s

Aby uzyskać więcej informacji na temat parametrów konfiguracyjnych, zobacz sekcję Replikacja w sekcji Konfiguracja serwera w pomocy online PostgreSQL.

Rejestrowanie zmian z Amazon RDS for PostgreSQL

Głównego konta użytkownika AWS można użyć dla instancji bazy danych PostgreSQL jako użytkownika dla Amazon RDS dla punktu końcowego źródła PostgreSQL. Główne konto użytkownika ma wymagane role, które umożliwiają konfigurację Przechwytywania zmian danych (CDC).

Jeśli nie chcesz używać głównego konta użytkownika, to konto, którego zamierzasz użyć, musi mieć role rds_superuser i rds_replication. Rola rds_replication nadaje uprawnienia do zarządzania miejscami logicznymi oraz strumieniowania danych przy użyciu miejsc logicznych.

Aby włączyć replikację logiczną dla instancji bazy danych Amazon RDS PostgreSQL:

  1. Utwórz nową grupę parametrów o następującej konfiguracji:
    1. Ustaw parametr rds.logical_replication w grupie parametrów bazy danych na 1.
    2. max_wal_senders – liczba zadań, które mogą być uruchomione równolegle.
    3. max_replication_slots – każde połączenie (tj. zadanie) tworzy nowe miejsce. Ten parametr określa liczbę jednoczesnych połączeń z bazą danych.
  2. Połącz instancję Amazon RDS z grupą parametrów.

Rejestrowanie zmian z Microsoft Azure for PostgreSQL

Aby móc przechwytywać zmiany z bazy danych Microsoft Azure for PostgreSQL, należy ustawić własność "replication" na wartość "logical" zgodnie z poniższym opisem.

  1. Otwórz wiersz poleceń Azure i wykonaj następujące polecenie:

    Informacja

    Możesz pobrać wiersz poleceń lub możesz połączyć się przez polecenie powłoki w portalu Azure.

    az postgres server configuration set --resource-group resource-group --server-name server-name --name azure.replication_support --value logical

    az postgres server configuration set --resource-group azuredb --server-name qlik-azure-pg --name azure.replication_support --value logical

     

  2. Uruchom ponownie bazę danych (za pomocą wiersza poleceń lub przez portal).

Rejestrowanie zmian z Google Cloud SQL for PostgreSQL

InformacjaTa funkcja wymaga Brama danych ruchu danych w wersji 2022.11.42 lub nowszej.

Aby móc przechwytywać zmiany z bazy danych, należy skonfigurować replikację logiczną.

Aby skonfigurować replikację logiczną:

  1. Na platformie Google Cloud ustaw następujące flagi w ustawieniach PostgreSQL:

    • cloudsql.logical_decoding=on
    • max_replication_slots: Każde połączenie (tj. zadanie) tworzy nowe miejsce. Ten parametr określa liczbę jednoczesnych połączeń z bazą danych. Jeśli wystąpią problemy z wydajnością, może pomóc zwiększenie tej wartości.
    • max_wal_senders: Liczba zadań, które mogą być uruchomione równolegle. Jeśli wystąpią problemy z wydajnością, może pomóc zwiększenie tej wartości.

    Aby uzyskać więcej informacji na temat tych parametrów, zobacz https://www.postgresql.org/docs/current/runtime-config-replication.html

  2. W bazie danych zmień użytkownika określonego w ustawieniach connector (username), aby obsługiwał replikację:

    ALTER USER username WITH REPLICATION;

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać, co możemy poprawić!