Databases
Create and connect a database
A database stores structured application information, such as accounts, bookings or orders. Its engine is the database software, for example PostgreSQL or MySQL. Choose the engine your application supports; changing the name of an engine does not convert existing data.
Before you start
- Check the project's database requirements and select the correct workspace and stage. You need permission and sufficient plan capacity. If data already exists, identify its source and take a usable backup before importing or changing connections.
Create a new database
- 1Open Hosting > Databases and choose Create Database, or choose Create New in the deployment wizard.
- 2Select the engine and supported version required by the application.
- 3Review the generated database and user names. Copy the actual connection values shown by GD; do not construct names from the visible label or stage tag.
- 4Submit and wait until provisioning completes.
- 5Open the database's connection details. Store the password securely, then configure the application using either the connection URL or separate host, port, database, user and password fields expected by its framework.
- 6Redeploy or restart through the app's supported configuration flow if environment changes require it.
- 7Test a real read from the app. A database marked ready does not prove the app is using it.
Use a database that already exists
- 1In the app's database section, choose Use Existing when eligible databases are offered.
- 2Search by name and confirm the engine, workspace and stage.
- 3Select the appropriate user or create a restricted user using the available controls. Avoid sharing an overly privileged account across unrelated apps.
- 4Review the generated connection values before saving.
- 5Test a read first. Selecting an existing database neither imports data nor authorises a reset.
Connect from your computer or another external service
Internal addresses work inside the hosting network. An external client needs the public connection details and an enabled access rule.
- 1Open the database's external-access controls, or ask an authorised administrator if your role cannot manage them.
- 2Add the permitted client IP/range and expiry required for the task. Broad network access should be a deliberate choice, not a troubleshooting shortcut.
- 3Wait for the access change to become active.
- 4Use the displayed external host, port and TLS settings. TLS encrypts the connection; enable certificate verification using the supplied guidance rather than disabling it to hide an error.
- 5Test with a read-only query and close unnecessary access when the work is complete.
Import existing data
- 1Identify the source engine/version and export format. Plain SQL and a PostgreSQL custom-format archive use different import tools.
- 2Back up the destination and decide whether the import creates new objects or replaces existing ones.
- 3Use the import workflow appropriate to the format. Review the destination carefully before confirming.
- 4Wait for completion, then compare expected tables and row counts and test the app.
- 5If an import fails halfway, inspect what was applied before retrying. Repeating a non-idempotent import can duplicate data.
Manage and recover data
Use the database manager only with the required permissions. Review filters before editing rows. A migration changes the schema; a seeder inserts application data and may replace existing records depending on its code. Read the script before running it. Before a restore, select the intended backup and understand which data will be replaced; test recovery in an isolated destination where possible.
If something does not work
- Connection timeout: confirm internal versus external address, port and active access rule. Authentication failure: verify the exact user, database and password without extra spaces. TLS failure: check the required certificate and hostname. Missing tables: confirm the selected stage and whether migrations completed. Version/format error: use a compatible database client and the matching import format. Do not repeatedly reset a production database to diagnose a connection error.
Expected result
The application uses the intended database, a real query succeeds, and any imported data matches the source checks. Keep backup and access-rule details available to the authorised workspace team.
Open the relevant page, then confirm the workspace or administrative context before making changes.
Open DatabasesRelated guides and references
For signed-in procedures, open Help in your workspace and search by the task name. Administrative guides require the internal-documentation permission.