Kategorien anzeigen

Wie man eine MySQL-Datenbank als sichere REST-API bereitstellt

11 Minuten Lesezeit

MySQL-Logo MySQL REST-API

Wandeln Sie eine MySQL-Abfrage in eine sichere REST-API — keine Express-App, kein Server zum Hosten.

Speichern Sie eine SQL-Abfrage für Ihre MySQL-Datenbank, erstellen Sie einen individuellen API-Schlüssel und stellen Sie einem Partner einen aktiven JSON-Endpunkt zur Verfügung. Kein PHP- oder Node-Service muss entwickelt werden, keine offenen Sicherheitsupdates. 3306 Port, keine gemeinsam genutzten Anmeldeinformationen – nur ein verwalteter, schreibgeschützter Port MySQL REST-API in Minuten.

Keine eingehenden Ports Schlüssel pro Empfänger Schreibgeschützt erzwungen Nichts zum Ausrollen

Query Streams ist eine sichere Echtzeit-Datenbankintegrationsplattform, die jede gespeicherte MySQL-Abfrage in einen partnerfähigen REST-API-Endpunkt umwandelt – mit empfängerspezifischen Schlüsseln, Schreibschutz und einem vollständigen Prüfprotokoll. Du bekommst ein Live-Video MySQL REST-API ohne ein Backend zu schreiben, einen Datenbankport zu öffnen oder ein Gateway zu hosten. Weitere Informationen finden Sie unter QueryStreams.com. und kostenlos anmelden Veröffentlichen Sie Ihren ersten MySQL-Endpunkt in wenigen Minuten.

Warum sollte man eine MySQL-Datenbank als REST-API bereitstellen?

Früher oder später benötigt jemand außerhalb Ihres Teams Daten, die in MySQL gespeichert sind – ein Kunde möchte seine Zahlen in einem Dashboard sehen, ein Lieferant wünscht sich einen Live-Feed anstelle einer nächtlichen CSV-Datei, oder die Anwendung eines Partners muss auf einen Teil Ihrer Tabellen zugreifen. Die üblichen Lösungsansätze bergen alle Risiken. Sie versenden E-Mail-Exporte, die bereits veraltet sind, Sie stellen einen schreibgeschützten MySQL-Benutzer bereit, der das Projekt überdauert, oder Sie richten einen kleinen PHP- oder Node-Dienst ein und übernehmen dessen Authentifizierung, TLS und Patching für immer. MySQL REST-API Das ist die saubere Version – der Partner erhält eine URL und ein Token, nicht Ihre Datenbank. Die Herausforderung bestand schon immer darin, diese API sicher zu entwickeln und zu betreiben. Query Streams macht daraus eine gespeicherte Abfrage plus einen Schlüssel.

Kein offener MySQL-Port

Du legst niemals offen 3306 Um ins Internet zu gelangen oder eine Sicherheitslücke in Ihrer Firewall zu öffnen, wählt der Netzwerkagent eine Verbindung; eingehende Anrufe werden über diese eine ausgehende Verbindung zurückgeleitet.

API-Schlüssel pro Empfänger

Jeder Empfänger erhält sein eigenes qsapi_* Schlüssel. Widerrufen Sie einen, ohne die anderen anzutasten und ohne das Passwort Ihres MySQL-Benutzers zu ändern.

Designbedingt schreibgeschützt

Ein Validator für schreibgeschützte Daten weist jede Nicht-SELECT-Anweisung zurück, bevor sie MySQL erreicht. Es gibt keine versehentlichen Fehler. AKTUALISIEREN, LÖSCHEN, oder FALLEN Pfad durch die API.

Ihre SQL-Abfragen bleiben privat

Der Empfänger sieht die Endpunkt-URL, die JSON-Antwort und alle von Ihnen freigegebenen Filter – niemals Ihre SQL-Anweisung, Ihr Schema, Ihren Hostnamen oder Ihre Verbindungszeichenfolge.

Nichts zu hosten oder zu patchen

Keine Express-App, keine Laravel-API, kein Reverse-Proxy. Der Endpunkt läuft als verwaltetes Feature, daher gibt es keine Deployment-Pipeline oder TLS-Rotation, für die Sie sich kümmern müssen.

permanent, ablaufend oder selbstzerstörend

Einen Endpunkt dauerhaft machen, ein Ablaufdatum festlegen oder ein festes Anrufbudget zuweisen, das sich nach einer bestimmten Anzahl von Anfragen selbst zerstört.

Die üblichen Methoden, eine REST-API auf MySQL zu implementieren – und warum sie schädlich sind

Es gibt bekannte Methoden, um MySQL mit einer HTTP-Schicht zu versehen, und diese erfüllen ihren Zweck. Der Haken dabei ist, dass man in jedem Fall ein Backend, eine Netzwerkschnittstelle oder beides selbst verwalten muss. Im Folgenden wird der Vergleich der gängigen Ansätze mit einem gemeinsam genutzten Query-Streams-Endpunkt erläutert, wenn das Ziel lediglich darin besteht, einem bestimmten Partner das Lesen eines bestimmten Ergebnissatzes zu ermöglichen.

Sorge DIY PHP / Node / Laravel API Auto-API-Tool (selbstgehostet) Abfrageströme
Die Datenbank ist über die API erreichbar. MySQL muss erreicht werden. MySQL muss erreichbar sein (oft ein öffentlicher Port). Agent nur für ausgehende Verbindungen – kein eingehender Port
Was der Empfänger in Händen hält Eine URL zu Ihrem Dienst Eine URL in Ihr Schema Ein Schlüssel für einen einzigen Zweck für eine Abfrage
Schemadarstellung Was auch immer Sie von Hand codieren Das gesamte Schema wird standardmäßig offengelegt Eine gespeicherte Abfrage, sonst nichts.
Empfängerspezifische Schlüssel + Widerruf Bau es selbst Bau es selbst Eingebaut
Audit-Protokoll jedes Anrufs Füge es selbst hinzu Füge es selbst hinzu Eingebaut
Sie betreiben/patchen/rotieren TLS Ja, für immer. Ja, für immer. Für Sie verwaltet
Zeit bis zum ersten Endpunkt Tage Stunden bis Tage Minuten

Sie möchten kein Backend entwickeln und betreuen?

Ein selbst entwickelter API-Server bietet die größte Flexibilität bei komplexer Geschäftslogik. Wenn Sie jedoch lediglich einem benannten Partner ein verwaltetes, schreibgeschütztes Ergebnis-Set – mit eigenem Schlüssel, Audit-Trail und ohne laufenden Dienst – bereitstellen möchten, schließt Query Streams genau diese Lücke. Entwickeln Sie das Backend erst, wenn es wirklich notwendig ist; verwenden Sie Query Streams, wenn es lediglich darum geht, „diese Abfrage sicher zu teilen“.

Wie Query Streams eine MySQL-Abfrage in eine REST-API umwandelt

Sobald der Netzwerkagent installiert und Ihr MySQL-Connector konfiguriert ist, sind für die Übertragung einer gespeicherten Abfrage an einen gemeinsam genutzten REST-Endpunkt etwa drei Schritte erforderlich. Wenn Sie bereits Query Streams für Excel, Google Sheets oder den MCP-Server verwenden, sind Agent und Connector bereits vorhanden – Sie beginnen mit Schritt zwei.

1

Stellen Sie eine Verbindung zu MySQL über den Agenten her.

Installieren Sie den Netzwerkagenten neben Ihrer Datenbank und fügen Sie einen MySQL-Connector mit einem Standardbenutzer mit Lesezugriff hinzu. Der Agent stellt eine ausgehende TLS-Verbindung zu Query Streams her – Ihre Datenbank ist niemals dem Internet ausgesetzt.

2

Speichern einer SQL-Abfrage

Schreibe die SELECT Im Abfrage-Generator für Ihre MySQL-Verbindung sind JOINs, Unterabfragen und Parameter willkommen. Benennen Sie die Abfrage und speichern Sie sie. Alles, was Sie mit SELECT abfragen können, kann zu einem Endpunkt werden.

3

Bewerben Sie es und teilen Sie einen Schlüssel

Öffnen Sie den Tab „Installieren“, wählen Sie den Endpunkttyp (permanent, zeitlich begrenzt oder Anrufbudget) und das Ausgabeformat aus und laden Sie anschließend einen Empfänger per E-Mail ein. Dieser erhält einen Magic-Link-Claim und seine eigene qsapi_* Schlüssel.

Eine gespeicherte Abfrage, viele Oberflächen

Dieselbe gespeicherte MySQL-Abfrage kann eine Aktualisierung von Excel, eine Seitenleiste in Google Sheets oder eine Konversation mit Claude oder Cursor über den MCP-Server auslösen. und Gleichzeitig wird ein REST-Endpunkt für Partner bereitgestellt. Sie erstellen die Abfrage einmalig; Query Streams kümmert sich um die Schnittstellen.

Kein offener MySQL-Port, keine gemeinsam genutzten Zugangsdaten

Das Sicherheitsmodell ist der Grund, warum Teams diese Lösung einem öffentlichen Datenbankport vorziehen. Ihr MySQL-Passwort befindet sich ausschließlich im verschlüsselten Anmeldeinformationsspeicher des Agenten in Ihrem Netzwerk; es wird niemals an unsere Cloud übertragen und ist für keinen Empfänger sichtbar. Darüber hinaus bietet Ihnen jeder Endpunkt individuelle Steuerungsmöglichkeiten für jeden Empfänger, die Sie vor der Freigabe anpassen können.

Agent für ausgehende Anrufe

Der Agent stellt eine Verbindung her zu agent.querystreams.com auf Port 443. Ihre Firewall erkennt normale ausgehende HTTPS-Verbindungen – keine eingehenden Ports, kein VPN, kein Tunnel.

Nur-Lese-Durchsetzung

Ein Validator wird im Agenten in Ihrem Netzwerk ausgeführt, bevor eine Anweisung MySQL erreicht. Nicht-SELECT-Anweisungen werden mit folgender Fehlermeldung zurückgewiesen: READONLY_VIOLATION.

IP- und CORS-Zulassungslisten

Binden Sie den Schlüssel eines Empfängers an bestimmte IP-Adressen oder CIDR-Bereiche an und beschränken Sie, welche Browser die einzelnen Endpunkte aufrufen dürfen. Aufrufe von nicht zugeordneten Adressen werden vor der Ausführung von SQL-Abfragen abgelehnt.

Ratenbegrenzungen + Byte-Kontingente

Zweistufige Ratenbegrenzungen (pro Schlüssel und pro Endpunkt) sowie eine optionale monatliche Byte-Obergrenze sorgen dafür, dass ein unkontrollierter oder außer Kontrolle geratener Empfänger innerhalb eines sicheren Gefahrenbereichs bleibt.

Rufen Sie Ihre MySQL REST-API auf.

Empfänger rufen den Endpunkt wie jede andere REST-API auf: mit einem Bearer-Token und einer URL. Jeder gespeicherte Abfrageparameter, den Sie freigegeben haben, kann pro Aufruf – in der Abfragezeichenfolge – festgelegt werden. ERHALTEN oder in einem JSON-Body für POSTDer Agent bindet diese Werte als ordnungsgemäße Parameter für vorbereitete Anweisungen, niemals durch Zeichenkettenverkettung, sodass ein Empfänger nicht aus einem Filter ausbrechen und SQL einschleusen kann.

GET mit einem Filterparameter
# Empfängeraufruf an Ihren MySQL-basierten Endpunkt Locke -H „Autorisierung: Bearer qsapi_K7…ZmQ“ \ “https://api.querystreams.com/v1/endpoints/orders-today?warehouse=US-EAST&since=2026-01-01”

Wählen Sie das Ausgabeformat pro Aufruf mit der Akzeptieren Kopfzeile (oder ein ?format= Abfrageparameter): JSON für ein einzelnes Array, CSV für Tabellenkalkulationen und Pandas oder auf einem Streaming-Endpunkt, NDJSON (Eine JSON-Zeile pro Zeile) für Parse-as-you-go-Pipelines. Für bandbreitenempfindliche Nutzer: Option aktivieren LZ4 Nutzlastkomprimierung mit Accept-Encoding: lz4; unkomprimierte Antworten erhalten ebenfalls Standardwerte gzip Die Übertragung erfolgt automatisch. Eine detaillierte Aufschlüsselung der statischen und Streaming-Modi, der vier Drahtkombinationen und der OpenAPI 3.1-Generation finden Sie unter [Link einfügen]. Sofortige REST-API für SQL-Datenbanken Führung.

Wie die Nutzung abgerechnet wird

Die API-Plattform ist in jedem Query Streams-Plan enthalten – es ist kein separates Abonnement erforderlich – und nutzt dasselbe monatliche Datenvolumen wie Excel, Google Sheets und der MCP-Server. wie bytebasierte Abrechnung und LZ4-Komprimierung gezählt werden →

Integrieren Sie es in Power BI, Tableau und alle Programme, die JSON lesen können.

Weil jeder Endpunkt einen Standard zurückgibt JSON — mit CSV und Streaming-NDJSON im Angebot — jedes Tool, das einen REST-Feed lesen kann, kann Ihre MySQL-Daten direkt verarbeiten, ohne dass auf deren Seite etwas installiert werden muss und kein MySQL-Treiber erforderlich ist. Power-Abfrage ist der einfachste Einstieg in die Microsoft BI-Welt: in Power BI wählen Daten abrufen → Aus dem WebFügen Sie die Endpunkt-URL ein und fügen Sie Ihre Genehmigung Die Kopfzeile und Power Query parsen das JSON in eine aktualisierbare Tabelle, die Ihr Datenmodell speist. (Für Live-Daten in einer Tabellenkalkulation, die native Query Streams Excel-Add-on ist der einfachere Weg – Power Query steht Ihnen zur Verfügung, wenn Sie die Daten direkt im Power BI-Modell benötigen.)

Microsoft Power Query-Logo Power-Abfrage Daten abrufen → Aus dem Web: URL und Bearer-Token einfügen, JSON in eine aktualisierbare Tabelle erweitern.
Microsoft Power BI-Logo Power BI Dieselbe Power Query-Engine – laden Sie den Endpunkt direkt in Ihr Modell und planen Sie die Aktualisierung.
Tableau-Logo Tableau Verbinden Sie einen Webdatenkonnektor oder eine JSON-Quelle mit dem Endpunkt, um Live-Dashboards anzuzeigen.
Postman-Logo Briefträger Importieren Sie die OpenAPI 3.1-Spezifikation und senden, prüfen und teilen Sie dann Anfragen mit einem Klick.

Es ernährt auch n8n, Qlik, Locke, Python (Anfragen oder pandas.read_json), Insomnia, Hoppscotch — oder jedes Skript oder jeder Workflow, der eine HTTP-Anfrage senden und JSON lesen kann.

Funktioniert auch mit Amazon RDS, Cloud SQL und PlanetScale.

Es spielt keine Rolle, wo Ihre MySQL-Datenbank ausgeführt wird. Der Agent verbindet sich auf dieselbe Weise mit einem lokalen Server oder einem verwalteten Dienst – Amazon RDS und Aurora MySQL, Azure Database for MySQL, Google Cloud SQL for MySQL oder PlanetScale. Für die geringste Latenz sollte der Agent im selben Netzwerk oder in derselben Region wie die Datenbank bereitgestellt werden. Ein Query Streams-Konto kann mehrere Agents regions- und cloudübergreifend ausführen, und ein einzelner Endpunkt verhält sich unabhängig vom verwendeten Agent identisch.

Nutzen Sie MariaDB?

Derselbe Connector wird auch für MariaDB verwendet, das das MySQL-Protokoll nutzt. Wenn Sie eine MariaDB-Datenbank verwenden, folgen Sie der entsprechenden Anleitung. Eine MariaDB-Datenbank als REST-API bereitstellen Anleitung – der Arbeitsablauf ist identisch. Derselbe Ansatz gilt auch für PostgreSQL, Microsoft SQL Server, SQLite, Microsoft Access, Snowflake, Oracle, BigQuery und DuckDB; stöbern Sie in der Anleitung. Anleitungen zur Konnektoreinrichtung für die aktuelle Liste.

Häufig gestellte Fragen

Muss ich einen Port öffnen oder MySQL dem Internet zugänglich machen? +
Nein – der Netzwerkagent wählt sich über TLS auf Port 443 ein, sodass eingehende Anrufe über diese eine Verbindung und Ihren MySQL-Port zurückgeleitet werden (3306 (standardmäßig) wird niemals angezeigt. wie die ausschließlich ausgehende Verbindung funktioniert →
Kann der Empfänger meine SQL- oder Datenbankzugangsdaten einsehen? +
Niemals – die Empfänger sehen nur die Endpunkt-URL, die Antwort und die von Ihnen freigegebenen Filter, während Ihr MySQL-Passwort im verschlüsselten Anmeldeinformationsspeicher des Agenten in Ihrem Netzwerk verbleibt. Was privat bleibt vs. was der Empfänger sieht →
Muss ich ein Backend entwickeln, um eine MySQL REST-API zu erhalten? +
Nein – anstatt einen PHP-, Node- oder Laravel-Dienst zu schreiben und zu hosten, speichern Sie eine SQL-Abfrage und übertragen diese an einen Endpunkt. Query Streams stellt dann die Authentifizierung, TLS, Ratenbegrenzung, das Audit-Log und die empfängerspezifischen Schlüssel bereit. Warum es kein Backend zum Erstellen oder Patchen gibt →
Welche Ausgabeformate kann die API zurückgeben? +
JSON (ein einzelnes Array, Standardeinstellung), CSV (RFC 4180) und – bei einem Streaming-Endpunkt – NDJSON, ausgewählt pro Aufruf mit dem Akzeptieren Kopfzeile oder ein ?format= Parameter, mit optionaler LZ4-Nutzlastkomprimierung. die Drahtformate und Komprimierungsoptionen →
Können die Empfänger die Ergebnisse filtern oder erhalten sie eine feste Abfrage? +
Sie entscheiden – jeder Parameter, den Sie offenlegen, wird zu einem Filter pro Aufruf (ERHALTEN Abfragezeichenfolge oder POST Der Agent bindet den JSON-Body als Parameter einer vorbereiteten Anweisung, sodass Filter nicht zum Einschleusen von SQL verwendet werden können. Wie exponierte Parameter und SQL-Injection-Sicherheit funktionieren →
Kann ein Endpunkt ablaufen oder sich selbst zerstören? +
Ja – ein Endpunkt kann permanent sein, zu einem bestimmten Datum ablaufen oder über ein festes Anrufbudget verfügen, das sich nach einer festgelegten Anzahl von Anfragen selbst zerstört, und Sie können den Schlüssel eines jeden Empfängers sofort widerrufen, ohne Ihr Datenbankpasswort ändern zu müssen. Lebensdauer von Endpunkten und Schlüsselsteuerung pro Empfänger →
Ist es mit Amazon RDS, Cloud SQL oder PlanetScale kompatibel? +
Ja. Der Agent verbindet sich mit jeder erreichbaren MySQL-Datenbank, egal ob lokal oder verwaltet – Amazon RDS und Aurora MySQL, Azure Database for MySQL, Google Cloud SQL for MySQL und PlanetScale funktionieren alle. Für optimale Latenzzeiten sollte der Agent in derselben Region wie die Datenbank ausgeführt werden; ein Konto kann mehrere Agents in verschiedenen Clouds und Regionen betreiben.
Benötigt der Empfänger ein Query Streams-Konto? +
Die Weitergabe per E-Mail wird empfohlen – der Empfänger erhält einen Magic-Link-Claim und eine Free-Tier-Organisation wird automatisch erstellt, wenn er zustimmt – oder Sie können einen Service-Key für den unbeaufsichtigten Maschinenzugriff ausstellen. Empfängeransprüche vs. Dienstschlüssel →

Los geht's

Veröffentlichen Sie Ihre erste MySQL REST API kostenlos.

Registrieren Sie sich, installieren Sie den Netzwerkagenten neben Ihrer MySQL-Datenbank, speichern Sie eine SQL-Abfrage und senden Sie einem Empfänger einen Magic-Link per E-Mail. Empfängerspezifische Schlüssel, Schreibschutz und ein vollständiges Audit-Protokoll sind ab dem ersten Aufruf aktiviert.

Verwandte Leitfäden: Sofortige REST-API für SQL-Datenbanken | Datenbank-REST-API-Plattform | MariaDB als REST-API bereitstellen | Anleitungen zur Konnektoreinrichtung

Kategorie: API-Plattform

Tags: mysql-rest-api, mysql, rest-api, expose-mysql-as-api, mysql-api-no-code, share-mysql-data, per-recipient-keys, no-code-api, database-rest-api

Meta-Beschreibung: Verwandeln Sie eine MySQL-Abfrage in eine sichere, schreibgeschützte REST-API mit empfängerspezifischen Schlüsseln – ohne Express-App, ohne offenen Port, ohne Code.

Aktualisiert am 16. Juni 2026

Angetrieben durch BetterDocs