Подтвердить что ты не робот

Требуется ли ODP.NET установка Oracle Client

Мне нужно подключить Oracle 11g DB из .NET-кода. Для этого я установил ODP.NET bur после прочтения некоторых сообщений в форуме, которые я узнал, что мне также требуется установка Oracle Client.

Это правда? Я вижу, что клиент Oracle имеет размер ок. 2GB!!! Действительно ли мне нужно установить такой огромный клиент, чтобы иметь возможность подключать Oracle DB?

4b9b3361

Ответ 1

Алекс Кех из Oracle в августе 2013 года говорит:

Выпущен управляемый ODP.NET. В настоящее время он является частью Oracle DB 12c клиент. Чтобы использовать управляемый ODP.NET, вам необходимо загрузить и установить DB клиента. Оттуда вы можете извлечь только управляемую ODP.NET сборке и настройке файлов. Эти файлы меньше 10 МБ и могут быть развертывается на любых целевых машинах.

В настоящее время мы упаковываем самостоятельную управляемую версию ODP.NET и Выпуск ODAC 12, который будет намного меньше. Это будет выпущено на OTN в ближайшее время.

Если вы можете подождать пару дней, ODAC 12c выйдет в OTN, и вы сможете скачать эту версию. Это будет наш последний и самый большой управляемая версия ODP.NET

====

Мы не планируем размещать управляемый ODP.NET на NuGet. Мы считаем, что управляемая загрузка ODP.NET с ODAC обеспечит те же преимущества NuGet с точки зрения изоляции сборки и размера загрузки.

Там обсуждается вопрос о том, должен ли Oracle предоставлять управляемые Поддержка NuGet ODP.NET. Как только вы используете ODAC 12c, я хотел бы знать ваши мысли о том, нужна ли поддержка NuGet. https://forums.oracle.com/thread/2559445

Nuget управляет ODP.NET:

PM> Install-Package Oracle.ManagedDataAccess

Так в чем же проблема?
В основном до сих пор ODP.NET был .NET-слоем, который говорит с файлами клиента .dll Oracle. Это был небольшой факт, который имел много последствий:

  • Большая занимаемая площадь (несколько сотен Мб)
  • Трудное развертывание на удаленных компьютерах - необходимо установить ODP.NET на клиента машины или развертывание больших файлов
  • Сложность при работе с несколькими версиями, 32bit/64bit os и приложениями

Итак, что это такое?

Управляемый драйвер - это, в основном, один DLL файл с встроенной реализацией ODP.NET. Это означает, что Oracle Client не нужен, и теперь собственный код находится за кулисами. Установка XCopy может быть легко выполнена.

Основные преимущества:

  • Малый размер
  • Скомпилирован как любой процессор, поэтому он может работать на 32-битной/64-битной ОС и приложение плавно. Простота управления несколькими версиями на та же машина
  • Может быть развернута как простая ссылка в приложении bin.

Итак, какой улов?

  • Не все функции поддерживаются (хотя большинство из них...) вы можно узнать больше на документации
  • Пространство имен изменяется с Oracle.DataAccess.Client для Oracle.ManagedDataAccess.Client
  • Различия в производительности все еще не ясны. (Старый) Родной код всегда работают очень эффективно, но, с другой стороны, 100% код имеет свои преимущества.

Обратите внимание, что ODP-код Native-Code по-прежнему очень доступен. Управляемая версия (по крайней мере на данный момент) поставляется в дополнение к родной.

Ссылки: http://oracleatdotnet.blogspot.com.es/2013/07/odpnet-managed-driver-beta-2.html

Различия между управляемым драйвером ODP.NET и неуправляемым драйвером http://docs.oracle.com/html/E41125_02/intro004.htm

Возможности Oracle Data Provider для .NET http://docs.oracle.com/database/121/ODPNT/features.htm#ODPNT0007

Ответ 2

Для ODP.NET требуются собственные DLL файлы OCI (~ 130 МБ).

Вероятно, самый простой способ получить все необходимые файлы - загрузить "Oracle Data Access Components с развертыванием XCopy" с oracle.com.

Для вашей справки, следующие DLL используются ODP.NET во время выполнения:

oci.dll
Oracle.DataAccess.dll (the managed ODP.NET assembly itself)
orannzsbb11.dll
oraociei11.dll
OraOps11w.dll

Кстати, вам нужно быть осторожным, используете ли вы 32-разрядные или 64-разрядные собственные DLL файлы Oracle - вы должны сопоставить их с "битностью" вашего управляемого кода. Это особенно сложно, если вы строите "Любой процессор", чтобы битность не была исправлена.

Ответ 3

вы можете получить управляемый ODP.NET с помощью NuGet слишком https://www.nuget.org/packages/odp.net.managed/

PM> Install-Package odp.net.managed 

Следите за быстрым запуском видео с помощью управляемого драйвера ODP.NET! (скопировано из http://www.oracle.com/technetwork/topics/dotnet/whatsnew/index.html)

http://www.youtube.com/watch?feature=player_embedded&v=I1q50HnUh_w


Update:

NuGet для официального Oracle ODP.NET, управляемый драйвер https://www.nuget.org/packages/Oracle.ManagedDataAccess/

Или консоль диспетчера пакетов

PM> Install-Package Oracle.ManagedDataAccess

Ответ 5

Я оставляю этот ответ, потому что с выпуском управляемого драйвера ODP.net старые ответы немного устарели.

Управляемый драйвер ODP.net теперь выпущен.

Текущая версия ODAC 12cR2 обратно совместима с Oracle 10gR2 или более поздней. См. Раздел "Требования к системе" Инструкции по установке ODAC 12cR2. ODAC 12cR2 требует/поддерживает .Net-рамки от версии 4 до 4.5.1.

Предыдущая версия ODAC 12cR1 также обратно совместима с Oracle 10gR2 или новее в соответствии с ней инструкции по установке.