> For the complete documentation index, see [llms.txt](https://docs.tessell.com/tessell/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tessell.com/tessell/database-engines/tessell-for-oracle/db-services/my-services/database-service-home-page/pdbs-databases.md).

# PDBs (Databases)

The PDBs tab presents a complete view and management interface for all Pluggable Databases (PDBs) within your Container Database (CDB) service. This tab is displayed only for services provisioned with CDB/PDB architecture.

Each PDB is an isolated, portable tenant database that shares resources with the parent CDB. Tessell provides full lifecycle management: creation, credential management, open/close operations, and deletion.

***

## What columns and statuses appear in the PDBs table?

| Column                  | Description                                         |
| ----------------------- | --------------------------------------------------- |
| **Name**                | PDB name — unique within the database service.      |
| **Status**              | Current runtime state of the PDB (see table below). |
| **Connection Endpoint** | Hostname for the PDB. Click the copy icon to copy.  |
| **Created**             | Date and time the PDB was created.                  |

#### PDB status reference

| Status         | Description                                                               | Oracle state mapping                         |
| -------------- | ------------------------------------------------------------------------- | -------------------------------------------- |
| **Ready**      | PDB is open and available for connections.                                | Open Mode: READ WRITE, READ ONLY, or MIGRATE |
| **Restricted** | PDB is open but only users with RESTRICTED SESSION privilege can connect. | Open Mode with Restricted: YES               |
| **Stopped**    | PDB is closed. No connections allowed.                                    | Open Mode: MOUNTED                           |
| **Creating**   | PDB creation is in progress.                                              | N/A                                          |
| **Deleting**   | PDB deletion is in progress.                                              | N/A                                          |
| **Updating**   | A PDB operation (credential reset or state change) is in progress.        | N/A                                          |
| **Failed**     | A PDB operation failed. Check the Events tab for details.                 | N/A                                          |

> **Note:** Tessell periodically syncs with Oracle to detect state changes. If you change a PDB state directly in Oracle (e.g., closing via SQL), Tessell automatically detects and updates the status during the next sync cycle.

***

## What actions are available per PDB?

Click the ellipsis icon (⋮) on the right side of any PDB row to access:

### Reset PDB credentials

1. Select **Edit Credentials**.
2. The **PDB Master Username** is shown for reference and cannot be changed after creation.
3. Enter a new **PDB Master Password** (at least 9 characters; allowed special characters: `!`, `#`, `$`, `%`, `^`, `&`, `*`).
4. Click **Save**.

> **Notes:** Password reset is effective immediately for new connections. Existing active connections are not terminated but require the new password on reconnect. Only one credential update per PDB at a time.

### Open a PDB

Brings a Stopped PDB to Ready state (READ WRITE mode).

1. Select **Open PDB** → review the confirmation dialog → click **Open**.
2. Status changes: Stopped → Updating → Ready.

> Available only when the PDB status is **Stopped**. For HA services, the operation is coordinated across all instances.

### Close a PDB

Makes an open PDB unavailable (MOUNTED state).

1. Select **Close PDB** → review the warning that all active sessions will be disconnected → optionally add comments → click **Close**.
2. Status changes: Ready/Restricted → Updating → Stopped.

> Available only when the PDB status is **Ready** or **Restricted**. All active connections are forcefully disconnected.

### Drop a PDB

Permanently deletes the PDB and all its data.

1. Select **Drop PDB** → read the critical warning: "This action cannot be undone. All data in this PDB will be permanently deleted."
2. Optionally add comments.
3. Type the **exact PDB name** in the confirmation field.
4. Click **Drop**.

> **Warning:** There is no recovery from a dropped PDB unless a snapshot or backup exists. The PDB must be closed before dropping — Tessell automatically closes it if needed. This operation cannot be cancelled once initiated.

***

## How do I create a new Pluggable Database?

1. Click **+ Add Database** (top-right of the PDBs tab).
2. In the **PDB details** section:
   * **Database Name** — must start with a letter, contain only alphanumerics and underscores, maximum 30 characters, unique within the CDB service.
   * **Description** (optional).
3. In the **Database Credentials** section:
   * **PDB Master Username** — starts with a letter or underscore, alphanumerics and underscores only, max 32 characters.
   * **PDB Master Password** — at least 9 characters; allowed special characters: `!`, `#`, `$`, `%`, `^`, `&`, `*`.
4. In the **Custom scripts** section (optional):
   * Select a **Post-script** (SQL only, `.sql` extension) to run after PDB creation using the PDB master user context. Scripts must be pre-registered in the [Script Library](/tessell/database-engines/tessell-for-oracle/db-services/script-library.md). Use post-scripts to create schemas, grant privileges, load reference data, or configure PDB settings.
   * For HA services, scripts run only on the primary PDB; replicas inherit the state.
5. (Optional) Configure a native backup schedule for the new PDB:
   1. Toggle **Schedule backup** to enable.
   2. Choose **Standard** or **Custom** configuration type.
   3. For **Standard**: set retention days (7–35), full backup day, full backup time, and incremental backup time.
   4. For **Custom**: choose an RPO policy, full backup day and time, incremental backup time, and backup frequency (Daily, Weekly, Monthly, and/or Yearly).
6. Click **Create**.

Tessell automatically:

1. Provisions the PDB within the CDB.
2. Configures the PDB master user and credentials.
3. Executes the post-script (if selected).
4. Opens the PDB in READ WRITE mode.
5. Updates the status to **Ready**.

> **Notes:**
>
> * For HA services, the PDB is created on the primary and automatically replicated to standby instances.
> * The PDB inherits character sets and timezone from the parent CDB.

As an alternative, use the **Code** button to view and copy or download the API call for creating a PDB in Shell, Python, Go, Java, JavaScript, or PowerShell.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.tessell.com/tessell/database-engines/tessell-for-oracle/db-services/my-services/database-service-home-page/pdbs-databases.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
