Ćwiczenie – Systemy zarządzania bazami danych (INF.03)

1. Typy systemów zarządzania bazami danych

Cel: Uczeń zna różne rodzaje SZBD i ich zastosowania.
Opis: Systemy zarządzania bazami danych (SZBD) dzielimy na lokalne, serwerowe i rozproszone. Najczęściej używane systemy to: MS Access, MySQL, MSSQL i Oracle.
| System  | Typ        | Zastosowanie                    |
|----------|-------------|--------------------------------|
| MS Access | lokalny    | Małe projekty, nauka           |
| MySQL     | serwerowy  | Strony WWW, PHP, XAMPP         |
| MSSQL     | serwerowy  | Firmy, aplikacje .NET          |
| Oracle    | serwerowy  | Duże systemy korporacyjne      |
  
Systemy serwerowe (MySQL, MSSQL, Oracle) pozwalają na dostęp wielu użytkowników jednocześnie.

2. Instalacja lokalnych SZBD

Cel: Uczeń potrafi zainstalować lokalny system baz danych.
Opis: Lokalny SZBD działa na komputerze użytkownika – np. MS Access lub MySQL w trybie lokalnym.
1. Pobierz pakiet XAMPP z https://www.apachefriends.org
2. Zainstaluj i uruchom program.
3. W panelu XAMPP włącz serwery Apache i MySQL.
4. Otwórz przeglądarkę i wpisz: http://localhost/phpmyadmin
5. Utwórz nową bazę danych, np. 'szkola'.
  
Instalacja lokalna umożliwia naukę SQL bez potrzeby łączenia się z siecią.

3. Instalacja SZBD w środowisku klient–serwer

Cel: Uczeń rozumie zasadę działania modelu klient–serwer.
Opis: W tym modelu baza danych działa na serwerze, a użytkownicy łączą się zdalnie.
Host: 192.168.0.10
Port: 3306
Użytkownik: uczen
Hasło: haslo123
Baza: szkola

Przykład w PHP:
$conn = new mysqli("192.168.0.10", "uczen", "haslo123", "szkola");
if ($conn->connect_error) { die("Błąd połączenia"); }
echo "Połączono z serwerem!";
  
Model klient–serwer umożliwia współpracę wielu użytkowników z jednym serwerem baz danych.

4. Wstępna konfiguracja SZBD

Cel: Uczeń potrafi skonfigurować podstawowe parametry bezpieczeństwa.
Opis: Po instalacji SZBD należy ustawić port, hasło administratora i utworzyć konta użytkowników.
-- Zmiana hasła administratora MySQL
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NoweHaslo!';

-- Utworzenie nowego użytkownika
CREATE USER 'uczen'@'localhost' IDENTIFIED BY 'haslo123';

-- Nadanie uprawnień do bazy danych
GRANT ALL PRIVILEGES ON szkola.* TO 'uczen'@'localhost';
FLUSH PRIVILEGES;
  
Zabezpieczenie serwera obejmuje także zmianę portu domyślnego (np. 3306 → 3310) i tworzenie kopii zapasowych.

5. Pakiet XAMPP – instalacja i konfiguracja

Cel: Uczeń potrafi uruchomić serwer Apache i MySQL w XAMPP.
Opis: XAMPP to pakiet serwerowy zawierający Apache, MySQL, PHP i phpMyAdmin.
📂 C:\xampp\
 ┣ 📁 apache        → serwer WWW
 ┣ 📁 mysql         → baza danych
 ┣ 📁 htdocs        → katalog stron (PHP)
 ┣ 📄 xampp-control.exe → panel uruchamiający
  
Po uruchomieniu Apache i MySQL wejdź na http://localhost i sprawdź działanie środowiska.

6. Zasady zarządzania SZBD

Cel: Uczeń rozumie pojęcia: instancja, pliki danych i logi transakcyjne.
Opis: Każdy SZBD przechowuje dane w określonych plikach. Administrator powinien dbać o ich integralność i kopie zapasowe.
📄 baza.mdf  – główny plik danych (MSSQL)
📄 baza.ldf  – logi transakcji (MSSQL)
📄 tabela.frm / ibd – pliki tabel (MySQL)
📄 baza.accdb – baza danych (MS Access)
  
Regularne tworzenie kopii zapasowych i monitorowanie logów to podstawa bezpieczeństwa bazy danych.

7. Zadanie końcowe – administracja SZBD

Po wykonaniu zadania uczeń potrafi zainstalować, skonfigurować i zarządzać systemem baz danych.