Як встановити драйвери Oracle OLE для використання в SQL Server 2008 R2 x64


10

Відповідно до стандартної процедури, яку ми використовували протягом багатьох років для попередніх версій як Oracle, так і SQL Server, я встановив останній пакет OAC Oracle, який включає драйвер Oracle OLE на наш новий вузол SQL Server 2008 R2 x64. Я зробив рекомендовану перезавантаження системи, але OraOLEDB.Oracle не відображається у вузлі "Пов'язані сервери \ Провайдери" в SSMS. Єдина відмінність між цією установкою та попередніми установками SQL Server полягає в тому, що я зараз використовую SQL Server x64 (для Windows 2008 R2). Чи має це змінитись?

Зауважте, що я можу підключитися до серверів Oracle за допомогою SQL * Plus безпосередньо з вузлів SQL Server. Єдине, чого мені не вистачає, це провайдер. Хтось знає, чого я пропускаю? В Інтернеті є багато публікацій, але, здається, існує велика сум'яття та застарілі посилання на сторінку завантаження Oracle.

ТІЛЬКО, що мені потрібно зробити, це створити зв'язаний сервер до Oracle і запустити обрані запити проти нього. Мені не потрібно нічого робити через Visual Studio.


У мене є простіша відповідь, як це зробити, але вона включає драйвери Oracle 12 і SQL Server 2012. Чи слід додати відповідь на це запитання або задати нове запитання?
Баодад

Відповіді:


15

Після декількох годин дослідження мені вдалося скласти кілька робочих інструкцій для Oracle 11g R2. Як виявляється, вам, ймовірно, знадобляться як 32, так і 64-бітні клієнти, встановлені для роботи в BIDS / Visual Studio / SSMS. Можливо, я встановив більше компонентів Oracle, ніж мені потрібно, але ось що для мене спрацювало:

  1. Завантажте 32 та 64-розрядні клієнти з http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html (натисніть "переглянути всі", щоб побачити різні версії, інакше ви завантажуєте повна програма Oracle. Ваші завантаження мають становити близько 600 мег кожен)
  2. Запустіть 32-бітну установку на SQL Server. Виберіть "Спеціальний"
  3. Для бази Oracle введіть "C: \ Oracle"
  4. У розділі "Розташування програмного забезпечення" перейдіть до C: \ Oracle \ product \ 11.2.0 \ client_ 32
  5. Виберіть наступні компоненти:
  6. SQL * Plus
  7. Інтерфейс виклику Oracle (OCI)
  8. Oracle Net
  9. Служби Oracle для сервера транзакцій Microsoft
  10. Помічник адміністрування Oracle для Windows
  11. Провайдер Oracle для OLE DB
  12. Постачальник даних Oracle для .NET
  13. Провайдери Oracle для ASP.NET
  14. Повторіть вище дії з 64-розрядним інсталятором. ТАКОЖ, змініть "Місце розташування програмного забезпечення" на C: \ Oracle \ product \ 11.2.0 \ client_ 64
  15. Я отримав помилку пам’яті в цей момент, але вирішив її проігнорувати, оскільки знаю, що достатньо
  16. Ігноруйте помилку "OracleMTSRecoveryService вже існує"

Тепер, коли встановлення завершено, потрібно лише підправити кілька речей.

  1. Внесіть зміни в реєстрі до HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ MSDTC \ MTxOCI
  2. OracleOciLib має бути oci.dll
  3. OracleSqlLib має бути orasql11.dll
  4. OracleXaLib має бути oraclient11.dll
  5. Внесіть ті самі зміни реєстру в HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ MSDTC \ MTxOCI
  6. Створіть або скопіюйте нову tnsnames.ora в C: \ Oracle \ product \ 11.2.0 \ client_ 32 \ network \ admin
  7. Створіть або скопіюйте нову tnsnames.ora в C: \ Oracle \ product \ 11.2.0 \ client_ 64 \ network \ admin
  8. Перезавантажте!
  9. Тепер ви повинні бачити OraOLEDB.Oracle в якості постачальника в розділі "Пов'язані сервери \ провайдери" в SSMS
  10. Клацніть правою кнопкою миші цього постачальника, а потім Властивості, а потім поставте прапорець "Дозволити процес"
  11. Тепер ви можете створити зв'язаний сервер через GUI або T-SQL

Удачі!


1
У мене була така ж проблема (підключення до SQL Server 2008 R2 64x до Oracle 8), і я вирішив її, дотримуючись ваших інструкцій. На щастя, мені просто довелося встановити 64-бітний клієнт. Дякую!
santiiiii

Я встановив його без SQL * Plus та Assistant Assistant та без змін реєстру на машині x64 і він працював.
Габріель Гімараес

Привіт @SomeGuy, чи можу я використати ваші інструкції також з 12с спасибі
Віллі Ченг

Підвищує розмір завантаження - 3,1 Гб для останнього клієнта Oracle для Windows x64 версії 19С.
Майк

0

Так, архітектура системи робить багато змін.

Потрібно встановити клієнтське програмне забезпечення x64 Oracle для Windows.


Я не можу знайти компоненти x64 для 11g на сайті Oracle без завантаження всього клієнта x64, який становить 2 Гб. ODAC, здається, піднімається лише до 10 г. Хтось ще помічає це? Я зараз спробую повного клієнта, але раніше ніколи не робив цього. Можливо, вони будуть випускати ODAC 11g для x64 у майбутньому.
SomeGuy

Клієнт ~ 615 Мб, пакет 2 Гб - це повний продукт; дивіться тут: oracle.com/technetwork/database/enterprise-edition/downloads/… .
Массімо

2
@SomeGuy насправді є ODAC на 11 г, ви не змогли його знайти, оскільки веб-сайт Oracle - це безлад.
Габріель Гімараес
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.