# Self-hosted database proxy does not work

**URL:** <https://talk.observablehq.com/t/self-hosted-database-proxy-does-not-work/8479>\
**Category:** Help\
**Created:** [November 10, 2023, 12:33pm UTC](https://talk.observablehq.com/t/self-hosted-database-proxy-does-not-work/8479 "2023-11-10T12:33:58Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![oluckyman](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/oluckyman/32/918_2.png) [@oluckyman](https://talk.observablehq.com/u/oluckyman)\
**Post date:** [November 10, 2023, 12:33pm UTC](https://talk.observablehq.com/t/self-hosted-database-proxy-does-not-work/8479/1 "2023-11-10T12:33:58Z")

</div>

I follow instructions from [Self-hosted database proxies / Observable | Observable](https://observablehq.com/@observablehq/self-hosted-database-proxies)

I have mysql server running on my local machine.  
I added data-base proxy.  
When I test connection in Databases settings it tells “Host is at a reserved address”, and I don’t know what it means.

 ![image](https://canada1.discourse-cdn.com/flex030/uploads/observablehq/original/2X/6/68022ed860d0f1cb5bd01a9c982d28381c9b2b1f.png)

When I try to connect to the self-hosted database from a notebook, the proxy crashes.  
I tried in Arc and in Chrome.

Here is what I see in terminal

```auto
❯ observable-database-proxy start calc
strict mode: use allowUnionTypes to allow union type keyword at "#/properties/params" (strictTypes)
Database proxy calc (mysql) running at http://127.0.0.1:2899

```

And when I try to query database from observable cell it crashes with this error:

```auto
(node:10751) [DEP0123] DeprecationWarning: Setting the TLS ServerName to an IP address is not permitted by RFC 6066. This will be ignored in a future version.
(Use `node --trace-deprecation ...` to show where the warning was created)
node:events:491
      throw er; // Unhandled 'error' event
      ^

Error: self-signed certificate in certificate chain

```

> **Full error message**
>
> ```auto
> at TLSSocket.onConnectSecure (node:_tls_wrap:1538:34)
> at TLSSocket.emit (node:events:513:28)
> at TLSSocket._finishInit (node:_tls_wrap:952:8)
> at ssl.onhandshakedone (node:_tls_wrap:733:12)
> Emitted 'error' event on Connection instance at:
> at Connection._notifyError (/Users/oluckyman/.nvm/versions/node/v18.12.1/lib/node_modules/@observablehq/database-proxy/node_modules/mysql2/lib/connection.js:252:12)
> at ClientHandshake.<anonymous> (/Users/oluckyman/.nvm/versions/node/v18.12.1/lib/node_modules/@observablehq/database-proxy/node_modules/mysql2/lib/connection.js:141:14)
> at ClientHandshake.emit (node:events:525:35)
> at /Users/oluckyman/.nvm/versions/node/v18.12.1/lib/node_modules/@observablehq/database-proxy/node_modules/mysql2/lib/commands/client_handshake.js:155:16
> at TLSSocket.<anonymous> (/Users/oluckyman/.nvm/versions/node/v18.12.1/lib/node_modules/@observablehq/database-proxy/node_modules/mysql2/lib/connection.js:388:9)
> at TLSSocket.emit (node:events:513:28)
> at emitErrorNT (node:internal/streams/destroy:151:8)
> at emitErrorCloseNT (node:internal/streams/destroy:116:3)
> at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
> code: 'HANDSHAKE_SSL_ERROR',
> fatal: true
> }
> 
> Node.js v18.12.1
> 
> ```

---

<div class="post-metadata">

**Author:** ![mootari](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/mootari/32/581_2.png) [@mootari](https://talk.observablehq.com/u/mootari)\
**Post date:** [November 10, 2023, 1:22pm UTC](https://talk.observablehq.com/t/self-hosted-database-proxy-does-not-work/8479/2 "2023-11-10T13:22:42Z")

</div>

Can you try disabling SSL in your connection config and then reexport the secret to your proxy? SSL shouldn’t be required since you’re hosting the proxy locally.
