Zum Hauptinhalt springen
Die meisten Datenbankverbindungsfehler auf Square Cloud lassen sich auf eines von drei Dingen zurückführen: ein fehlendes SSL-Zertifikat, eine IP-Allowlist, die eine dynamische IP nicht berücksichtigt, oder falsche Zugangsdaten. Finde die genaue Meldung unten.

”Host ‘X’ is not allowed to connect to this MySQL server”

Was es bedeutet: der MySQL-Client lehnt die Verbindung mit genau dieser Meldung ab. Warum es passiert: die von Square Cloud gehosteten Datenbanken erfordern SSL für jede Verbindung. Diese Meldung erscheint, wenn die Verbindung ohne geladenes Zertifikat versucht wird, nicht wegen einer Firewall/Host-Allowlist, wie die Meldung suggeriert. So behebst du es:
  1. Öffne die Datenbank im Square Cloud Dashboard und lade die Zertifikatsdateien herunter (CA, Cert, Key, meist 2-3 Felder).
  2. Lade sie in der SSL/TLS-Konfiguration deines Clients:
    • GUI-Clients (MySQL Workbench, DBeaver, HeidiSQL): konfiguriere die heruntergeladenen Zertifikatsdateien im SSL-Tab des Clients und verbinde dich dann mit dem im Dashboard angezeigten Host/Port/Benutzer/Passwort.
    • Code (Prisma ORM): wandle das Client-Zertifikat+Schlüssel in eine .p12 um:
      Setze dann:
      Liefere client.p12 innerhalb der .zip der App aus und setze DATABASE_URL in den Umgebungsvariablen des Dashboards.
  3. Überprüfe, ob Benutzername und Passwort mit den im Dashboard angezeigten übereinstimmen, und starte die Datenbank neu, falls das Zertifikat gerade erst generiert wurde.
Committe certificate.pem oder client.p12 niemals in ein öffentliches Repository, halte es aus der Versionskontrolle heraus, aber füge es in die Deploy-.zip ein, wenn deine App es von der Festplatte liest.

MongoNetworkError und MongoDB Atlas IP-Whitelist-Fehler

Was es bedeutet: ein extern gehosteter MongoDB-Atlas-Cluster (keine von Square Cloud verwaltete Datenbank) lehnt die Verbindung mit MongoNetworkError: connection ... closed ab, obwohl die Zugangsdaten korrekt sind. Warum es passiert: Anwendungscontainer von Square Cloud verwenden eine dynamische IPv4-Adresse, die sich bei jedem Neustart ändert. Eine MongoDB-Atlas-IP-Allowlist, die für eine einzelne statische IP konfiguriert ist, funktioniert bis zum nächsten Neustart und bricht dann stillschweigend ab. So behebst du es, wähle eine Option:
  1. Empfohlen, wenn du externes Atlas benötigst: füge in Atlas → Network Access 0.0.0.0/0 hinzu, um Verbindungen von jeder IP zuzulassen, und kompensiere die weitere Allowlist mit starken Zugangsdaten (langes zufälliges Passwort, dedizierter Datenbankbenutzer, Connection String nur in Umgebungsvariablen).
  2. Insgesamt empfohlen: verschiebe die Datenbank stattdessen zu einer von Square Cloud verwalteten Datenbank anstelle eines externen Atlas-Clusters. Das Hosting der Datenbank neben der App beseitigt das IP-Allowlist-Problem vollständig und bietet nahezu keine Latenz.

Verbindungs-Timeout und ECONNREFUSED

Was es bedeutet: die App hängt, bis sie in ein Timeout läuft, oder schlägt sofort mit ECONNREFUSED fehl, wenn sie versucht, eine Datenbank zu erreichen. Warum es als Faustregel passiert:
  • Ein Timeout (die Verbindung hängt, keine sofortige Ablehnung) bedeutet meist, dass eine Firewall oder IP-Allowlist auf der Zieldatenbank die Verbindung blockiert. Viele externe Anbieter blockieren Rechenzentrums-/ausländische IPs standardmäßig.
  • Ein sofortiges ECONNREFUSED oder “authentication failed” bedeutet meist, dass Host/Port erreichbar sind, aber die Zugangsdaten, der Datenbankname oder die Portnummer falsch sind.
So behebst du es:
  1. Wenn du dich mit einem externen Anbieter verbindest (keine von Square Cloud verwaltete Datenbank), erlaube die ASNs von Square Cloud in der Ziel-Firewall: 398395 und 26548. Wo nur IP-basierte Allowlists unterstützt werden (wie bei MongoDB Atlas), verwende stattdessen 0.0.0.0/0 mit starken Zugangsdaten, da die Quell-IP dynamisch ist.
  2. Vergleiche Host, Port, Benutzername und Passwort noch einmal mit dem, was der Anbieter oder das Square Cloud Dashboard anzeigt.
  3. URL-encode alle Sonderzeichen im Connection String (@, :, / usw. in einem Passwort führen unverändert zu Parsing-Fehlern).
  4. Prüfe, ob der Treiber des Anbieters einen expliziten Parameter ssl=true (oder ähnlich) im Connection String erfordert.

SSL/TLS-Verbindungsfehler

Was es bedeutet: der Client kann keinen TLS-Handshake mit der Datenbank herstellen, oder schlägt direkt danach mit einem wie Authentifizierung aussehenden Fehler fehl, der tatsächlich ein Zertifikatsproblem ist. Warum es passiert: von Square Cloud verwaltete Datenbanken erfordern SSL bei jeder Verbindung. Jede Datenbank-Engine erwartet das Zertifikat in einer leicht anderen Form:
  • Redis: das Protokoll muss rediss:// sein (mit zwei s), niemals redis://. Form: rediss://default:PASSWORD@HOST:PORT. node-redis akzeptiert auch socket: { tls: true, ca: fs.readFileSync("certificate.pem") }; Pythons redis-Bibliothek nimmt ssl_ca_certs/ssl_certfile/ssl_keyfile (das kombinierte, aus dem Dashboard heruntergeladene certificate.pem funktioniert für alle davon).
  • Drizzle ORM (Postgres): ein Standard-pg-Pool mit ssl: { ca, cert, key }, alle über fs.readFileSync aus dem kombinierten certificate.pem geladen, und dasselbe ssl-Objekt in drizzle.config.ts.
  • JDBC (Java): der Client-Schlüssel muss in das Format PK8/DER konvertiert und in den SSL-Eigenschaften der JDBC-URL referenziert werden.
So behebst du es: lade das Zertifikat erneut von der Seite der Datenbank im Dashboard herunter (eine alte oder unvollständige Zertifikatsdatei ist eine häufige Ursache), bestätige, dass der Connection String das TLS-fähige Protokoll/Schema für deine Engine verwendet, und starte die Datenbank neu, falls du sie gerade erst erstellt hast. Wie du eine verwaltete Datenbank von Grund auf erstellst und dich mit ihr verbindest, erfährst du unter Datenbanken.
Wenn die Fehlermeldung zu nichts oben Genanntem passt, kann dir unser Support-Team helfen, den genauen Verbindungsfehler zu diagnostizieren.

Kontaktiere uns

Falls du weiterhin technische Schwierigkeiten hast, steht dir unser spezialisiertes Support-Team zur Verfügung. Kontaktiere uns und wir helfen dir gerne, jedes Problem zu lösen — die Qualität unseres Supports ist ein wichtiger Grund, warum Entwickler Square Cloud mit 4,9/5 bei 402 Bewertungen auf Google und Trustpilot bewerten.