Oracle.ManagedDataAccess OracleInternal.NotificationServices.ONSException
Мы используем драйвер ODP.NET "Oracle.ManagedDataAccess" для доступа к базе данных в Oracle.
При подключении к базе данных с помощью строки подключения:
Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=10.40.40.38)(Port=1521)))(CONNECT_DATA=(SERVICE_NAME=D3T))); User Id=test; Password=test'
Внутреннее сообщение об ошибке:
OracleInternal.NotificationServices.ONSException **: ONS: после открытия соединения списки узлов не были настроены.
Код:
string connect = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=10.40.40.38)(Port=1521)))(CONNECT_DATA=(SERVICE_NAME=D3T))); User Id=test; Password=test";
OracleConnection connection = new OracleConnection(connect);
connection.Open();
Связь с базой данных работает нормально. Но что внутренне не так с конфигурацией?
Ответы
Ответ 1
Я нашел эту ссылку полезной: https://www.databaseusers.com/article/6046913/ONS%3A+No+node+lists+were+configured
По сути, вам нужно настроить ONS или отключить LoadBalancing и HAEvents следующим образом:
Oracle.ManagedDataAccess.Client.OracleConfiguration.LoadBalancing = false;
Oracle.ManagedDataAccess.Client.OracleConfiguration.HAEvents = false;