# Quick Start

<!--- Template Guidance 
Write a short introduction and the getting started guide to your product. 
If there are any standout features to call it, this is probably the place to do it. 

NOTE: Take a look at the quick-start of Object Storage (community/community/content/product/storage/object-storage/quick-start/_index.md) for an idea on the tone and the level of detail. 
-->

Launch a fully managed database, message queue, or analytics engine on Exoscale. This quick start guide outlines the minimal steps required to initiate any DBaaS service via the CLI or the Portal.


## Prerequisites  
- **Exoscale CLI**  
  download the latest (≥ v1.45) binary for macOS, Linux or Windows from [GitHub](https://github.com/exoscale/cli/releases/latest).  
- **API Key/Secret**     
  configured via the CLI with `exo config`. 
- **Exoscale Account**  
  sign in or [register](https://portal.exoscale.com/register).  


## First Steps via CLI
This quick start guide will demonstrate how to create a first service via the CLI for Managed PostgreSQL, but the method is valid for all DBaaS service types.

### Bootstrap Instructions
First, verify that the CLI is working correctly. You can do this by listing the DBaaS service types available with the command:

```bash
exo dbaas type list
```

```bash
┼────────────┼────────────────────┼─────────────────┼
│    NAME    │ AVAILABLE VERSIONS │ DEFAULT VERSION │
┼────────────┼────────────────────┼─────────────────┼
│ pg         │ 14, 15, 16, 17     │ 16              │
│ opensearch │ 1, 2               │ 2               │
│ kafka      │ 3.8, 3.9           │ 3.8             │
│ valkey     │                    │ -               │
│ grafana    │                    │ -               │
│ mysql      │ 8                  │ 8               │
┼────────────┼────────────────────┼─────────────────┼
```

Then per service, you can list the plans available:

```bash
exo dbaas type show pg --plans
```

Output:

```bash
┼──────────────────┼─────────┼────────┼─────────────┼────────────┼────────────┼
│       NAME       │ # NODES │ # CPUS │ NODE MEMORY │ DISK SPACE │ AUTHORIZED │
┼──────────────────┼─────────┼────────┼─────────────┼────────────┼────────────┼
│ startup-8        │ 1       │ 4      │ 8.6 GB      │ 188 GB     │ true       │
│ startup-64       │ 1       │ 12     │ 69 GB       │ 805 GB     │ false      │
│ startup-4        │ 1       │ 2      │ 4.3 GB      │ 86 GB      │ true       │
│ startup-32       │ 1       │ 8      │ 34 GB       │ 537 GB     │ true       │
│ startup-225      │ 1       │ 24     │ 242 GB      │ 1.4 TB     │ false      │
│ startup-16       │ 1       │ 4      │ 17 GB       │ 376 GB     │ true       │
│ startup-128      │ 1       │ 16     │ 137 GB      │ 1.1 TB     │ false      │
│ so-startup-64    │ 1       │ 12     │ 69 GB       │ 2.1 TB     │ false      │
│ so-startup-32    │ 1       │ 8      │ 34 GB       │ 1.0 TB     │ false      │
│ so-startup-225   │ 1       │ 24     │ 242 GB      │ 7.2 TB     │ false      │
│ so-startup-128   │ 1       │ 16     │ 137 GB      │ 4.1 TB     │ false      │
│ so-premium-64    │ 3       │ 12     │ 69 GB       │ 2.1 TB     │ false      │
│ so-premium-32    │ 3       │ 8      │ 34 GB       │ 1.0 TB     │ false      │
│ so-premium-225   │ 3       │ 24     │ 242 GB      │ 7.2 TB     │ false      │
│ so-premium-128   │ 3       │ 16     │ 137 GB      │ 4.1 TB     │ false      │
│ so-business-64   │ 2       │ 12     │ 69 GB       │ 2.1 TB     │ false      │
│ so-business-32   │ 2       │ 8      │ 34 GB       │ 1.0 TB     │ false      │
│ so-business-225  │ 2       │ 24     │ 242 GB      │ 7.2 TB     │ false      │
│ so-business-128  │ 2       │ 16     │ 137 GB      │ 4.1 TB     │ false      │
│ premium-8        │ 3       │ 4      │ 8.6 GB      │ 188 GB     │ true       │
│ premium-64       │ 3       │ 12     │ 69 GB       │ 805 GB     │ false      │
│ premium-4        │ 3       │ 2      │ 4.3 GB      │ 86 GB      │ true       │
│ premium-32       │ 3       │ 8      │ 34 GB       │ 537 GB     │ true       │
│ premium-225      │ 3       │ 24     │ 242 GB      │ 1.4 TB     │ false      │
│ premium-16       │ 3       │ 4      │ 17 GB       │ 376 GB     │ true       │
│ premium-128      │ 3       │ 16     │ 137 GB      │ 1.1 TB     │ false      │
│ hobbyist-2       │ 1       │ 2      │ 2.1 GB      │ 8.6 GB     │ true       │
│ cpu-startup-64   │ 1       │ 32     │ 69 GB       │ 913 GB     │ false      │
│ cpu-startup-32   │ 1       │ 16     │ 34 GB       │ 698 GB     │ false      │
│ cpu-startup-16   │ 1       │ 8      │ 17 GB       │ 483 GB     │ false      │
│ cpu-startup-128  │ 1       │ 40     │ 137 GB      │ 1.2 TB     │ false      │
│ cpu-premium-64   │ 3       │ 32     │ 69 GB       │ 913 GB     │ false      │
│ cpu-premium-32   │ 3       │ 16     │ 34 GB       │ 698 GB     │ false      │
│ cpu-premium-16   │ 3       │ 8      │ 17 GB       │ 483 GB     │ false      │
│ cpu-premium-128  │ 3       │ 40     │ 137 GB      │ 1.2 TB     │ false      │
│ cpu-business-64  │ 2       │ 32     │ 69 GB       │ 913 GB     │ false      │
│ cpu-business-32  │ 2       │ 16     │ 34 GB       │ 698 GB     │ false      │
│ cpu-business-16  │ 2       │ 8      │ 17 GB       │ 483 GB     │ false      │
│ cpu-business-128 │ 2       │ 40     │ 137 GB      │ 1.2 TB     │ false      │
│ business-8       │ 2       │ 4      │ 8.6 GB      │ 188 GB     │ true       │
│ business-64      │ 2       │ 12     │ 69 GB       │ 805 GB     │ false      │
│ business-4       │ 2       │ 2      │ 4.3 GB      │ 86 GB      │ true       │
│ business-32      │ 2       │ 8      │ 34 GB       │ 537 GB     │ true       │
│ business-225     │ 2       │ 24     │ 242 GB      │ 1.4 TB     │ false      │
│ business-16      │ 2       │ 4      │ 17 GB       │ 376 GB     │ true       │
│ business-128     │ 2       │ 16     │ 137 GB      │ 1.1 TB     │ false      │
┼──────────────────┼─────────┼────────┼─────────────┼────────────┼────────────┼
```

### Create a First Service
The sequence below is shown for service `pg` as an example.

To create a first service, use the `exo dbaas create` command. The
`--help` flag will give all the details on the usage:

```bash
exo dbaas create pg hobbyist-2 test-pg --pg-ip-filter 1.2.3.4/32 -z de-fra-1
```

Output:

```bash
Creating Database Service "test-pg"...
┼───────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼
│   DATABASE SERVICE    │                                                                                                                                │
┼───────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼
│ Zone                  │ de-fra-1                                                                                                                       │
│ Name                  │ test-pg                                                                                                                        │
│ Type                  │ pg                                                                                                                             │
│ Plan                  │ hobbyist-2                                                                                                                     │
│ Disk Size             │ 8.0 GiB                                                                                                                        │
│ State                 │ rebuilding                                                                                                                     │
│ Creation Date         │ 2022-06-09 08:26:13 +0000 UTC                                                                                                  │
│ Update Date           │ 2022-06-09 08:26:13 +0000 UTC                                                                                                  │
│ Nodes                 │ 1                                                                                                                              │
│ Node CPUs             │ 2                                                                                                                              │
│ Node Memory           │ 2.0 GiB                                                                                                                        │
│ Termination Protected │ true                                                                                                                           │
│ Maintenance           │ sunday (11:52:43)                                                                                                              │
│ Version               │ 14                                                                                                                             │
│ Backup Schedule       │ 08:19                                                                                                                          │
│ URI                   │ postgres://avnadmin:xxxxx@test-pg-exoscale-980a712f-5c76-4ec4-a3bc-4e4e442deef2.aivencloud.com:21699/defaultdb?sslmode=require │
│ IP Filter             │ 1.2.3.4/32                                                                                                                     │
│ Components            │                                                                                                                                │
│                       │   pg          test-pg-exoscale-980a712f-5c76-4ec4-a3bc-4e4e442deef2.aivencloud.com:21699   route:dynamic   usage:primary       │
│                       │   pgbouncer   test-pg-exoscale-980a712f-5c76-4ec4-a3bc-4e4e442deef2.aivencloud.com:21700   route:dynamic   usage:primary       │
│                       │                                                                                                                                │
│ Users                 │ n/a                                                                                                                            │
┼───────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼
```

*PS1: from now on add the `-z <zone>` flag to manage this DB
instance*

*PS2: your organization is limited to 3 DBaaS services total by default.
Contact our Support team if you encounter
the message `Usage of resource 'dbaas' has been exceeded.`*


## First Steps via Portal
This quick start guide will demonstrate how to create a first service via the Portal for Managed PostgreSQL, but the steps shown are valid for all DBaaS service types.


### Add a Service in Portal
Navigate to the [DBaaS view](https://portal.exoscale.com/dbaas):

![](dbaas-menu.png "Exoscale DBaaS navigation menu")

Select the service type you want to add from the `...` menu at the top right header. For example, here for a [Managed PostgreSQL](https://portal.exoscale.com/dbaas/add/pg)

![](dbaas-select-service.png "Exoscale DBaaS select service dropdown")

Enter the name, and select the zone location and service plan. click on `Create` to launch the service.

![](dbaas-add-pg-service.png "Exoscale DBaaS add PostgreSQL service")


### Use Your Service in Portal
The connection details such as the `user`, `password` or `certificate` and `URI`
are available from connection data table in the service detail page.

![](dbaas-details-pg-service.png "Exoscale DBaaS details PostgreSQL service")

Copy these details into a database client or application to start interacting with
the database and create tables.

Continue to the [overview]({{< ref "/product/dbaas/overview/" >}}) section for the next steps with DBaaS.


## Next Steps  
Learn more about the Exoscale DBaaS architecture and concepts in the
[overview]({{< ref "/product/dbaas/overview/" >}}). Then, prepare general topics in the
[how-to]({{< ref "/product/dbaas/how-to/" >}}) section.

You can then access the specific details of each service in the following sections:

- [Managed Grafana]({{< ref "/product/dbaas/service-specific/grafana/" >}})
- [Managed Kafka]({{< ref "/product/dbaas/service-specific/kafka/" >}})
- [Managed MySQL]({{< ref "/product/dbaas/service-specific/mySQL/" >}})
- [Managed OpenSearch]({{< ref "/product/dbaas/service-specific/opensearch/" >}})
- [Managed PostgreSQL]({{< ref "/product/dbaas/service-specific/postgreSQL/" >}})
- [Managed Thanos]({{< ref "/product/dbaas/service-specific/thanos/" >}})
- [Managed Valkey]({{< ref "/product/dbaas/service-specific/valkey/" >}})


