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

# Materialize

> The driver for Materialize is supported by its vendor. Please report any issues to their Slack.

<Warning>
  The driver for Materialize is supported by its vendor. Please report any issues
  to their [Slack][materialize-slack].
</Warning>

## Prerequisites

* The hostname for the [Materialize][materialize] database server

## Setup

### Manual

Add the following to a `.env` file in your Cube project:

```dotenv theme={"dark"}
CUBEJS_DB_TYPE=materialize
CUBEJS_DB_HOST=my.materialize.host
CUBEJS_DB_PORT=6875
CUBEJS_DB_NAME=materialize
CUBEJS_DB_USER=materialize
CUBEJS_DB_PASS=materialize
CUBEJS_DB_MATERIALIZE_CLUSTER=quickstart
```

## Environment Variables

| Environment Variable                                                                                            | Description                                                                        | Possible Values           | Required |
| --------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ------------------------- | :------: |
| [`CUBEJS_DB_HOST`](/reference/configuration/environment-variables#cubejs_db_host)                               | The host URL for a database                                                        | A valid database host URL |     ✅    |
| [`CUBEJS_DB_PORT`](/reference/configuration/environment-variables#cubejs_db_port)                               | The port for the database connection                                               | A valid port number       |     ✅    |
| [`CUBEJS_DB_NAME`](/reference/configuration/environment-variables#cubejs_db_name)                               | The name of the database to connect to                                             | A valid database name     |     ✅    |
| [`CUBEJS_DB_USER`](/reference/configuration/environment-variables#cubejs_db_user)                               | The username used to connect to the database                                       | A valid database username |     ✅    |
| [`CUBEJS_DB_PASS`](/reference/configuration/environment-variables#cubejs_db_pass)                               | The password used to connect to the database                                       | A valid database password |     ✅    |
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool)                       | The maximum number of concurrent database connections to pool. Default is `8`      | A valid number            |     ❌    |
| [`CUBEJS_DB_MATERIALIZE_CLUSTER`](/reference/configuration/environment-variables#cubejs_db_materialize_cluster) | The name of the Materialize cluster to connect to                                  | A valid cluster name      |     ❌    |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency)                       | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number            |     ❌    |

[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency

## SSL

To enable SSL-encrypted connections between Cube and Materialize, set the
[`CUBEJS_DB_SSL`](/reference/configuration/environment-variables#cubejs_db_ssl) environment variable to `true`. For more information on how to
configure custom certificates, please check out [Enable SSL Connections to the
Database][ref-recipe-enable-ssl].

[materialize]: https://materialize.com/docs/

[materialize-slack]: https://materialize.com/s/chat

[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
