# MARIADB

## Instalacja i Użycie Nginx na Ubuntu 22.04

### Wymagania wstępne

* Dostęp do serwera z systemem Ubuntu 22.04.
* Konto użytkownika z uprawnieniami `sudo`.
* Podstawowa znajomość obsługi terminala.

### Instalacja MariaDB

#### Krok 1: Instalacja MariaDB

Wykonaj polecenie, aby zainstalować MariaDB:

```
sudo apt install mariadb-server mariadb-client -y
```

#### Krok 2: Sprawdzenie statusu MariaDB

Po instalacji sprawdź, czy usługa działa:

```
sudo systemctl status mariadb
```

Oczekiwany wynik powinien zawierać informację `active (running)`.

#### Krok 3: Konfiguracja wstępna MariaDB

Zabezpiecz instalację za pomocą polecenia:

```
sudo mysql_secure_installation
```

Podczas konfiguracji wykonaj następujące kroki:

* Ustaw hasło dla użytkownika root.
* Usuń anonimowych użytkowników.
* Zablokuj zdalny dostęp do konta root.
* Usuń testową bazę danych.
* Odśwież tabelę uprawnień.

#### Krok 4: Testowanie dostępu do MariaDB

Zaloguj się do bazy danych, aby upewnić się, że działa poprawnie:

```
sudo mysql -u root -p
```

Po wpisaniu hasła powinna wyświetlić się konsola MariaDB.\
\
\\

### Użycie MariaDB

#### Podstawowe komendy MariaDB

* **Uruchomienie MariaDB:**

  ```
  sudo systemctl start mariadb
  ```
* **Zatrzymanie MariaDB:**

  ```
  sudo systemctl stop mariadb
  ```
* **Ponowne uruchomienie MariaDB:**

  ```
  sudo systemctl restart mariadb
  ```
* **Dostęp do konsoli MariaDB:**

  ```
  sudo mysql -u root -p
  ```

#### Tworzenie bazy danych i użytkowników

1. Zaloguj się do MariaDB:

   ```
   sudo mysql -u root -p
   ```
2. Utwórz nową bazę danych:

   ```
   CREATE DATABASE example_db;
   ```
3. Utwórz nowego użytkownika:

   ```
   CREATE USER 'example_user'@'localhost' IDENTIFIED BY 'secure_password';
   ```
4. Przyznaj uprawnienia użytkownikowi:

   ```
   GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost';
   ```
5. Zastosuj zmiany:

   ```
   FLUSH PRIVILEGES;
   ```
6. Wyjdź z konsoli:

   ```
   EXIT;
   ```

#### Import i eksport bazy danych

* **Eksport bazy danych:**

  ```
  mysqldump -u example_user -p example_db > backup.sql
  ```
* **Import bazy danych:**

  ```
  mysql -u example_user -p example_db < backup.sql
  ```
