MySQL | Qlik Cloud Pomoc
Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

MySQL

W tym temacie wyjaśniono, jak skonfigurować łączność z celem MySQL za pomocą łącznika docelowego MySQL. MySQL może być używany jako docelowa baza danych tylko w zadaniu replikacji. Zanim będzie można połączyć się z celem MySQL, należy skonfigurować Wymagane uprawnienia w bazie danych. Jeśli łączysz się z MySQL za pośrednictwem Brama danych ruchu danych, musisz również zainstalować sterownik, jak opisano w Konfiguracja sterownika.

Aby uzyskać informacje na temat ograniczeń i uwag dotyczących korzystania z łącznika MySQL , zobacz Ograniczenia i uwagi.

Ustawianie właściwości połączenia

Aby skonfigurować łącznik, wykonaj następujące czynności:

  1. W sekcji Połączenia kliknij Utwórz połączenie.

  2. Wybierz łącznik docelowy MySQL, a następnie podaj następujące ustawienia:

Cel danych

  • Brama danych: Podczas pracy z Brama danych ruchu danych wybierz bramę danych, która zostanie użyta do przetestowania połączenia z celem MySQL. Powinna to być ta sama brama, która została użyta do uzyskania dostępu do źródła danych.

    Informacja
    • To pole nie jest dostępne w subskrypcji Qlik Talend Cloud Starter, ponieważ Brama danych ruchu danych nie jest obsługiwane na tym poziomie subskrypcji.
    • Należy również zainstalować odpowiedni sterownik na maszynie Brama danych ruchu danych. Szczegółowe informacje można znaleźć w sekcji Konfiguracja sterownika poniżej.

  • Dostawca chmury: Wybierz jedną z poniższych opcji, w zależności od potrzeb:

      • Dla lokalnego MySQL, MariaDB, Amazon Aurora lub Microsoft Azure Database for MySQL - Flexible Server.
      • Podczas pracy bez Brama danych ruchu danych
    • Dla Amazon RDS for MariaDB lub Amazon RDS for MySQL.

    • Dla Google Cloud SQL for MySQL.

    • Dla Microsoft Azure Database for MySQL.

  • Serwer: Nazwa hosta lub adres IP komputera, na którym zainstalowana jest baza danych MySQL.

  • Port: Port używany podczas łączenia się z bazą danych. Wartość domyślna to 3306.

Właściwości konta

Nazwa użytkownika i Hasło: Nazwa użytkownika i hasło użytkownika upoważnionego do dostępu do bazy danych MySQL Server.

Właściwości bazy danych

  • Typ docelowej bazy danych: Wybierz jedną z poniższych opcji:
    • Określona baza danych: Po wybraniu tej opcji wszystkie schematy źródłowe zostaną załadowane do określonej Bazy danych.
    • Wiele baz danych: Po wybraniu tej opcji każdy ze schematów źródłowych zostanie załadowany do odpowiadającej mu bazy danych. Ponadto domyślnie wszystkie tabele kontrolne zostaną zreplikowane do nowego schematu o nazwie attrep_control. Aby uzyskać więcej informacji na temat tabel kontrolnych, zobacz Tabele kontrolne.
  • Maksymalny rozmiar pliku (KB): Wybierz lub wpisz maksymalny rozmiar (w KB) pliku CSV przed jego załadowaniem do docelowej bazy danych MySQL. Wartość domyślna to 32000 KB.
  • Wątki ładowania równoległego: Zwiększenie liczby wątków może poprawić wydajność podczas ładowania danych do docelowej bazy danych MySQL. Należy pamiętać, że ustawienie dużej liczby wątków może mieć niekorzystny wpływ na wydajność bazy danych, ponieważ dla każdego wątku wymagane jest oddzielne połączenie.

Właściwości wewnętrzne

Właściwości wewnętrzne są przeznaczone dla specjalnych przypadków, w związku z czym nie są ukazywane w oknie dialogowym. Należy ich używać tylko na polecenie Qlik Pomocy technicznej.

Użyj przycisków Utwórz nowy i Anuluj znajdujących się po prawej stronie pól, aby dodać lub usunąć właściwości zgodnie z potrzebą.

Nazwa

Nazwa wyświetlana dla połączenia.

Wymagania wstępne

Wymagane uprawnienia

Użytkownik określony w ustawieniach łącznika musi mieć przyznane:

  • Dostęp do konta MySQL
  • Uprawnienia do odczytu/zapisu w bazie danych MySQL
  • Następujące uprawnienia dla każdego schematu docelowego biorącego udział w replikacji:
    • ALTER
    • CREATE
    • CREATE TEMPORARY TABLES
    • DELETE
    • DROP
    • INSERT
    • SELECT
    • UPDATE

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

  • 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

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

  5. Zostanie zainstalowany driver.

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.
  5. Stary driver zostanie odinstalowany, a zainstalowany zostanie nowy driver.

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.

Ręczna instalacja sterownika

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-<wersja>.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 <timestamp> ago

  3. Zainstaluj sterownik na urządzeniu Data Movement gateway.
  4. Zmień katalog roboczy na <Data Movement gateway-Install-Dir>/bin.

  5. Skopiuj lokalizację sterownika do plikusite_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 <timestamp> ago

Ograniczenia i uwagi

Podczas używania MySQL jako celu replikacji obowiązują następujące ograniczenia:

  • Podczas replikacji do docelowej bazy danych MariaDB, jeśli wartość DATETIME jest ustawiona na zero, należy zdefiniować transformację, która zastąpi DATETIME prawidłowymi wartościami. Na przykład:

    replace($datetime_column,'9999-12-31 23:59:59','2000-01-01 22:00:00')

    InformacjaTo ograniczenie nie dotyczy usługi Microsoft Azure Database for MySQL.
  • Ze względu na sposób działania MySQL, podczas ładowania danych do celu MySQL w trakcie zadania pełnego ładowania (Full Load), błędy zduplikowanego klucza nie będą zgłaszane w dziennikach.
  • Podczas aktualizowania wartości kolumny do jej istniejącej wartości, MySQL zwraca informację o zerowej liczbie zmienionych wierszy (w przeciwieństwie do baz Oracle i Microsoft SQL Server, które wykonują aktualizację jednego wiersza).

    Generuje to wpis w attrep_apply_exceptions Control Table oraz następujące ostrzeżenie:

    Some changes from the source database had no impact when applied to the target database. See attrep_apply_exceptions table for details.

  • Jeśli konieczne jest replikowanie 4-bajtowych znaków emoji, zestaw znaków schematu docelowego musi być ustawiony na utf8mb4.

  • Gdy tabela źródłowa zawiera dużą liczbę kolumn, MySQL może zwrócić błąd Row size too large (> 8126), ponieważ 8126 bajtów to domyślny maksymalny rozmiar wiersza w MySQL. W przypadku korzystania ze źródeł typu aplikacja SaaS błąd ten występuje w czasie wykonywania. W przypadku korzystania z innych typów źródeł, takich jak bazy danych, błąd występuje podczas przygotowywania zadania. Aby rozwiązać to ograniczenie, użyj jednego z poniższych podejść:

    • Zalecane podejście: Po pozyskaniu danych usuń kolumny, których nie potrzebujesz w miejscu docelowym. Aby uzyskać informacje, jak to zrobić, zobacz Usuwanie kolumn. Jeśli błąd nadal występuje, usuń więcej kolumn.

    • Alternatywne rozwiązanie: Jeśli wszystkie kolumny źródłowe muszą zostać uwzględnione w tabeli docelowej, istnieją pewne konfiguracje bazy danych MySQL, które na to pozwolą. Jedną z nich jest zwiększenie rozmiaru strony MySQL, aby był wystarczająco duży, by pomieścić rozmiar wiersza.

      InformacjaW przypadku źródeł o rozmiarach wierszy przekraczających limit 65 535 bajtów należy przekonwertować pole źródłowe na typ danych obsługujący większe rozmiary wierszy. Wynika to ze znanego ograniczenia dotyczącego maksymalnego rozmiaru rekordu wiersza. Aby uzyskać więcej informacji, zobacz dokumentację MySQL dotyczącą limitów rozmiaru wiersza.

Typy danych

Informacje o natywnym typie danych są zachowywane i wyświetlane w widokach zestawu danych w kolumnie Natywny typ danych. Jeśli kolumna nie jest widoczna, otwórz selektor kolumn w widoku zestawu danych i wybierz kolumnę Natywny typ danych.

Obsługiwane typy danych
Typy danych Qlik Cloud Typy danych MySQL

BOOL

BOOL

BYTES

Jeżeli długość => 1 i =< 8095, to:

VARBINARY (Length)

Jeżeli długość => 8096 i =< 65535, to:

BLOB

Jeżeli długość => 65536 i =< 16777215, to:

MEDIUMBLOB

Jeżeli długość => 16777216 i =< 2147483647, to:

LONGBLOB

DATE

DATE

TIME

TIME

DATETIME

Jeżeli skala => 0 i =< 6, to:

DECIMAL (p,s)

Jeżeli skala => 7 i =< 12, to:

VARCHAR (37)

INT1

TINYINT

INT2

SMALLINT

INT4

INTEGER

INT8

BIGINT

NUMERIC

Jeżeli skala => 0 i =< 30, to:

DECIMAL (p,s)

Jeżeli skala => 31 i =< 100, to:

VARCHAR (45)

REAL4

FLOAT

REAL8

DOUBLE

STRING

Jeżeli długość => 1 i =< 8095, to:

VARCHAR (Length)

Jeżeli długość => 8096 i =< 65535, to:

TEXT

Jeżeli długość => 65536 i =< 16777215, to:

MEDIUMTEXT

Jeżeli długość => 16777216 i =< 2147483647, to:

LONGTEXT

UINT1

UNSIGNED TINYINT

UINT2

UNSIGNED SMALLINT

UINT4

UNSIGNED INTEGER

UINT8

UNSIGNED BIGINT

WSTRING

Jeżeli długość => 1 i =< 8095, to:

VARCHAR (Length)

Jeżeli długość => 8096 i =< 65535, to:

TEXT

Jeżeli długość => 65536 i =< 16777215, to:

MEDIUMTEXT

Jeżeli długość => 16777216 i =< 2147483647, to:

LONGTEXT

BLOB

Kiedy opcja Zezwalaj na nieograniczony rozmiar obiektów LOB jest włączona:

  • LONGBLOB

Kiedy opcja Ogranicz rozmiar obiektów LOB do jest włączona:

  • Jeżeli określona wartość ma 63 KB lub jest mniejsza, to:

    BLOB

  • Jeżeli określona wartość ma 64 KB lub jest większa, to:

    LONGBLOB

Więcej informacji na temat ograniczania rozmiaru obiektów LOB zawiera temat Metadata.

NCLOB

Kiedy opcja Zezwalaj na nieograniczony rozmiar obiektów LOB jest włączona:

  • TEXT

Kiedy opcja Ogranicz rozmiar obiektów LOB do jest włączona:

  • Jeżeli określona wartość ma 63 KB lub jest mniejsza, to:

    TEXT

  • Jeżeli określona wartość ma 64 KB lub jest większa, to:

    LONGTEXT

Więcej informacji na temat ograniczania rozmiaru obiektów LOB zawiera temat Metadata.

CLOB

Kiedy opcja Zezwalaj na nieograniczony rozmiar obiektów LOB jest włączona:

  • TEXT CHARACTER SET UTF-16

Kiedy opcja Ogranicz rozmiar obiektów LOB do jest włączona:

  • Jeżeli określona wartość ma 63 KB lub jest mniejsza, to:

    TEXT CHARACTER SET UTF-16

  • Jeżeli określona wartość ma 64 KB lub jest większa, to:

    LONGTEXT CHARACTER SET UTF-16

Więcej informacji na temat ograniczania rozmiaru obiektów LOB zawiera temat Metadata.

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ć!