Praca w wierszu poleceń (mysql.exe) jest niezwykle potężna i niezbędna w automatyzacji czy pracy na zdalnych serwerach. Ma jednak swoje ograniczenia w codziennej pracy deweloperskiej:
INSERT czy UPDATE dla pojedynczych rekordów jest czasochłonne.Narzędzia GUI rozwiązują te problemy, oferując wizualny interfejs do interakcji z bazą danych. W tym zadaniu szczegółowo przeanalizujemy trzy popularne, darmowe narzędzia, wykonując na każdym z nich praktyczne zadania.
HeidiSQL to program instalowany bezpośrednio w systemie Windows. Komunikuje się z serwerem MariaDB za pomocą protokołu TCP/IP. Oznacza to, że nawet jeśli serwer działa na tym samym komputerze, połączenie odbywa się przez lokalny stos sieciowy (adres 127.0.0.1). Taka architektura zapewnia maksymalną wydajność, ponieważ cała logika interfejsu użytkownika jest wykonywana bezpośrednio na Twoim komputerze, a przez sieć przesyłane są tylko zapytania i wyniki.
+-------------------------------------------------+
| Menedżer sesji: [Lokalny XAMPP]                 |
+-------------------------------------------------+
| Ustawienia                                      |
|-------------------------------------------------|
| Typ sieci:      | MariaDB or MySQL (TCP/IP) [v] |
| Biblioteka:     | libmariadb.dll            [v] |
| Nazwa hosta/IP: | 127.0.0.1___________________  |
| Użytkownik:     | root________________________  |
| Hasło:          | ********************________  |
| Port:           | 3306________________________  |
| Bazy danych:    | ____________________________  |
|                 +-----------------------------+ |
|                 | [ Zapisz ]    [ Otwórz ]    | |
+-------------------------------------------------+
    
    Zadanie polega na stworzeniu nowej tabeli gatunki za pomocą wizualnego edytora, co jest jedną z największych zalet HeidiSQL.
biblioteka.Utwórz nowy -> Tabela.gatunki. Następnie, w siatce poniżej, dodaj dwie kolumny, klikając "Dodaj":
        id_gatunku, Typ danych: INT, Domyślnie: Brak, zaznacz pole AUTO_INCREMENT.nazwa, Typ danych: VARCHAR, Długość: 100.id_gatunku i wybierz Utwórz nowy indeks -> PRIMARY.Twoje kliknięcia zostały przetłumaczone na następujące polecenie SQL, które HeidiSQL wysłało do serwera:
CREATE TABLE `gatunki` (
  `id_gatunku` INT(11) NOT NULL AUTO_INCREMENT,
  `nazwa` VARCHAR(100) NULL DEFAULT NULL,
  PRIMARY KEY (`id_gatunku`)
) COLLATE='utf8mb4_polish_ci';
      
    Adminer to pojedynczy plik PHP, który umieszczasz na serwerze WWW. Kiedy otwierasz go w przeglądarce, następuje następujący proces:
adminer.php.Jest to idealne rozwiązanie, gdy nie masz możliwości instalacji oprogramowania, np. na serwerze hostingowym.
Zadanie polega na zaimportowaniu danych do nowo utworzonej tabeli gatunki za pomocą pliku SQL, co jest częstą operacją podczas wdrażania aplikacji.
gatunki.sql i wklej do niego poniższą zawartość:
INSERT INTO `gatunki` (`nazwa`) VALUES
('Powieść historyczna'),
('Science Fiction'),
('Fantasy'),
('Kryminał');
      
      http://localhost/adminer.php i zaloguj się do bazy.biblioteka, a następnie wybierz opcję "Import".gatunki.sql i kliknij "Wykonaj". Adminer przetworzy plik i doda 4 nowe rekordy do tabeli.gatunki i wybierz "Pokaż dane", aby upewnić się, że rekordy zostały dodane.Architektura phpMyAdmin jest identyczna jak w przypadku Adminera, ale jest to znacznie bardziej rozbudowana aplikacja, składająca się z setek plików PHP, szablonów i bibliotek. Oferuje najszerszy zakres funkcji, często kosztem wydajności i przejrzystości interfejsu.
Zadanie polega na stworzeniu nowego użytkownika z ograniczonymi prawami wyłącznie za pomocą interfejsu graficznego.
reporterlocalhostReportPass123!reporter@localhost i kliknij "Edytuj uprawnienia".biblioteka i kliknij "Wykonaj".phpMyAdmin wykonał za Ciebie następujące polecenia SQL:
-- Krok 1: Stworzenie użytkownika
CREATE USER 'reporter'@'localhost' IDENTIFIED BY '***';
-- Krok 2: Nadanie uprawnień
GRANT SELECT ON `biblioteka`.* TO 'reporter'@'localhost';
-- Krok 3: Zastosowanie zmian
FLUSH PRIVILEGES;
      
    Wybór narzędzia zależy od kontekstu i osobistych preferencji. Poniższa tabela stanowi rozszerzone podsumowanie.
| Cecha | HeidiSQL | Adminer | phpMyAdmin | 
|---|---|---|---|
| Architektura | Natywna aplikacja desktopowa | Pojedynczy skrypt PHP | Złożona aplikacja PHP | 
| Instalacja | Wymagany instalator | Skopiowanie 1 pliku | Rozpakowanie archiwum (preinstalowany w XAMPP) | 
| Wydajność UI | Bardzo wysoka | Wysoka | Średnia | 
| Złożoność UI | Średnia, przejrzysta | Niska, minimalistyczna | Wysoka, może przytłaczać | 
| Najlepszy dla... | Deweloperów i adminów pracujących na Windows, ceniących szybkość i zaawansowane funkcje. | Szybkiej edycji danych na zdalnym serwerze, gdzie nie można nic instalować. | Początkujących oraz do zarządzania bazą na hostingu współdzielonym. |