Directus: Externe databases
Hoe Directus te verbinden met een MySQL-, MariaDB- of PostgreSQL-database
👋 Welkom bij de Stackhero-documentatie!
Stackhero biedt een Directus cloud service, klaar voor gebruik in productie, in slechts 2 minuten:
- Onbeperkte collecties, items, gebruikers, rollen, API-verzoeken en overdrachten
- Aanpasbare domeinnaam beveiligd met HTTPS (bijvoorbeeld, https://cms.uw-bedrijf.com)
- Toegewijde en onbeperkte e-mail server inbegrepen
- Redis-cache server inbegrepen voor hoge prestaties
- Optimale prestaties en robuuste beveiliging aangedreven door een privé en toegewijde VM.
- Updates met één klik voor moeiteloos onderhoud
Bespaar tijd en vereenvoudig uw leven: het kost slechts 5 minuten om Stackhero's Directus cloud-oplossing te proberen!
Directus-instanties op Stackhero zijn standaard geconfigureerd met een SQLite-database. Dit maakt het eenvoudig om snel te beginnen, zodat u het platform kunt verkennen of binnen enkele minuten tests kunt uitvoeren. Voor productieomgevingen wordt echter een robuustere externe database aanbevolen.
Directus verbinden met een MySQL- of MariaDB-database
-
Maak eerst een gebruiker aan voor Directus op MySQL of MariaDB. Open phpMyAdmin en ga naar Gebruikersaccounts gevolgd door Gebruikersaccount toevoegen.
-
Geef een gebruikersnaam op (bijvoorbeeld
directus). Stel een veilig wachtwoord in door op de knop Genereren te klikken, kies Native MySQL-authenticatie, en vink Maak database met dezelfde naam en geef alle privileges aan.
Directus-gebruikersaanmaak op een MySQL/MariaDB-database -
Log vervolgens in op uw Stackhero-dashboard. Selecteer uw Directus-service en klik op Configureren.
-
Kies in het configuratiescherm onder Database voor MySQL/MariaDB en vul de resterende velden in zoals weergegeven in de onderstaande schermafbeelding.
Configuratie van MySQL/MariaDB voor Directus
Directus verbinden met een PostgreSQL-database
-
Begin met het aanmaken van een gebruiker voor Directus op PostgreSQL. Open PgAdmin, vouw servers > postgresql uit, klik met de rechtermuisknop op Login/Groep Rollen, en selecteer Aanmaken > Login/Groep Rol....
-
Voer in het veld Naam
directusin. -
Ga naar het tabblad Definitie en stel een sterk, veilig wachtwoord in.
-
Ga vervolgens naar het tabblad Privileges, vink Kan inloggen aan, en sla de nieuwe gebruiker op.
Directus-gebruikersaanmaak op een PostgreSQL-database -
Maak nu een database aan voor Directus. Klik met de rechtermuisknop op Databases en kies Aanmaken > Database.
-
Voer
directusin het veld Database in, selecteerdirectusals eigenaar, en sla uw wijzigingen op.
Directus-databaseaanmaak op PostgreSQL -
Navigeer ten slotte naar uw Stackhero-dashboard, selecteer uw Directus-service, en klik op Configureren.
-
Selecteer onder Database PostgreSQL en vul de aanvullende velden in zoals hieronder weergegeven.
Configuratie van PostgreSQL voor Directus
Directus-fout "🚨 ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server"
Als u de foutmelding 🚨 ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client ziet bij het gebruik van een MySQL-server die de nieuwe caching SHA2-authenticatie gebruikt, kan Directus niet correct verbinden. De oplossing is om over te schakelen naar de traditionele native MySQL-authenticatie.
-
Als u phpMyAdmin gebruikt, ga naar Gebruikersaccounts, selecteer uw Directus-gebruiker, klik op Wachtwoord wijzigen, en voer uw wachtwoord in. Zorg ervoor dat u Native MySQL-authenticatie kiest als wachtwoordhashmethode.
-
U kunt ook de volgende SQL-commando's uitvoeren met behulp van de CLI. Vervang
directusdoor uw gebruikersnaam enmySecretPassworddoor uw gekozen wachtwoord:ALTER USER 'directus'@'%' IDENTIFIED WITH 'mysql_native_password' BY 'mySecretPassword'; FLUSH PRIVILEGES;
Door deze stappen te volgen, zorgt u ervoor dat uw Directus-installatie op Stackhero een externe database gebruikt die geschikt is voor een productieomgeving, wat verbeterde prestaties en betrouwbaarheid biedt.