Как подключиться к Oracle 21c в Oracle Cloud из DataGrip
Я создал базу данных автономной обработки транзакций в Oracle Cloud. Готовых JDBC-ссылок нет, но есть «кошельки». Есть кошелек экземпляра и региональный кошелек. Oracle говорит, что один из них, предпочтительно кошелек экземпляра, должен использоваться для подключения к этому экземпляру БД.
Кошелек - это ZIP-файл с десятком файлов внутри. Я загрузил кошелек экземпляра и разархивировал его. Сейчас пытаюсь подключить DataGrip к этому экземпляру.
В DataGrip есть тип подключения, а в кошельке есть известный, так что я думаю, мне стоит их использовать.
TNS
тип подключения принимает
TNSADMIN
параметр, который, я полагаю, является каталогом этого кошелька.
tnsnames.ora
из кошелька перечисляет несколько имен служб, AFAIU они различаются по своему приоритету, например, одно для запросов с низким приоритетом, другое для запросов со средним приоритетом и одно для вопросов с наивысшим приоритетом. Я в порядке со средним приоритетом, поэтому сделал следующее:
Как видите, я получаю сообщение об ошибке:
[08006][17002] IO Error: The Network Adapter could not establish the connection
SSO KeyStore not available.
Я погуглил, но эта тема кажется сложной. Oracle имеет множество параметров подключения с сертификатами, участвующими в процессе подключения, и я действительно новичок, и я просто хочу подключиться к этому экземпляру. Почему это должно быть так сложно? Могу ли я использовать этот кошелек прямо в DataGrip?
2 ответа
Вроде все сделал правильно и проблема только в версии драйвера.
На сегодняшний день, 2021-02-02, последняя доступная версия драйвера Oracle в DataGrip - 19.8.0.0:
Чтобы решить эту проблему, я только что создал еще один драйвер Oracle в DataGrip и вручную предоставил последние JAR-файлы:
- Перейдите к Oracle Database 21c (21.1) JDBC Driver & UCP Downloads
- Загрузите заархивированный драйвер JDBC и сопутствующие JAR-файлы, соответствующие вашей версии Java: 8 или 11. Или просто загрузите версию для Java 8 (
ojdbc8-full.tar.gz
). Он должен работать с любой современной Java. - Создайте новый подкаталог в каталоге драйверов DataGrip для вашего драйвера. Что-то вроде
~/.config/JetBrains/DataGrip2020.3/jdbc-drivers/Oracle/21.1
для Linix. - Разархивируйте драйвер в этом каталоге.
- Настройте новый драйвер в DataGrip. Просто клонируйте существующий драйвер Oracle и замените «Файлы драйвера» файлами из ZIP-архива.
- Используйте этот новый драйвер для подключения к экземпляру:
DataGrip 2021.1 предоставляет драйвер Oracle JDBC 21.1.0.0 со всеми необходимыми файлами jar .
Также прочтите статью DataGrip о подключении к Oracle с помощью кошельков.