
## Migrate from jdbc-metadata-extractor to Self-Deployed Runtime

URL: https://docs.atlan.com/product/connections/how-tos/migrate-jdbc-to-sdr

> Step-by-step guide for migrating on-premises JDBC database connectors from the jdbc-metadata-extractor to Self-Deployed Runtime (SDR).

:::danger **Deprecated**
This job execution mode was deprecated on June 30, 2026 and is no longer supported or maintained, including bug fixes. Existing workflows may break/be disabled without warning. For all implementations, switch to [Self-deployed runtime](https://docs.atlan.com/llms/platform/self-deployed-runtime/llms.txt).
:::

Before you begin, read [Understand migrating from jdbc-metadata-extractor to SDR](https://docs.atlan.com/llms/catalog/connector-capabilities/understand-migrating-jdbc-to-sdr/llms.txt) to understand what changes and what stays the same.

## Plan migration

Before deploying SDR, complete the following to prepare your environment.

:::note
If you have custom JDBC URLs, mounted driver jars, or companion SQL files in your Docker Compose setup, contact your Atlan account team before proceeding—this guide covers standard configurations only.
:::

1. **Choose deployment mode**: Decide between Docker Compose and Kubernetes. Docker Compose is recommended for most deployments. See [Install SDR on Docker Compose](https://docs.atlan.com/llms/platform/self-deployed-runtime/install-on-docker-compose/llms.txt) and [Install SDR on Kubernetes](https://docs.atlan.com/llms/platform/self-deployed-runtime/install-on-kubernetes/llms.txt).

2. **Move credentials to your secret store**: Credentials currently set as Docker Compose environment variables (`USERNAME`, `PASSWORD`, `HOST`, `DATABASE`, and similar) must be moved into a secret store. SDR retrieves them via Dapr at runtime—credentials are never stored on the host. Store credentials as a JSON object under a key you'll reference in the workflow configuration. See [Secret management](https://docs.atlan.com/llms/platform/self-deployed-runtime/secret-management/llms.txt) for the expected format.

3. **Open firewall for gRPC**: Add an outbound gRPC/TLS rule from your SDR host to `<tenant>-temporal.atlan.com:443`. Verify connectivity from the host:

 ```bash
 curl -v https://<tenant>-temporal.atlan.com:443
 ```

 See [Configure network security](https://docs.atlan.com/llms/platform/self-deployed-runtime/configure-network-security/llms.txt) for full firewall requirements.

## Migrate to SDR

With planning complete, deploy SDR and move your workflows one at a time.

1. **Deploy SDR**: Follow the installation guide for your chosen deployment mode. See [Install SDR on Docker Compose](https://docs.atlan.com/llms/platform/self-deployed-runtime/install-on-docker-compose/llms.txt) or [Install SDR on Kubernetes](https://docs.atlan.com/llms/platform/self-deployed-runtime/install-on-kubernetes/llms.txt).

2. **Switch workflow configuration**: For each workflow, go to **Workflow Center**, open the workflow, and do the following:
 - Change from **Offline** to **Agent**.
 - Fill in the required details of the connector.
 - From the **Agent** dropdown, select your SDR deployment.
 - Update the credential reference to point to your secret store path.
 - Save the workflow.

3. **Run the workflow**: Trigger a manual run and monitor it in **Workflow Center > Logs**. Confirm:
 - Asset count is close to the previous extraction
 - Asset types (tables, views, columns) are present
 - Key lineage paths are intact

Once validated, re-enable the workflow schedule.

You can now remove any pipelines that executed the `jdbc-metadata-extractor` or transferred files to object storage.

:::tip
Switch and validate **one workflow at a time**. If a workflow fails on SDR, revert it to the previous configuration while you investigate.
:::

## See also

- [Self-Deployed Runtime overview](https://docs.atlan.com/llms/platform/self-deployed-runtime/llms.txt)
- [Install SDR on Docker Compose](https://docs.atlan.com/llms/platform/self-deployed-runtime/install-on-docker-compose/llms.txt)
- [Install SDR on Kubernetes](https://docs.atlan.com/llms/platform/self-deployed-runtime/install-on-kubernetes/llms.txt)
- [Understand migrating to SDR](https://docs.atlan.com/llms/platform/secure-agent/understand-migrating-to-sdr/llms.txt)
- [Configuration mapping](https://docs.atlan.com/llms/platform/secure-agent/secure-agent-config-mapping/llms.txt)

---
