Dokumentace Domluvit pilot

Připojte se k databázím

Cloudflare Workers se může připojit k vašim datům a dotazovat se nad databázemi SQL i NoSQL, včetně:

SQL databáze D1

D1 je vlastní bezserverová databáze Cloudflare založená na SQL. Je optimalizovaná pro globální přístup z Workers a dokáže se škálovat pomocí více menších databází (10 GB), například na uživatele, tenanta nebo entitu. Stejně jako u některých jiných bezserverových databází se cena D1 odvíjí od počtu dotazů a nákladů na úložiště.

Databáze Knihovna nebo ovladač Metoda připojení
D1 Workers binding, integruje se s Prisma ↗, Drizzle ↗, a další ORM Workers binding, REST API

Tradiční SQL databáze

Tradiční databáze používají ovladače SQL, které využívají TCP sockety pro připojení k databázi. TCP je de facto standardní protokol, který mnoho databází, například PostgreSQL a MySQL, používá pro klientské připojení. Tyto ovladače jsou také široce kompatibilní s vašimi oblíbenými knihovnami ORM a query buildery.

Patří sem také serverless databáze kompatibilní s PostgreSQL nebo MySQL, jako například Supabase, Neon, nebo PlanetScale (buď MySQL nebo PostgreSQL), ke kterému lze přistupovat jak pomocí nativního TCP sockety a Hyperdrive nebo serverless ovladače založené na HTTP (podrobněji popsáno níže).

Databáze Integrace Knihovna nebo ovladač Metoda připojení
Postgres Přímé připojení node-postgres ↗,Postgres.js ↗ TCP socket prostřednictvím databázového ovladače pomocí Hyperdrive pro optimální výkon (volitelné, doporučeno)
MySQL Přímé připojení mysql2 ↗, mysql ↗ TCP socket prostřednictvím databázového ovladače pomocí Hyperdrive pro optimální výkon (volitelné, doporučeno)

Bezserverové databáze

Bezserverové databáze mohou nabízet přímé připojení k podkladové databázi, nebo poskytovat proxy a ovladače založené na HTTP (známé také jako bezserverové ovladače).

U serverless databází PostgreSQL a MySQL se můžete k podkladové databázi připojit přímo pomocí nativních databázových ovladačů a ORM, které již znáte, a pro zrychlení připojení a sdružování databázových připojení použít Hyperdrive (doporučeno). Při použití Hyperdrive je fond připojení spravován napříč všemi regiony Cloudflare a optimalizován pro použití z Workers.

K připojení k HTTP proxy serverům spravovaným poskytovatelem databáze můžete také použít bezserverové knihovny ovladačů. Ty mohou pro tradiční SQL databáze nabízet také pooling připojení a podobně jako Hyperdrive snižovat počet roundtripů potřebných k navázání zabezpečeného připojení.

Databáze Knihovna nebo ovladač Metoda připojení
PlanetScale ↗ Hyperdrive (MySQL), Hyperdrive (PostgreSQL), @planetscale/database ↗ mysql2, mysql, node-postgres, Postgres.js, nebo přes API pomocí klientské knihovny
Supabase ↗ Hyperdrive, @supabase/supabase-js ↗ node-postgres,Postgres.js, nebo přes API pomocí klientské knihovny
Prisma ↗ prisma ↗ API přes klientskou knihovnu
Neon ↗ Hyperdrive, @neondatabase/serverless ↗ node-postgres,Postgres.js, nebo přes API pomocí klientské knihovny
Hasura ↗ API GraphQL API přes fetch()
Upstash Redis ↗ @upstash/redis ↗ API přes klientskou knihovnu
TiDB Cloud ↗ @tidbcloud/serverless ↗ API přes klientskou knihovnu

Jakmile nainstalujete potřebné balíčky, použijte API, která tyto balíčky poskytují, k připojení k databázi a provádění operací nad ní. Podrobné pokyny pro jednotlivé služby najdete v odkazech níže.

Ověřování

Pokud vaše databáze vyžaduje ověřování, použijte k bezpečnému uložení přihlašovacích údajů Wrangler secrets. Vytvořte secret ve svém projektu Cloudflare Workers pomocí následujícího wrangler secret příkaz:

wrangler secret put <SECRET_NAME>

Poté ve svém kódu načtěte hodnotu tajného klíče pomocí následujícího úryvku kódu:

const secretValue = env.<SECRET_NAME>;

Hodnotu secret použijte k ověření u externí služby. Pokud například externí služba vyžaduje k ověření API klíč nebo uživatelské jméno a heslo k databázi, zahrňte je pomocí knihovny nebo API dané služby.

Pro služby vyžadující ověřování mTLS použijte certifikáty mTLS pro předložení klientského certifikátu.

Další kroky

Požádejte o pilot zdarma

Domluvit pilot