# 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 Brama danych ruchu danych

  Informacja

  Jest to wymagane tylko wtedy, gdy pracujesz z bramą Brama danych ruchu danych. Informacje o zaletach bramy Brama danych ruchu danych i o okolicznościach, w których jest wymagana, zawiera temat [Brama danych Qlik — ruch danych](https://help.qlik.com/pl-PL/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/replication-gateway.htm).

  Brama Brama danych ruchu danych jest niedostępna z subskrypcją Qlik Talend Cloud Starter.

* Przyznaj wymagane uprawnienia w źródle danych

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

## Obsługiwane edycje

Obsługiwane są następujące edycje MySQL:

* MySQL Community Edition
* MySQL Standard Edition
* MySQL Enterprise Edition
* MySQL Cluster Carrier Grade Edition

## 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 Data Movement 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 Data Movement zmień katalog roboczy na:

   opt/qlik/gateway/movement/drivers/bin

2. Wykonaj następujące polecenie:

   Składnia:

   ./install mysql

   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 Data Movement. Po wykonaniu tej czynności ponownie uruchom polecenie install mysql.

   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ą.

   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 Data Movement zmień katalog roboczy na:

   opt/qlik/gateway/movement/drivers/bin

2. Wykonaj następujące polecenie:

   Składnia:

   ./update mysql

   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 Data Movement. Po wykonaniu tej czynności ponownie uruchom polecenie update mysql.

   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.

   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 Data Movement zmień katalog roboczy na:

   opt/qlik/gateway/movement/drivers/bin

3. Wykonaj następujące polecenie:

   Składnia:

   ./uninstall mysql

   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 sterownik mysql-connector-odbc-&lt;wersja&gt;.x86\_64.rpm. Łącze do bezpośredniego pobrania obsługiwanej wersji można znaleźć w sekcji binary-artifacts w pliku /opt/qlik/gateway/movement/drivers/manifests/mysql.yaml. Po zakończeniu pobierania skopiuj plik RPM na komputer z Brama danych ruchu danych.

Na serwerze Data Movement gateway otwórz wiersz poleceń i wykonaj następujące czynności:

1. Zatrzymaj usługę Data Movement gateway:

   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 &lt;timestamp&gt; ago

3. Zainstaluj sterownik na urządzeniu Data Movement gateway.

4. Zmień katalog roboczy na &lt;Data Movement gateway-Install-Dir&gt;/bin.

5. Skopiuj lokalizację sterownika do pliku`site_arep_login.sh`:

   `echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/lib64" >> 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 MySQL, jak w poniższym przykładzie:

   ` [MySQL ODBC 8.0 Unicode Driver]
                            ` ` Driver   = /usr/lib64/libmyodbc8w.so
                            ` ` UsageCount  = 1
                            `

8. Uruchom usługę Data Movement gateway:

   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 &lt;timestamp&gt; ago

## Port

Port 3306 musi być domyślnie otwarty dla komunikacji wychodzącej na serwerze Data Movement gateway. Można to zmienić w ustawieniach złącza.

## Wymagania ogólne

Należy spełnić następujące wymagania wstępne:

* Konto MySQL, które ma [Wymagane uprawnienia](https://help.qlik.com/pl-PL/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/MySQL/security-req-mysql-source.htm).

* MySQL8: standardowe uwierzytelnianie na potrzeby przechwytywania zmian.

* Certyfikowane wersje MySQL obsługują wartości ułamkowe typów danych tymczasowych (wprowadzono w MySQL 5.6). W rezultacie operacja przenoszenie dla starego formatu danych tymczasowych nie jest już obsługiwana.

  InformacjaUaktualnienie do wersji MySQL, która obsługuje wartości ułamkowe typów danych tymczasowych *nie* powoduje automatycznego uaktualnienia formatu typu danych tymczasowych. Należy to wykonać osobno. Dotyczy to również uaktualnienia z MariaDB 10.1. Instrukcję uaktualniania formatu typu danych tymczasowych można znaleźć w pomocy online dostawcy.

## Rejestrowanie zmian z zainstalowanej przez klienta bazy danych MySQL

Poniższa sekcja opisuje wymagania dotyczące rejestrowania zmian z lokalnej bazy danych MySQL.

### Włącz logowanie binarne

Aby włączyć rejestrowanie binarne (wymagane do operacji przenoszenie CDC), należy skonfigurować następujące parametry w plikach `my.ini` (system Windows) lub `my.cnf` (system UNIX) systemu MySQL.

Parametry rejestrowania binarnego

| Parametr | Wartość |
| --- | --- |
| server\_id | Dowolna wartość począwszy od 1.<br><br>Przykład:<br><br>` server_id=1<br>` |
| log-bin=&lt;ścieżka&gt; | Ścieżka do pliku dziennika binarnego (bez rozszerzenia).<br><br>Przykład:<br><br>` log-bin=E:\MySql_Logs\BinLog<br>` |
| binlog\_format | Wymagane:<br><br>` binlog_format=row<br>` |
| binlog\_expire\_logs\_seconds | Aby zapobiec problemom z miejscem na dysku, nie należy używać wartości domyślnej (2592000).<br><br>Przykład (dla 5 dni):<br><br>` binlog_expire_logs_seconds=432000<br>` |
| binlog\_row\_image | Wymagane:<br><br>` binlog_row_image=full<br>` |

### Wymagania dotyczące klastra

Aby umożliwić operacje Przenieś tabel z klastra (NDB) (przez połączenie z dowolnym węzłem klastra), należy skonfigurować następujące parametry w plikach my.ini (system Windows) lub my.cnf (system UNIX) bazy danych MySQL.

Informacja

Jeśli źródłem jest platforma Percona, nie trzeba wykonywać procedur opisanych w tej sekcji.

Parametry klastra

| Parametr | Wartość |
| --- | --- |
| ndb\_log\_bin | Wymagane:<br><br>`ndb_log_bin=on`<br><br>Powoduje, że zmiany w tabelach w klastrze będą rejestrowane w dzienniku binarnym. |
| ndb\_log\_update\_as\_write | Wymagane:<br><br>`ndb_log_update_as_write=OFF`<br><br>Zapobiega zapisywaniu operacji UPDATE jako operacji INSERT w dzienniku binarnym. |
| ndb\_log\_updated\_only | Wymagane:<br><br>`ndb_log_updated_only=OFF`<br><br>Powoduje, że dziennik binarny będzie zawierać cały wiersz, a nie tylko zmienione kolumny. |

## Rejestrowanie zmian z Google Cloud for MySQL

#### Logowanie binarne

Rejestrowanie binarne jest wymagane do przechwytywania zmian. Aby sprawdzić, czy włączono rejestrowanie binarne (domyślne), sprawdź, czy parametr `binlog_row_image` bazy danych ustawiono na `full`.

#### Replikacja

Replikacja umożliwia kopiowanie danych z podstawowego serwera bazy danych na co najmniej jeden serwer pomocniczy.

Dane można umieszczać zarówno z serwera podstawowego, jak i pomocniczego.

Aby przechwytywać zmiany z serwera pomocniczego, parametr rejestrowania binarnego `log_slave_updates` należy ustawić na ` true  `(`1`).

Więcej informacji: https://cloud.google.com/sql/docs/mysql/replication

## Rejestrowanie zmian z Amazon RDS for MySQL i Amazon Aurora for MySQL

#### Logowanie binarne

Aby skonfigurować bazę danych Amazon RDS for MySQL lub Amazon Aurora for MySQL dla CDC:

1. Postępuj zgodnie z instrukcjami w pomocy AWS na temat tworzenia nowej grupy parametrów (patrz sekcja Binarne formaty zapisu w dzienniku).

2. Podczas tworzenia nowej grupy parametrów, zdefiniuj następujące ustawienie: `binlog_format=row`

3. Zapisz nową grupę parametrów.

4. Jeśli nasz istniejącą instancję bazy danych Amazon RDS for MySQL , zmodyfikuj ją tak, aby używała parametru określonego w punkcie 2 . Jeśli wdrażasz nową instancję bazy danych Amazon RDS for MySQL, odnieś się do nowej grupy parametrów utworzonej w punkcie 1.

5. Na koniec upewnij się, że włączone jest automatyczne tworzenie kopii zapasowej (ustawienie domyślne).

Więcej informacji: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER\_LogAccess.MySQL.BinaryFormat.html

#### Replikacja

Replikacja umożliwia kopiowanie danych z podstawowego serwera bazy danych na co najmniej jeden serwer pomocniczy.

Dane można umieszczać zarówno z serwera podstawowego, jak i pomocniczego.

Aby przechwytywać zmiany z serwera pomocniczego, parametr rejestrowania binarnego `log_slave_updates` należy ustawić na ` true  `(`1`).

Więcej informacji: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER\_MySQL.Replication.html

## Rejestrowanie zmian z bazy danych Microsoft Azure for MySQL

Rejestrowanie binarne jest wymagane do przechwytywania zmian. Aby sprawdzić, czy włączono rejestrowanie binarne (domyślne), sprawdź, czy parametr `binlog_row_image` bazy danych ustawiono na `full`.