Подключение к YDB в DBeaver (и DataGrip)
В документации к YDB есть статья о подключении к DBeaver и к DataGrip. Единственный момент, который был мне не понятен — как подключиться к Serverless YDB в Яндекс Облаке.
В документации указана следующая строка подключения:
text
jdbc:ydb:<ydb_endpoint>/<ydb_database>?useQueryService=true
Эндпойнт YDB в облаке имеет следующий вид:
text
grpcs://ydb.serverless.yandexcloud.net:2135/?database=/ru-central1/xxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyy
Для подключения нам понадобится сервисный аккаунт с правами доступа к нужной БД.
Создаём ключ доступа для сервисного аккаунта:
bash
yc iam key create --service-account-id xxxxxxxxxxxxxxxxxxxx -o key.json
Размещаем этот ключ где-то в файловой системе (у меня это ~/.config/ydb/).
Тогда строка подключения будет выглядеть так:
text
jdbc:ydb:grpcs://ydb.serverless.yandexcloud.net:2135/ru-central1/xxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyy?useQueryService=true&saFile=~/.config/ydb/key.json
Обратите внимание на то что адрес эндпойнта немного видоизменился в строке подключения (пропала часть ?database=).