INTEGRITY Dokumentace

Neon

Neon je plně spravovaný bezserverový PostgreSQL. Odděluje úložiště od výpočetního výkonu a nabízí tak moderní funkce pro vývojáře, jako je bezserverový provoz, větvení a neomezené úložiště.

Chcete-li se připojit k Neon pomocí Hyperdrive, postupujte takto:

1. Povolte přístup Hyperdrive

Hyperdrive můžete připojit k libovolné existující databázi Neon vytvořením nového uživatele a získáním connection stringu k databázi.

Neon Dashboard

  1. Přejděte na Neon dashboard a vyberte projekt (databázi), ke kterému se chcete připojit.
  2. Vyberte Role ze sidebaru a vyberte Nová role. Zadejte hyperdrive-user jako název (nebo název dle vlastního výběru) a zkopírujte heslo. Vezměte na vědomí, že heslo se znovu nezobrazí: pokud si ho někam neuložíte, budete ho muset resetovat.
  3. Vyberte Dashboard ze sidebaru > přejděte na Podrobnosti připojení panelu > ujistěte se, že máte vybráno větev, databáze a role (například,hyperdrive-user) přes který se Hyperdrive připojí.
  4. Vyberte psql a zrušte zaškrtnutí sdružování připojení zaškrtávací políčko. Poznamenejte si connection string (začínající postgres://hyperdrive-user@...) z textového pole.

S connection string i heslem teď můžete vytvořit konfiguraci databáze Hyperdrive.

2. Vytvořte konfiguraci databáze

Pro konfiguraci Hyperdrive budete potřebovat:

  • IP adresa (nebo hostname) a port vaší databáze.
  • Uživatelské jméno databáze (například hyperdrive-demo) kterou jste nakonfigurovali v předchozím kroku.
  • Heslo přiřazené k tomuto uživatelskému jménu.
  • Název databáze, ke které se má Hyperdrive připojit. Například postgres.

Hyperdrive přijímá kombinaci těchto parametrů ve standardním formátu connection string používaném databázovými ovladači:

postgres://USERNAME:PASSWORD@HOSTNAME_OR_IP_ADDRESS:PORT/database_name

Většina poskytovatelů databází nabízí connection string, který můžete přímo zkopírovat a vložit do Hyperdrive.

Chcete-li vytvořit konfiguraci Hyperdrive v Cloudflare dashboardu:

  1. V dashboardu Cloudflare přejděte na Hyperdrive stránce.

    Přejděte na Hyperdrive ↗
  2. Vyberte Create Configuration.

  3. Vyplňte formulář, včetně connection stringu.

  4. Vyberte Vytvořit.

Chcete-li vytvořit konfiguraci Hyperdrive pomocí Wrangler CLI:

  1. Otevřete terminál a spusťte následující příkaz. Nahraďte <NAME_OF_HYPERDRIVE_CONFIG> názvem konfigurace Hyperdrive a vložte řetězec připojení poskytnutý vaším databázovým hostitelem, nebo nahraďte user, password, HOSTNAME_OR_IP_ADDRESS, port, a database_name zástupné symboly za symboly specifické pro vaši databázi:

    npx wrangler hyperdrive create <NAME_OF_HYPERDRIVE_CONFIG> --connection-string="postgres://user:password@HOSTNAME_OR_IP_ADDRESS:PORT/database_name"
  2. Tento příkaz vypíše vazbu pro Konfigurační soubor Wrangler:

    {
    	"$schema": "./node_modules/wrangler/config-schema.json",
    	"name": "hyperdrive-example",
    	"main": "src/index.ts",
    	// Set this to today's date
    	"compatibility_date": "2026-08-28",
    	"compatibility_flags": [
    		"nodejs_compat"
    	],
    	// Pasted from the output of `wrangler hyperdrive create <NAME_OF_HYPERDRIVE_CONFIG> --connection-string=[...]` above.
    	"hyperdrive": [
    		{
    			"binding": "HYPERDRIVE",
    			"id": "<ID OF THE CREATED HYPERDRIVE CONFIGURATION>"
    		}
    	]
    }
    "$schema" = "./node_modules/wrangler/config-schema.json"
    name = "hyperdrive-example"
    main = "src/index.ts"
    # Set this to today's date
    compatibility_date = "2026-08-28"
    compatibility_flags = [ "nodejs_compat" ]
    
    [[hyperdrive]]
    binding = "HYPERDRIVE"
    id = "<ID OF THE CREATED HYPERDRIVE CONFIGURATION>"

3. Používejte Hyperdrive ve svém Workeru

Nainstalujte node-postgres ovladač:

npm i pg@>8.16.3

Pokud používáte TypeScript, nainstalujte balíček typů:

npm i -D @types/pg

Přidejte potřebné příznaky kompatibility s Node.js a vazbu Hyperdrive do svého wrangler.jsonc soubor:

{
	// required for database drivers to function
	"compatibility_flags": [
		"nodejs_compat"
	],
	// Set this to today's date
	"compatibility_date": "2026-08-28",
	"hyperdrive": [
		{
			"binding": "HYPERDRIVE",
			"id": "<your-hyperdrive-id-here>"
		}
	]
}
compatibility_flags = [ "nodejs_compat" ]
# Set this to today's date
compatibility_date = "2026-08-28"

[[hyperdrive]]
binding = "HYPERDRIVE"
id = "<your-hyperdrive-id-here>"

Vytvořte nový Client instance a předejte Hyperdrive connectionString:

// filepath: src/index.ts
import { Client } from "pg";

export default {
	async fetch(
		request: Request,
		env: Env,
		ctx: ExecutionContext,
	): Promise<Response> {
		// Create a new client instance for each request. Hyperdrive maintains the
		// underlying database connection pool, so creating a new client is fast.
		const client = new Client({
			connectionString: env.HYPERDRIVE.connectionString,
		});

		try {
			// Connect to the database
			await client.connect();

			// Perform a simple query
			const result = await client.query("SELECT * FROM pg_tables");

			return Response.json({
				success: true,
				result: result.rows,
			});
		} catch (error: any) {
			console.error("Database error:", error.message);

			return new Response("Internal error occurred", { status: 500 });
		}
	},
};

Další kroky

Chcete-li se připojit k Neon pomocí @neondatabase/serverless, postupujte takto:

  1. Potřebujete existující databázi Neon, ke které se připojíte. Vytvořte databázi Neon nebo načíst data z existující databáze do Neon.

  2. Vytvořte elements table using the Neon SQL editor. The SQL Editor allows you to query your databases directly from the Neon Console.

    CREATE TABLE elements (
      id INTEGER NOT NULL,
      elementName TEXT NOT NULL,
      atomicNumber INTEGER NOT NULL,
      symbol TEXT NOT NULL
    );
  3. Vložte nějaká data do nově vytvořené tabulky.

    INSERT INTO elements (id, elementName, atomicNumber, symbol)
    VALUES
      (1, 'Hydrogen', 1, 'H'),
      (2, 'Helium', 2, 'He'),
      (3, 'Lithium', 3, 'Li'),
      (4, 'Beryllium', 4, 'Be'),
      (5, 'Boron', 5, 'B'),
      (6, 'Carbon', 6, 'C'),
      (7, 'Nitrogen', 7, 'N'),
      (8, 'Oxygen', 8, 'O'),
      (9, 'Fluorine', 9, 'F'),
      (10, 'Neon', 10, 'Ne');
  4. Nakonfigurujte přihlašovací údaje databáze Neon ve svém Workeru:

    Do Workeru musíte jako secret přidat připojovací řetězec k databázi Neon. Připojovací řetězec získáte v Neon Console v části Podrobnosti připojení, poté ji přidejte jako secret pomocí Wrangleru:

    # Add the database connection string as a secret
    npx wrangler secret put DATABASE_URL
    # When prompted, paste your Neon database connection string
  5. Ve svém Workeru nainstalujte @neondatabase/serverless ovladač pro připojení k databázi a začněte pracovat s daty:

    npm i @neondatabase/serverless
  6. Následující příklad ukazuje, jak ve Workeru odeslat dotaz do databáze Neon. Přihlašovací údaje potřebné pro připojení k Neon byly do Workeru přidány jako secrets.

    import { Client } from "@neondatabase/serverless";
    
    export default {
    	async fetch(request, env, ctx) {
    		const client = new Client(env.DATABASE_URL);
    		await client.connect();
    		const { rows } = await client.query("SELECT * FROM elements");
    
    		return new Response(JSON.stringify(rows));
    	},
    };

Další informace o Neon naleznete v Oficiální dokumentace k Neon.