Krótki tutorial modelowania baz danych w SQL Power Architect – cz. 3 – Ustawienie połączenia z bazą MySQL i wygenerowanie diagramu

W Tutorialu SQL Power Architect część 3 znajdziemy odpowiedź na pytanie w jaki sposób nawiązać połączenie z serwerem MySQL i bazą danych. Dowiemy się także z jakimi problemami możemy się spotkać i jak poradzić sobie z nimi ( JDBC bądź strefą czasową). Pod koniec posta,  na podstawie gotowej bazy w MySQL wygenerujemy diagram – fizyczny model danych.

Jeśli chcemy nawiązać połączenie do serwera MySQL w wersji 8, na początek powinniśmy odwiedzić folder SQL Power Architect przechowujący connector-y JDBC do różnych systemów baz danych. Katalog nazywa się jdbc :

Jeśli w katalogu nie jest zamieszczony plik JAR jdbc dla wersji 8 MySQL, powinniśmy go ściągnąć i skopiować do tego katalogu. Wchodzimy na stronę:

http://dev.mysql.com/downloads/connector

Jeśli poszukujemy connector-a dla systemu operacyjnego Windows możemy kliknąć na przycisk Go to Download Page . Zostaniemy przeniesieni do strony z instalatorami dla Windows.

Inną opcją jest wybranie z listy Selecting Operating System ... elementu Platform Independent .

Pojawi się strona z wyborem pliku ZIP lub TAR:

Dla Windows wybieramy plik ZIP.

Klikamy na No thanks, just start my download jeśli nie chcemy się rejestrować lub logować na stronie.

Pojawi się okno z akceptacją do ściągnięcia pliku ZIP. Po  ściągnięciu rozpakowujemy plik ZIP. Kopiujemy w nim plik jar dla MySQL 8:

i wklejamy do katalogu jdbc programu SQL Power Architect :

Teraz przechodzimy do programu, aby spróbować nawiązać połączenie z bazą danych. Z menu wybieramy Connection->Add Source Connection->New Connection :

Pojawi się okno New Connection :

Uzupełniamy pola. W pole Connection Name wpisujemy nazwę połączenia, najlepiej jeśli będzie wskazywała na nazwę serwera i nazwę bazy danych. Z listy Database Type wybieramy MySQL . W pole Hostname wpisujemy localhost , jeśli nasz serwer działa lokalnie na komputerze, numer portu, domyślnie jest to 3306 i wpisujemy nazwę bazy danych, którą mamy na serwerze, a z którą chcemy się połączyć. Poniżej automatycznie wypełni się pole JDBC URL , które w razie potrzeby możemy uzupełnić. Należy pamiętać o wpisaniu nazwy użytkownika i hasła, które nadaliśmy podczas instalacji serwera MySQL. U mnie jest to standardowy użytkownik root .

Sprawdzamy, czy działa połączenie klikając na przycisk Test Connection . Jeśli pojawiło się okno Error Report próbujemy rozwiązać problem poprzez podgląd szczegółów.

Po kliknięciu na przycisk Show Details możemy dowiedzieć się czegoś więcej.

Po uzyskaniu potrzebnych informacji okno błędów zamykamy. Musimy naprawić błąd połączenia klienta z serwerem. Wracamy więc do danych sterownika JDBC. Z menu wybieramy Connection->database Connection Manager :

Pojawi się okno Database Connection Manager :

Klikamy w nim na przycisk JDBC Drivers . Pojawi się okno JDBC Drivers , w którym w dolnej sekcji będzie widoczna ścieżka do connector-a. My jednak korzystamy z nowszego, więc potrzebujemy zaimportować nowy, który skopiowaliśmy do katalogu jdbc programu SQL Power Architect.

Klikamy na przycisk Add JAR . Zaznaczamy plik connectora z katalogu jdbc programu SQL Power Architect:

Potwierdzam wybór przyciskiem Open . W oknie JDBC Drivers pojawi się na liście nasz connector. Starsza wersję connectora możemy zaznaczyć i kliknąć na przycisk Remove JAR , aby usunąć stary:

Teraz na liście widnieje tylko ścieżka do nowego connectora:

Zmiany zatwierdzamy przyciskiem OK . Okno Database Connection Manager zamykamy klikając na przycisk Close :

Teraz ponownie próbujemy utworzyć połączenie do bazy danych MySQL.

Po kliknięciu na Test Connection ponownie pojawiło się okno błędu:

Tym razem problem to strefa czasowa. Jak go rozwiązać? W  ustawieniach połączenia powinniśmy w polu JDBC URL dodac na końcu url-a właściwość serverTimezone z warością w postaci nazwy strefy czasowej, dla Polski jest to Europe/Warsaw. Możemy też ustawić UTC, czyli uniwersalny czas. W naszym przypadku na końcu adresu url dopisujemy(znak zapytania jest separatorem i wskazuje że od tego miejsca będą się pojawiały właściwości z wartościami, które z kolei, gdy jest ich więcej niż 1 oddzielamy znakiem &):

?serverTimezone=Europe/Warsaw

Połączenie sprawdzamy klikając na przycisk Test Connection , a jeśli otrzymamy informację Connection test successful możemy zatwierdzić ustawienia połączenia wciskając przycisk OK . W oknie programu pojawi się lista baz danych serwera MySQL.

Rozwijamy węzeł z nasza bazą danych music:

Gdy przeciągniemy węzeł music, diagram tej bazy pojawi się głównym oknie programu:

Gdy tabele są obok siebie ułożone i nie widać połączeń między nimi wystarczy klikając na tytuł tabeli przesunąć ją nieco dalej.

Dla osób preferujących wersję video jest dostępny film na kanale LikeData na YouTube, zapraszam do oglądania i komentowania: