> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Obtén los detalles de conexión de tu servicio en Cloud

> Aprende a encontrar el hostname, el puerto y las credenciales de tu servicio de ClickHouse Cloud para conectarte desde clientes externos, CLI y aplicaciones.

export const e_1 = undefined

export const e_0 = undefined

<a href="/get-started/quickstarts/home" onClick={(e_0) => { e_0.preventDefault(); window.location.href = (window.location.pathname.startsWith('/docs') ? '/docs' : '') + '/get-started/quickstarts/home'; }} className="inline-flex items-center gap-1.5 text-sm text-gray-500 dark:text-zinc-500 hover:text-gray-900 dark:hover:text-[#fdff75] transition-colors font-normal no-underline"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" className="shrink-0"><path d="M19 12H5" /><path d="M12 19l-7-7 7-7" /></svg>All quickstarts</a>

<div className="mt-2 flex flex-wrap gap-2">
  <Badge size="lg" color="blue">Análisis en tiempo real</Badge>
  <Badge size="lg" color="blue">Data warehousing</Badge>
  <Badge size="lg" color="blue">Observabilidad</Badge>
  <Badge size="lg" color="blue">IA/ML</Badge>
  <Badge size="lg" color="orange">Cloud</Badge>
</div>

Esta página explica cómo obtener los detalles de conexión de un servicio de ClickHouse Cloud existente —el hostname, los números de puerto, el nombre de usuario y la contraseña— desde la línea de comandos con la [ClickHouse CLI](/es/products/cloud/features/cli) (`clickhousectl`). Los comandos no son interactivos; `clickhousectl` devuelve JSON con `--json`.

<h2 id="prerequisites">
  Requisitos previos
</h2>

Instale la CLI de ClickHouse:

```bash theme={null}
curl https://clickhouse.com/cli | sh
```

También necesitas `jq`.

Los pasos de escritura que se describen a continuación requieren [autenticación mediante API key](/es/products/cloud/features/admin-features/api/openapi): `cloud service start` (solo si tu service está `stopped`) y `reset-password`. El inicio de sesión con OAuth es de solo lectura y cubre únicamente los pasos de lectura (`service list`, `service get`):

```bash theme={null}
clickhousectl cloud auth login --api-key <YOUR_KEY> --api-secret <YOUR_SECRET>
```

Como alternativa, defina las variables de entorno `CLICKHOUSE_CLOUD_API_KEY` y `CLICKHOUSE_CLOUD_API_SECRET`. Compruébelo con `clickhousectl cloud auth status`; debería aparecer una entrada con el scope `read/write`.

También necesita un servicio de ClickHouse Cloud ya existente del que obtener los detalles de conexión; por ejemplo, uno creado en la guía de inicio rápido [Cree su primer servicio en Cloud](/es/get-started/quickstarts/create-your-first-service-on-cloud) o mediante el flujo de CLI de [Inicio rápido en Cloud](/es/getting-started/quick-start/cloud).

<h2 id="find-your-service">
  Encuentra tu service
</h2>

Enumera los services de tu organization y anota el ID de aquel al que quieras conectarte:

```bash theme={null}
clickhousectl cloud service list --json | jq -r '.[] | [.id, .name, .state] | @tsv'
```

```text theme={null}
9c2d4e61-7a35-49c8-8f0e-2b5a1d7c3e90	my-first-service	running
```

Guarde el ID del service; todos los demás comandos de esta guía lo reciben como argument. Para buscarlo por name:

```bash theme={null}
CH_ID=$(clickhousectl cloud service list --json | jq -r '.[] | select(.name == "my-first-service") | .id')
```

Necesitarás el service en ejecución para verificar la conectividad en un paso posterior. Si su estado es `stopped`, inícielo y consulte su estado hasta que sea `running` (un service que está `idle` por el escalado en reposo se activa automáticamente en la primera connection, por lo que aquí no requiere ninguna acción):

```bash theme={null}
clickhousectl cloud service start "$CH_ID"
while [ "$(clickhousectl cloud service get "$CH_ID" --json | jq -r .state)" != "running" ]; do
  sleep 15
done
```

<h2 id="get-your-connection-details">
  Obtener los detalles de conexión
</h2>

`clickhousectl cloud service get` devuelve los detalles completos del servicio, incluido un endpoint por cada protocolo expuesto. Guarde la respuesta y extraiga los datos que necesite:

```bash theme={null}
clickhousectl cloud service get "$CH_ID" --json > service.json
jq '.endpoints' service.json
```

```json theme={null}
[
  {
    "host": "abc123.us-east-1.aws.clickhouse.cloud",
    "port": 9440,
    "protocol": "nativesecure"
  },
  {
    "host": "abc123.us-east-1.aws.clickhouse.cloud",
    "port": 8443,
    "protocol": "https"
  }
]
```

Estos son los dos protocolos de red principales de ClickHouse Cloud, cada uno en su propio puerto:

* **Protocolo nativo (`nativesecure`, puerto 9440)**: protocolo binario utilizado por `clickhouse-client`, `clickhouse-local` y la mayoría de los drivers específicos de cada lenguaje. Es la opción más rápida y admite todas las funcionalidades de ClickHouse. En Cloud se requiere TLS.
* **Protocolo HTTPS (`https`, puerto 8443)**: interfaz basada en HTTP, útil para clients REST, `curl`, herramientas web y drivers que prefieren HTTP. También requiere TLS en Cloud.

Ambos protocolos requieren cifrado TLS para conectarse a ClickHouse Cloud: no es posible hacerlo en plaintext. La mayoría de las herramientas se encargan de esto automáticamente cuando se especifica el puerto correcto, pero es posible que deba pasar el indicador `--secure` o establecer `ssl=true`, según el client. Para la mayoría de las guías de inicio rápido y los workflows de CLI de esta serie, utilizará el **protocolo nativo en el puerto 9440**.

Extraiga el hostname y los puertos:

```bash theme={null}
CH_HOST=$(jq -r '.endpoints[] | select(.protocol == "nativesecure") | .host' service.json)
CH_NATIVE_PORT=$(jq -r '.endpoints[] | select(.protocol == "nativesecure") | .port' service.json)
CH_HTTPS_PORT=$(jq -r '.endpoints[] | select(.protocol == "https") | .port' service.json)
```

El nombre de usuario es `default`, a menos que haya creado usuarios de base de datos adicionales.

<h2 id="get-a-password">
  Obtener una contraseña
</h2>

La contraseña del usuario `default` se devuelve una sola vez, al ejecutar `clickhousectl cloud service create`: ninguna llamada a la API ni a la CLI permite recuperarla más adelante. Si la guardaste en el momento de la creación, asígnala a la variable que utilizan los pasos posteriores y omite el restablecimiento:

```bash theme={null}
CH_PASSWORD='<your saved password>'
```

Si se pierde, genere una nueva:

```bash theme={null}
CH_PASSWORD=$(clickhousectl cloud service reset-password "$CH_ID" --json | jq -r .password)
```

<Warning>
  `reset-password` invalida de inmediato la contraseña anterior del usuario `default`: cualquier client que siga configurado con la contraseña antigua dejará de autenticarse. Si el service forma parte de un [warehouse](/es/products/cloud/features/infrastructure/warehouses), los usuarios de base de datos se comparten entre todos los services de ese warehouse, por lo que el restablecimiento también rota la contraseña de los demás services del mismo warehouse. Al igual que la original, la nueva contraseña se muestra una sola vez, así que guárdela en un lugar seguro.
</Warning>

<h2 id="save-your-connection-details-for-reuse">
  Guarde sus datos de conexión para reutilizarlos
</h2>

Utilizará estos datos de conexión con frecuencia a lo largo de las guías de inicio rápido. Para no tener que volver a escribirlos cada vez, puede exportarlos como variables de entorno en su sesión de terminal:

```bash theme={null}
export CLICKHOUSE_HOST=$CH_HOST
export CLICKHOUSE_USER=default
export CLICKHOUSE_PASSWORD=$CH_PASSWORD
```

<Warning>
  Estas variables de entorno solo persisten durante la sesión actual de la terminal. No almacene contraseñas en los archivos de perfil del shell (`.bashrc`, `.zshrc`) ni haga commit de ellas en el control de versiones.
</Warning>

<h2 id="verify-connectivity">
  Verificar la conectividad
</h2>

Verifique la interfaz HTTPS (puerto 8443) con `curl`:

```bash theme={null}
curl --user "$CLICKHOUSE_USER:$CLICKHOUSE_PASSWORD" \
  "https://$CLICKHOUSE_HOST:8443/?query=SELECT%201"
```

```text theme={null}
1
```

Verifique el protocolo nativo (puerto 9440) con [**clickhouse client**](/es/concepts/features/interfaces/client). La ClickHouse CLI gestiona el binario `clickhouse` por usted, por lo que si aún no lo tiene, `clickhousectl local use latest` lo instala y crea un enlace simbólico en `~/.local/bin/clickhouse`. A continuación:

```bash theme={null}
clickhouse client --host "$CLICKHOUSE_HOST" --secure --port 9440 \
  --user "$CLICKHOUSE_USER" --password "$CLICKHOUSE_PASSWORD" \
  --query "SELECT concat('Connected to ClickHouse ', version(), ' as ', currentUser())"
```

```text theme={null}
Connected to ClickHouse 26.2.1.558 as default
```

<h2 id="cleanup">
  Limpieza
</h2>

Esta guía solo lee los metadatos del servicio y (opcionalmente) restablece una contraseña: no crea recursos nuevos en la nube, por lo que no hay nada que limpiar.

Una excepción: si su servicio estaba `stopped` y lo inició únicamente para comprobar la conectividad, seguirá en ejecución y generando cargos por compute. Vuelva a detenerlo si todavía no necesita tenerlo en ejecución:

```bash theme={null}
clickhousectl cloud service stop "$CH_ID"
```

<h2 id="next-steps">
  Próximos pasos
</h2>

Ya cuenta con todos los detalles de conexión necesarios para conectarse a su servicio de ClickHouse Cloud desde cualquier herramienta externa. El hostname, el puerto, el nombre de usuario y la password que obtuvo aquí se utilizan en el resto de la serie de guías de inicio rápido.

Continúe con las siguientes guías de inicio rápido:

* [Insertar datos con clickhouse-client](/es/get-started/quickstarts/insert-data-using-clickhouse-client)
* [Cree su primera MergeTree table](/es/get-started/quickstarts/create-your-first-mergetree-table)

O profundice con la documentación de referencia:

* [Native interface (TCP)](/es/concepts/features/interfaces/tcp)
* [HTTP interface](/es/concepts/features/interfaces/http)
