> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Como Fazer o Deploy do seu Primeiro Banco de Dados Gerenciado

> Tutorial passo a passo para hospedar um banco de dados gerenciado MongoDB, PostgreSQL, MySQL ou Redis na Square Cloud e conectar a ele a partir do código da sua aplicação.

## Introdução

Este tutorial leva você do zero a um banco de dados ativo e conectado em poucos minutos: crie a instância pelo dashboard, obtenha sua connection string e conecte-se a ela a partir do seu próprio código.

### Pré-requisitos

* **Conta na Square Cloud**: Crie sua conta pela [página de cadastro](https://squarecloud.app/pt-br/signup).
* **Plano Standard ativo ou superior**: Bancos de dados gerenciados exigem um **plano Standard ativo ou superior**. Confira os [planos disponíveis](/pt-br/platform/plans) e escolha o que se encaixa na sua carga de trabalho.

## Passo 1: Escolha um engine

A Square Cloud oferece quatro engines de banco de dados gerenciados, já configurados para conectar e começar a usar:

|   Engine   | Versão |
| :--------: | :----: |
| PostgreSQL | 17.x.x |
|   MongoDB  |  8.x.x |
|    MySQL   |  9.x.x |
|    Redis   |  7.4.x |

Este tutorial usa **PostgreSQL**, mas o mesmo fluxo do dashboard se aplica a todos os engines acima.

## Passo 2: Crie o banco de dados

<Steps>
  <Step title="Crie uma nova instância de banco de dados">
    Acesse a página de [Bancos de Dados](https://squarecloud.app/pt-br/dashboard/databases) e clique no botão "Criar Banco de Dados".
  </Step>

  <Step title="Configurando sua instância de banco de dados">
    Selecione **PostgreSQL** (ou o engine escolhido no Passo 1) e preencha as informações necessárias, como nome do banco e RAM.
  </Step>

  <Step title="Finalize a criação da instância">
    Clique no botão "Criar" e aguarde a criação do banco de dados.
  </Step>
</Steps>

## Passo 3: Obtenha a connection string

Assim que seu banco de dados estiver pronto, abra-o pela página de [Bancos de Dados](https://squarecloud.app/pt-br/dashboard/databases). Os detalhes de conexão — host, porta, usuário, senha e URL de conexão — são exibidos no dashboard da instância, junto com o certificado TLS que você precisará para se conectar.

<Note>Os bancos de dados da Square Cloud só aceitam conexões SSL/TLS. Veja [como me conectar ao meu banco de dados](/pt-br/services/databases#como-me-conectar-ao-meu-banco-de-dados) para como o certificado é usado por diferentes clientes.</Note>

## Passo 4: Conecte a partir do seu código

Com a connection string em mãos, conecte-se usando o cliente PostgreSQL da sua linguagem.

<Tabs>
  <Tab title="Node.js">
    Instale o pacote [`pg`](https://www.npmjs.com/package/pg):

    ```bash theme={null}
    npm install pg
    ```

    Conecte e verifique com uma query simples:

    ```javascript index.js theme={null}
    import fs from "node:fs";
    import { Client } from "pg";

    const cert = fs.readFileSync("certificate.pem").toString();

    const client = new Client({
      connectionString: process.env.DATABASE_URL, // postgresql://user:password@host:port/dbname
      ssl: { ca: cert, cert: cert, key: cert },
    });

    await client.connect();
    const result = await client.query("SELECT 1");
    console.log("Connected! Result:", result.rows[0]);
    await client.end();
    ```
  </Tab>

  <Tab title="Python">
    Instale o [`psycopg2`](https://pypi.org/project/psycopg2-binary/):

    ```bash theme={null}
    pip install psycopg2-binary
    ```

    Conecte e verifique com uma query simples:

    ```python main.py theme={null}
    import os
    import psycopg2

    conn = psycopg2.connect(
        os.environ["DATABASE_URL"],  # postgresql://user:password@host:port/dbname
        sslmode="verify-ca",
        sslrootcert="certificate.pem",
        sslcert="certificate.pem",
        sslkey="certificate.pem",
    )
    cur = conn.cursor()
    cur.execute("SELECT 1")
    print("Connected! Result:", cur.fetchone())
    cur.close()
    conn.close()
    ```
  </Tab>
</Tabs>

Se a query retornar um resultado em vez de lançar um erro de conexão, sua aplicação está se comunicando com o banco de dados com sucesso.

<Warning>Nunca fixe a connection string diretamente no código-fonte. Defina-a como uma variável de ambiente (`DATABASE_URL`) através do seu [arquivo de configuração](/pt-br/getting-started/config-file) ou do dashboard, para que as credenciais nunca acabem no seu repositório.</Warning>

## Seu banco de dados está no ar

Agora você tem um banco de dados gerenciado rodando e acessível a partir do seu código. A partir daqui:

<CardGroup cols={2}>
  <Card title="Faça o deploy de um app para usá-lo" icon="server" href="/pt-br/tutorials/how-to-deploy-your-website">
    Hospede a aplicação que se conecta a este banco de dados na Square Cloud.
  </Card>

  <Card title="Snapshots" icon="camera" href="/pt-br/cli-reference/commands/database/snapshot">
    Crie e restaure snapshots de banco de dados pela CLI.
  </Card>
</CardGroup>

## Contate-nos

Se você continuar enfrentando **dificuldades técnicas**, nossa **equipe de suporte especializada** está disponível para auxiliá-lo. [**Entre em contato conosco**](https://squarecloud.app/pt-br/support) e teremos prazer em ajudá-lo a resolver qualquer questão — a qualidade do suporte é uma grande parte do motivo pelo qual desenvolvedores avaliam a Square Cloud com [**4.9/5 em 402 avaliações**](https://www.trustpilot.com/review/squarecloud.app) no Google e Trustpilot.
