Learn about Hyperdrive's pricing.
Hyperdrive
Turn your existing regional database into a globally distributed database.
Hyperdrive is a service that accelerates queries you make to existing databases, making it faster to access your data from across the globe from Cloudflare Workers, irrespective of your users' location.
Hyperdrive supports any Postgres or MySQL database, including those hosted on AWS, Google Cloud, Azure, Neon and Planetscale. Hyperdrive also supports Postgres-compatible databases like CockroachDB and Timescale. You do not need to write new code or replace your favorite tools: Hyperdrive works with your existing code and tools you use.
Use Hyperdrive's connection string from your Cloudflare Workers application with your existing Postgres drivers and object-relational mapping (ORM) libraries:
import postgres from 'postgres';
export default { async fetch(request, env, ctx): Promise<Response> { // Hyperdrive provides a unique generated connection string to connect to // your database via Hyperdrive that can be used with your existing tools const sql = postgres(env.HYPERDRIVE.connectionString);
try { // Sample SQL query const results = await sql`SELECT * FROM pg_tables`;
// Close the client after the response is returned ctx.waitUntil(sql.end());
return Response.json(results); } catch (e) { return Response.json({ error: e instanceof Error ? e.message : e }, { status: 500 }); } },
} satisfies ExportedHandler<{ HYPERDRIVE: Hyperdrive }>;
{ "$schema": "node_modules/wrangler/config-schema.json", "name": "WORKER-NAME", "main": "src/index.ts", "compatibility_date": "2025-02-04", "compatibility_flags": [ "nodejs_compat" ], "observability": { "enabled": true }, "hyperdrive": [ { "binding": "HYPERDRIVE", "id": "<YOUR_HYPERDRIVE_ID>", "localConnectionString": "<ENTER_LOCAL_CONNECTION_STRING_FOR_LOCAL_DEVELOPMENT_HERE>" } ] }
import { createConnection } from 'mysql2/promise';
export default { async fetch(request, env, ctx): Promise<Response> { const connection = await createConnection({ host: env.DB_HOST, user: env.DB_USER, password: env.DB_PASSWORD, database: env.DB_NAME, port: env.DB_PORT
// This is needed to use mysql2 with Workers // This configures mysql2 to use static parsing instead of eval() parsing (not available on Workers) disableEval: true
});
const [results, fields] = await connection.query('SHOW tables;');
return new Response(JSON.stringify({ results, fields }), {headers: {'Content-Type': 'application/json','Access-Control-Allow-Origin': '\*',},});},} satisfies ExportedHandler<Env>;
{ "$schema": "node_modules/wrangler/config-schema.json", "name": "WORKER-NAME", "main": "src/index.ts", "compatibility_date": "2025-02-04", "compatibility_flags": [ "nodejs_compat" ], "observability": { "enabled": true }, "hyperdrive": [ { "binding": "HYPERDRIVE", "id": "<YOUR_HYPERDRIVE_ID>", "localConnectionString": "<ENTER_LOCAL_CONNECTION_STRING_FOR_LOCAL_DEVELOPMENT_HERE>" } ] }
Connect your database
Connect Hyperdrive to your existing database and deploy a Worker that queries it.
PostgreSQL support
Hyperdrive allows you to connect to any PostgreSQL or PostgreSQL-compatible database.
MySQL support
Hyperdrive allows you to connect to any MySQL database.
Query Caching
Use Hyperdrive to cache the most popular queries executed against your database.
Build serverless applications and deploy instantly across the globe for exceptional performance, reliability, and scale.
Deploy dynamic front-end applications in record time.
Learn about Hyperdrive limits.
Learn more about the storage and database options you can build on with Workers.
Connect with the Workers community on Discord to ask questions, show what you are building, and discuss the platform with other developers.
Follow @CloudflareDev on Twitter to learn about product announcements, and what is new in Cloudflare Developer Platform.
Was this helpful?
- Resources
- API
- New to Cloudflare?
- Products
- Sponsorships
- Open Source
- Support
- Help Center
- System Status
- Compliance
- GDPR
- Company
- cloudflare.com
- Our team
- Careers
- 2025 Cloudflare, Inc.
- Privacy Policy
- Terms of Use
- Report Security Issues
- Trademark