KWALIFIKACJA INF3 - CZERWIEC 2024 (test 2)

PYTANIE NR 24.
CREATE USER 'anna'@'localhost' IDENTIFIED BY '54RTu8'; 
W języku SQL wydano kwerendę, niestety jej wykonanie nie powiodło się i wystąpił błąd: #1396 - Operation CREATE USER failed for 'anna'@'localhost'. Powodem takiego zachowania bazy danych może być
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Komunikat "Operation CREATE USER failed for 'anna'@'localhost'" (błąd #1396) typowo pojawia się, gdy konto o tej samej nazwie i hoście już istnieje, więc nie można utworzyć go ponownie. Pozostałe opcje nie pasują do treści komunikatu: składnia jest poprawna, a błąd nie wskazuje na nieznane polecenie ani walidację hasła.

Pełne wyjaśnienie:

Polecenie CREATE USER 'anna'@'localhost' IDENTIFIED BY '54RTu8'; służy do utworzenia konta w serwerze bazy danych (w praktyce najczęściej MySQL lub MariaDB). W tych systemach konto jest identyfikowane nie tylko nazwą użytkownika, ale też hostem, czyli parą 'użytkownik'@'host'. Oznacza to, że 'anna'@'localhost' jest konkretnym, jednoznacznym kontem.

Błąd #1396 - Operation CREATE USER failed jest charakterystyczny dla sytuacji, gdy operacja utworzenia konta nie może zostać wykonana, ponieważ takie konto już istnieje lub występuje konflikt w definicji kont. W typowym scenariuszu egzaminacyjnym najprostszą i najczęstszą przyczyną jest to, że użytkownik 'anna'@'localhost' został wcześniej utworzony, więc ponowne wywołanie CREATE USER kończy się niepowodzeniem. Wtedy właściwym działaniem jest np. użycie ALTER USER do zmiany hasła albo wcześniejsze usunięcie konta poleceniem DROP USER (z zachowaniem ostrożności).

Odpowiedź "zbyt słabe hasło dla konta anna" może być myląca, bo niektóre konfiguracje mają polityki walidacji haseł, jednak sam komunikat błędu #1396 nie wskazuje na problem jakości hasła, tylko na niepowodzenie operacji CREATE USER dla wskazanego konta.

Odpowiedź "nieznane polecenie CREATE USER" jest nieadekwatna, ponieważ w takiej sytuacji serwer zwracałby błąd składni lub nieznanego polecenia, a nie komunikat o nieudanej operacji utworzenia użytkownika z konkretnym kodem #1396.

Odpowiedź "nieprawidłowa składnia polecenia CREATE USER" również nie pasuje: przedstawona kwerenda ma poprawną, typową składnię dla MySQL/MariaDB. Przy błędzie składni serwer zwykle zwraca komunikat wskazujący miejsce błędu w zapytaniu, a nie błąd "Operation CREATE USER failed".

Wskazówka egzaminacyjna: przy pytaniach o błędy warto czytać pełny komunikat, zwłaszcza fragment z 'użytkownik'@'host'. To często bezpośrednio sugeruje, czy problem dotyczy konfliktu konta, uprawnień, czy składni.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Błąd #1396 ("Operation CREATE USER failed") najczęściej oznacza, że nie da się utworzyć konta o wskazanej nazwie i hoście, bo takie konto już istnieje lub występuje konflikt definicji konta. W praktyce sprawdź, czy istnieje dokładnie użytkownik w formacie 'nazwa'@'host'.
Aplikacja webowa zwykle nie pokazuje kont serwera bazy. Użytkownicy DBMS są przechowywani w systemowych tabelach/zasobach serwera. Dodatkowo w MySQL liczy się para użytkownik+host, więc możesz mieć np. 'anna'@'%' i osobno 'anna'@'localhost'.
Błąd składni zwykle wskazuje, że zapytanie jest niepoprawnie zbudowane i serwer pokazuje miejsce problemu w treści zapytania. Błąd wykonania (jak #1396) oznacza, że składnia została rozpoznana, ale operacja nie może zostać wykonana z powodów logicznych lub administracyjnych (np. konflikt konta).
Tak, w niektórych konfiguracjach serwera mogą działać mechanizmy walidacji haseł i wtedy serwer odrzuci hasło niespełniające wymagań. Jednak typowy komunikat dla polityk haseł różni się od #1396, dlatego przy #1396 najpierw sprawdza się istnienie konta i konflikt 'user'@'host'.
To pełny identyfikator konta: nazwa użytkownika oraz host, z którego wolno się logować. 'localhost' oznacza połączenia z tej samej maszyny. To ważne, bo 'anna'@'localhost' i 'anna'@'%' to dwa różne konta o innych uprawnieniach.
Zamiast tworzyć konto ponownie, standardowo zmienia się hasło istniejącego konta (np. poleceniem typu ALTER USER) lub resetuje dostęp zgodnie z zasadami administracji. Na egzaminie kluczowe jest rozpoznanie, że CREATE USER nie służy do modyfikacji istniejącego konta.
Nie. Składnia zarządzania kontami jest zależna od systemu (MySQL, MariaDB, PostgreSQL, SQL Server). Dlatego w zadaniach trzeba rozpoznać kontekst po poleceniu i treści błędu. W tym typie pytania ważna jest znajomość MySQL/MariaDB.
Częste pomyłki to: ignorowanie części @'host', mylenie CREATE USER z nadawaniem uprawnień, oraz automatyczne wskazywanie "błędu składni" bez analizy komunikatu serwera. Warto zapamiętać, że wiele błędów administracyjnych dotyczy konfliktu kont lub braku uprawnień.
Patrzy się na komunikat: brak uprawnień zwykle wskazuje na "access denied" lub brak uprawnienia do operacji administracyjnej, a konflikt konta wskazuje na niepowodzenie utworzenia konkretnego 'user'@'host'. W zadaniu #1396 sugeruje problem z utworzeniem konta, nie z autoryzacją wykonującego.
Ćwicz na lokalnym serwerze: twórz użytkowników, zmieniaj hasła, usuwaj konta i obserwuj komunikaty. Ucz się rozpoznawać wzorce: konflikt konta, brak uprawnień, błąd składni, problem z hostem. Na egzaminie często wystarczy poprawnie zinterpretować treść błędu.
info

Statystycznie 42% uczniów zna prawidłową odpowiedź. trudne

Eksperci podkreślają: "Komunikat "Operation CREATE USER failed for 'anna'@'localhost'" (błąd #1396) typowo pojawia się, gdy konto o tej samej nazwie i hoście już istnieje, więc nie można utworzyć go ponownie."

Źródła:

  • MySQL 8.0 Reference Manual: CREATE USER Statement — https://dev.mysql.com/doc/refman/8.0/en/create-user.html (dostęp: 2026-02-27)
  • MySQL 8.0 Reference Manual: Account Management Statements (kontekst 'user'@'host') — https://dev.mysql.com/doc/refman/8.0/en/account-management-statements.html (dostęp: 2026-02-27)
  • MySQL 8.0 Reference Manual: Server Error Codes and Messages (kontekst interpretacji błędów serwera) — https://dev.mysql.com/doc/mysql-errors/8.0/en/server-error-reference.html (dostęp: 2026-02-27)

Materiały:

  • Dokumentacja MySQL: polecenie CREATE USER i zarządzanie kontami
  • Dokumentacja MySQL: opis błędu 1396 oraz typowe przyczyny
  • Ćwiczenia praktyczne: tworzenie użytkowników, nadawanie uprawnień, testowanie logowania

Aktualizacja pytania: 03.04.2026



Aktualizacja pytania: 03.04.2026
📡 Brak połączenia internetowego