MySQL
Wyszukiwarka
Wprowadzenie do MySQL
Tworzenie i modyfikowanie tabel
- Zapytanie CREATE: Tworzenie tabeli
- Instrukcja ALTER: Modyfikacja tabeli
- Zapytanie DROP: Usuwanie tabeli
Zapytania pobierające dane
- Zapytanie SELECT: Podstawy
- Zapytanie SELECT: Klauzula WHERE
- Zapytanie SELECT: Sortowanie danych (ORDER BY)
- Zapytanie SELECT: Filtrowanie danych (LIKE, IN, BETWEEN)
Zapytania modyfikujące dane
- Zapytanie INSERT: Dodawanie danych
- Zapytanie UPDATE: Aktualizacja danych
- Zapytanie REPLACE: Zastępowanie danych
Zapytania usuwające dane
Złączenia i relacje
- Podstawy złączeń (JOIN): INNER JOIN
- Zewnętrzne złączenia (OUTER JOIN)
- Złączenia CROSS JOIN i SELF JOIN
- Tworzenie relacji między tabelami
Funkcje agregujące i grupowanie
- Funkcje agregujące: COUNT, SUM, AVG
- Grupowanie danych: GROUP BY i HAVING
- Zapytania z funkcjami MAX i MIN
Zarządzanie użytkownikami
- Tworzenie nowego użytkownika
- Przydzielanie uprawnień użytkownikom
- Usuwanie użytkowników i cofanie uprawnień
- Zarządzanie hasłami użytkowników
Zaawansowane funkcje MySQL
- Transakcje w MySQL: BEGIN, COMMIT, ROLLBACK
- Tworzenie widoków (VIEWS)
- Procedury składowane: Tworzenie i wywoływanie
- Funkcje użytkownika (USER FUNCTIONS)
Zarządzanie hasłami użytkowników
Bezpieczne zarządzanie hasłami użytkowników w MySQL jest kluczowe dla ochrony danych w bazie. W tym artykule omówimy, jak zmieniać hasła użytkowników, jak je resetować oraz jakie dobre praktyki należy stosować, aby zapewnić wysoki poziom bezpieczeństwa bazy danych.
📌Zmiana hasła użytkownika w MySQL
✅ Podstawowa składnia - opis
- Komenda SET PASSWORD służy do zmiany hasła dla istniejącego użytkownika.
- nazwa_uzytkownika: Określa nazwę użytkownika, którego hasło chcemy zmienić.
- adres: Określa adres, z którego użytkownik może się logować (np. localhost)
- nowe_haslo: Określa nowe hasło, które będzie używane przez użytkownika.
Przykład
-- Podstawowa składnia
SET PASSWORD FOR 'nazwa_uzytkownika'@'adres' = PASSWORD('nowe_haslo');
-- Przykład: Zmiana hasła użytkownika admin
SET PASSWORD FOR 'admin'@'localhost' = PASSWORD('nowehaslo123');
📌 Zmiana hasła za pomocą ALTER USER
✅ Podstawowa składnia - opis
- Komenda ALTER USER umożliwia zmianę hasła dla użytkownika.
- Wartość IDENTIFIED BY pozwala przypisać nowe hasło do użytkownika.
Przykład
-- Podstawowa składnia
ALTER USER 'nazwa_uzytkownika'@'adres' IDENTIFIED BY 'nowe_haslo';
-- Przykład: Zmiana hasła użytkownika admin
ALTER USER 'admin'@'localhost' IDENTIFIED BY 'nowehaslo456';
📌 Resetowanie hasła użytkownika
✅ Podstawowa składnia - opis
- W przypadku zapomnianego hasła, możemy zresetować je ręcznie za pomocą zapytania do tabeli mysql.user.
- Pamiętaj, że po zmianie hasła dla użytkownika należy wykonać FLUSH PRIVILEGES, aby zastosować zmiany.
Przykład
-- Podstawowa składnia
UPDATE mysql.user SET authentication_string = PASSWORD('nowe_haslo') WHERE User = 'nazwa_uzytkownika' AND Host = 'adres';
-- Przykład: Resetowanie hasła użytkownika admin
UPDATE mysql.user SET authentication_string = PASSWORD('nowehaslo789') WHERE User = 'admin' AND Host = 'localhost';
FLUSH PRIVILEGES;
-- To zapytanie resetuje hasło użytkownika admin na nowehaslo789 i wykonuje FLUSH PRIVILEGES w celu odświeżenia uprawnień.
📌 Sprawdzanie, czy użytkownik ma hasło
✅ Podstawowa składnia - opis
- Zapytanie to pozwala na sprawdzenie, czy użytkownik ma przypisane hasło w systemie MySQL.
- authentication_string przechowuje zaszyfrowane hasło użytkownika.
Przykład
-- Podstawowa składnia
SELECT User, Host, authentication_string FROM mysql.user WHERE User = 'nazwa_uzytkownika';
-- Przykład: Sprawdzanie hasła użytkownika admin
SELECT User, Host, authentication_string FROM mysql.user WHERE User = 'admin';
Podsumowanie
- Zmiana hasła użytkownika w MySQL może być przeprowadzona za pomocą komendy SET PASSWORD lub ALTER USER.
- Do resetowania hasła można użyć zapytania do tabeli systemowej `mysql.user` i następnie wykonać FLUSH PRIVILEGES.
- Komenda UPDATE w tabeli `mysql.user` umożliwia ręczną zmianę hasła użytkownika, nawet w przypadku zapomnienia.
- Po każdej zmianie hasła, ważne jest, aby odświeżyć uprawnienia, używając komendy FLUSH PRIVILEGES.
- W MySQL hasła użytkowników są przechowywane w zaszyfrowanej formie w tabeli `mysql.user`.