Using database blocks with a password containing `@`

I’m trying to use a MySQL block with a password that contains an @ like mysql://foo:b@r@example.com:3306/mydb This doesn’t work (received fatal alert: Handshake Error). I’ve also tried url encoding the @: mysql://foo:b%40r@example.com:3306/mydb but I get the same error. Is there some other way I should be escaping the @ in the password?

Hi @willgorman, I created a local MySQL user with a password with an @ in it and I’m not able to reproduce the error; the URI masking in the UI is a little off (we’ll fix that), but the user connects and I can run queries. I did the same on Postgres with the same result.

Do you have a user with a password with no special characters you can test with? I suspect the issue you’re running into isn’t related to the @ in the password.

can you try url encoding the @ character in the password? its a common issue when using database url

Ah sorry, I assumed it was the @ because of the URI masking issue but I do get the same error with a different user with no @ in the password. I now see that it looks like the HandshakeFailure likely has something to do with TLS, not the password.