Directus: Błąd Directus "🚨 ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server"

Ta dokumentacja jest częścią przewodnika Zewnętrzne bazy danych. Pełny przewodnik znajdziesz tutaj: Jak połączyć Directus z bazą danych MySQL, MariaDB lub PostgreSQL.

👋 Witamy w dokumentacji Stackhero!

Stackhero oferuje usługę Directus cloud, która jest gotowa do użycia produkcyjnego w zaledwie 2 minuty:

  • Nielimitowane kolekcje, elementy, użytkownicy, role, zapytania API oraz transfery danych
  • Własna nazwa domeny z wbudowanym HTTPS dla bezpiecznego dostępu (na przykład, https://cms.twoja-firma.com)
  • Dedykowany serwer email do nieograniczonej wysyłki maili transakcyjnych i powiadomień
  • Zintegrowany cache Redis dla wysokiej wydajności
  • Stała wydajność i wysoki poziom bezpieczeństwa dzięki prywatnej, dedykowanej infrastrukturze
  • Aktualizacje jednym kliknięciem pozwalają utrzymać system zawsze aktualny przy minimalnym wysiłku

Skup się na swoim projekcie, nie na konfiguracji: możesz przetestować rozwiązanie Directus cloud od Stackhero w zaledwie 5 minut.

Jeśli zobaczysz błąd 🚨 ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client podczas korzystania z serwera MySQL, który używa nowego uwierzytelniania SHA2, Directus nie będzie mógł się poprawnie połączyć. Rozwiązaniem jest przejście na tradycyjne natywne uwierzytelnianie MySQL.

  1. Jeśli używasz phpMyAdmin, przejdź do Konta użytkowników, wybierz swojego użytkownika Directus, kliknij Zmień hasło i wprowadź swoje hasło. Upewnij się, że wybierasz Natychmiastowe uwierzytelnianie MySQL jako metodę haszowania hasła.

  2. Alternatywnie, możesz uruchomić następujące polecenia SQL za pomocą CLI. Zamień directus na swoją nazwę użytkownika i mySecretPassword na wybrane hasło:

    ALTER USER 'directus'@'%' IDENTIFIED WITH 'mysql_native_password' BY 'mySecretPassword';
    FLUSH PRIVILEGES;
    

Postępując zgodnie z tymi krokami, zapewnisz, że Twoja instalacja Directus na Stackhero korzysta z zewnętrznej bazy danych zaprojektowanej dla środowiska produkcyjnego, oferując lepszą wydajność i niezawodność.