Драйвер Delphi Devart dbExpress для прямого режима Oracle Cloud «ORA-03113: конец файла на канале связи»

#oracle #delphi #delphi-10.3-rio #devart #oracle-cloud-infrastructure

#Oracle #delphi #delphi-10.3-rio #devart #oracle-cloud-инфраструктура

Вопрос:

В настоящее время мы используем Delphi 13.3 и DevArt dbexpress для Oracle 7.2.1. Мы планируем перенести нашу базу данных клиент-сервера Oracle в облако. Мы рассматриваем возможность перехода к автономной базе данных Oracle Cloud через Direct Connect…ie Имя подключения = DevArt Oracle Direct.

Я могу указать сервер базы данных в свойстве HostName драйвера DevartOracleDirect DBX, например:

 SQLConnection.Params.Values['HostName'] := '<your OracleTestHostName>:1521:<your service name>';
  

Я получаю следующую общую ошибку «ORA-03113: конец файла на канале связи».

Если я беру информацию из имен TNS… Я использую test_high = (описание = (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=xxxx.oraclecloud.com))(connect_data=(service_name=yyyy.oraclecloud.com))(security=(ssl_server_cert_dn=»zzzz»)))

 SQLConnection.Params.Values['HostName'] := 'xxxx.oraclecloud.com:1522:yyyy.oraclecloud.com';
SQLConnection.Params.Values['User_Name'] := 'myUserName';
SQLConnection.Params.Values['Password'] := 'myPassword';
  

Я устанавливаю для своего SqlConnection значение connected = true, затем я получаю «ORA-03113: конец файла на канале связи». Я проработал несколько различных сценариев и, похоже, застрял на этом этапе.
В базе данных Oracle Cloud я что-то еще упускаю? как включить сертификат безопасности / ssl? или учетные данные Oracle Cloud Wallet / Client в SqlConnection?

Кроме того, у меня также есть продукт dbx SQLServer, и я выполняю прямое подключение к базе данных Azure SQLServer, и все работает очень легко.

Комментарии:

1. В прошлый раз, когда я смотрел, вам нужен туннель через SSH. В основном используется SSH для безопасного туннелирования локального порта к порту базы данных Oracle на другом конце. Это позволяет подключаться к различным клиентам, не предоставляя им доступ непосредственно к Интернету. По крайней мере, для Oracle Database Classic Cloud: docs.oracle.com/en/cloud/paas/database-dbaas-cloud/csdbi /…

Ответ №1:

Изучая это для вас, я обнаружил, что вы также размещали сообщения на форумах dbExpress. Похоже, что в настоящее время драйвер Devart dbExpress для Oracle не поддерживает SSL-соединение в прямом режиме. Ответ команды Devart можно найти здесь — https://forums.devart.com/viewtopic.php?t=42351