Як налаштувати та усунення зв'язаний сервер бази даних Oracle у SQL Server

ВАЖЛИВО! Ця стаття перекладена засобами машинного перекладу Microsoft. Статтю можна редагувати в середовищі Community Translation Framework (CTF). Щоб якомога швидше перекласти всі статті у своїй базі знань різними мовами, компанія Microsoft не лише звертається до професійних перекладачів, але й вдається до машинного перекладу, який потім редагується спільнотою. Такі статті можуть містити лексичні, синтаксичні та граматичні помилки. Microsoft не несе відповідальності за будь-які неточності, помилки або збитки, до яких може призвести неправильний переклад статей або їх використання. Докладніше про CTF див. на веб-сторінці http://support.microsoft.com/gp/machine-translation-corrections/uk-ua.

Клацніть тут, щоб переглянути цю статтю англійською мовою: 280106
Підсумки
У цій статті описується процес настроювання пов'язаний сервер з комп'ютера під керуванням Microsoft SQL Server до бази даних Oracle, а також містить основні способи виправлення неполадок для поширених помилок, які можуть виникати під Вільний час інсталяції зв'язаний сервер Oracle.

Настроїти сервер зв'язаний Oracle

  1. Інсталюйте Підтримка програмного забезпечення клієнта Oracle thecomputer з SQL Server, де зв'язаний сервер настроєно.
  2. Інсталяція драйверів, що на комп'ютері, на якому запущено SQL Server.Microsoft лише підтримує MicrosoftOLE постачальника для бази даних Oracle і Microsoft також драйвер ODBC для Oracle. Якщо ви використовуєте сторонніх постачальників або драйвер сторонніх-toconnect Oracle, потрібно звернутися відповідним постачальником для отримання будь-які проблеми, які можуть виникнути під Вільний час сценарій виконання їх постачальника або драйвер.
  3. Якщо використовується MicrosoftOLE DB Provider для Oracle і Microsoft також драйвер ODBC для Oracle, зважте на таке:
    • постачальник послуг оренди застосунків бази даних OLE, так і драйвер ODBC, які постачаються разом із Microsoft Data Access Components (MDAC), потребують SQL * Net 2.3.xабо пізнішої версії. Oracle-7,3 потрібно інсталювати.x -клієнт програмного забезпечення або пізнішої версії, на клієнтському комп'ютері. На клієнтському комп'ютері є на комп'ютері, на якому запущено SQL Server.
    • Переконайтеся, що у вас є MDAC 2.5 або пізнішої версії, інстальованих на комп'ютері під керуванням сервера SQL Server. MDAC 2.1, або з попередньої версії не вдалося підключитися до бази даних, які використовують Oracle 8.x або пізнішої версії.
    • Для ввімкнення MDAC 2.5 або пізнішої версії, для роботи з Підтримка програмного забезпечення клієнта Oracle має змінено реєстр на клієнтському комп'ютері під керуванням сервера SQL Server як указано в наведеній нижче таблиці.
                 Microsoft Windows NT,Oracle     Microsoft Windows 95,Client     Windows 98, and Windows 98 SE    Microsoft Windows 2000 --------------------------------------------------------------------------7.x        [HKEY_LOCAL_MACHINE\SOFTWARE     [HKEY_LOCAL_MACHINE\SOFTWARE             \Microsoft\TransactionServer     Microsoft\MSDTC\MTxOCI]           \Local Computer\My Computer]     "OracleXaLib"="xa73.dll"           "OracleXaLib"="xa73.dll"         "OracleSqlLib"="SQLLib18.dll"           "OracleSqlLib"="SQLLib18.dll"    "OracleOciLib"="ociw32.dll"           "OracleOciLib"="ociw32.dll"   8.0        [HKEY_LOCAL_MACHINE\SOFTWARE     [HKEY_LOCAL_MACHINE\SOFTWARE           \Microsoft\Transaction Server    \Microsoft\MSDTC\MTxOCI]           \Local Computer\My Computer]     "OracleXaLib"="xa80.dll"           "OracleXaLib"="xa80.dll"         "OracleSqlLib"="sqllib80.dll"            "OracleSqlLib"="sqllib80.dll"    "OracleOciLib"="oci.dll"           "OracleOciLib"="oci.dll" 8.1        [HKEY_LOCAL_MACHINE\SOFTWARE     [HKEY_LOCAL_MACHINE\SOFTWARE           \Microsoft\Transaction Server    \Microsoft\MSDTC\MTxOCI]           \Local Computer\My Computer]     "OracleXaLib"="oraclient8.dll"            "OracleXaLib"="oraclient8.dll"   "OracleSqlLib"="orasql8.dll"             "OracleSqlLib"="orasql8.dll"     "OracleOciLib"="oci.dll"           "OracleOciLib"="oci.dll"
  4. Перезавантажте комп’ютер-зразок під керуванням сервера SQL Server після інсталяції theOracle-клієнтське Підтримка програмного забезпечення.
  5. На комп'ютері під керуванням встановити за допомогою thefollowing сценарію зв'язаний сервер SQL Server.
    -- Adding linked server (from SQL Server Books Online):/* sp_addlinkedserver [@server =] 'server'     [, [@srvproduct =] 'product_name']    [, [@provider =] 'provider_name']     [, [@datasrc =] 'data_source']     [, [@location =] 'location'] [, [@provstr =] 'provider_string']     [, [@catalog =] 'catalog']*/ EXEC sp_addlinkedserver   'Ora817Link',  'Oracle',  'MSDAORA',  'oracle817'-- Adding linked server login:/* sp_addlinkedsrvlogin [@rmtsrvname =] 'rmtsrvname'    [,[@useself =] 'useself']    [,[@locallogin =] 'locallogin']    [,[@rmtuser =] 'rmtuser']    [,[@rmtpassword =] 'rmtpassword']*/ EXEC sp_addlinkedsrvlogin 'Ora817Link', 'FALSE',NULL, 'scott', 'tiger'-- Help on the linked server:EXEC sp_linkedserversEXEC sp_helpserverselect * from sysservers
Примітка Якщо використовується Microsoft також драйвер ODBC для Oracle, можна використовувати параметр @datasrc , вказати ім'я DSN. Для DSN не менше підключення постачальник послуг оренди застосунків додаток надходить через параметр @provstr . Використовувати Microsoft база даних OLE Provider для Oracle, Oracle сервера псевдоніму, який налаштовано у файлі TNSNames.Ora@datasrc параметра. Щоб отримати додаткові відомості див. розділ "sp_addlinkedserver", у SQL Server Books Online.

Типові протокол IMAP про помилку та виправлення неполадок, пов'язаних із ними

важливе Цей розділ, спосіб або завдання, містить вказівки, про внесення змін до реєстру. Проте, серйозні проблеми можуть виникнути якщо внесені зміни до реєстру неправильні. Таким чином, переконайтеся, що ретельно виконані такі інтерактивні елементи. Для додаткового захисту створіть архівувати реєстру перед внесенням змін. Після цього можна відновити реєстр, якщо виникає проблема. Щоб отримати додаткові відомості про архівувати та відновлення реєстру клацніть номер статті в базі знань Microsoft Knowledge Base:
322756 архівувати та відновлення реєстру в ОС Windows


Можна одним із двох наведених нижче способів для отримання розширених відомостей про помилки, які виникають під Вільний час виконання запит на змінення розподілених.
  • Спосіб 1
    У Query Analyzer, запустіть наведений нижче код увімкнути 7300 прапор трасування.
    DBCC Traceon(7300)
  • Спосіб 2
    Записати подію "OLEDB помилки", розташований у категорії "Помилки andWarnings" подія SQL Profiler. Формат протокол IMAP про помилку, це thefollowing:
    Interface::Method, помилка з кодом помилки на шістнадцятковий.
    Можна шукати шістнадцятковий-код помилки у файлі Oledberr.h, IsIncluded-встановлено з MDAC пакет розробки програмного забезпечення (SDK).
Нижче наведено список десяти типові протокол IMAP про помилку, які можуть виникнути з відомості про те, як вирішити проблему, протокол IMAP про помилку.

Примітка Якщо використовується SQL Server 2005, ці протокол IMAP про помилки можуть різнитися. Однак, помилка ідентифікатори з таких повідомлень про помилку, тому ж, як їх на сервері SQL Server 2000. Таким чином, їх можна визначити за протокол IMAP про помилку посвідчення.

Примітка Запитання щодо продуктивності пошук SQL Server BooksOnline тему "Оптимізація розповсюджується запити".
  • протокол IMAP 1
    Помилка 7399: база даних OLE provider "% ls'reported протокол IMAP про помилку. %ls
    Увімкніть прапор трасування 7300 або сценарій виконання SQL Profiler, щоб отримати відомості про розширені OLEDB помилки, подія "OLEDB помилки".
  • протокол IMAP 2a.
    "ORA-12154: TNS: може не resolveservice ім'я"
    протокол IMAP 2b
    "Oracle(tm) клієнта і networkingcomponents не знайдено. Ці компоненти, які постачаються з Oracle Corporationand частина Oracle версії 7.3.3 (або більше) клієнта softwareinstallation "
    Щоб отримати додаткові відомості про те, як вирішити проблеми з підключенням Oracle клацніть номер статті в базі знань Microsoft Knowledge Base:
    259959 Технології, за допомогою налагодження проблеми з підключенням до сервера Oracle, використовуючи драйвер ODBC та постачальника бази даних OLE
  • протокол IMAP 3
    Помилка 7302: Не вдалося створити aninstance, база даних OLE провайдера "MSDAORA"
    Переконайтеся, що правильно зареєстровано MSDAORA.dll файл. (Файл MSDAORA.dll є постачальника Microsoft база даних OLE Oracle файлу). За допомогою RegSvr32.exe реєстрація події Microsoft база даних OLE Provider для Oracle. У разі спроби реєстрація події, переінсталюйте Microsoft Data Access Components (MDAC). Щоб отримати додаткові відомості про MDAC відвідайте веб-сайт Microsoft Developer Network (MSDN):Примітка Якщо ви використовуєте Oracle сторонніх постачальників, а також постачальника послуг Oracle не можна виконувати в будь-який процес SQL Server, увімкніть спробувати запустити її у процесі за changingthe постачальника параметри. Для зміни параметрів постачальника, скористайтеся одним із наведених нижче способів.
    • Спосіб 1
      Знайдіть такий розділ реєстру. Після цього, змініть значення запису AllowInProcess (DWORD) 1. Цей розділ реєстру, це locatedunder відповідні ім'я постачальника:
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Providers\ProviderName
    • Спосіб 2
      Значення параметра InProcess дозволяють безпосередньо до SQL Server Enterprise Manager youadd посилання на новий сервер. постачальник послуг оренди застосунківпараметри та встановіть прапорець Дозволити InProcess .
  • протокол IMAP 4
    Помилка 7303:, Може не initializedata вихідний об'єкт база даних OLE провайдера "MSDAORA". [OLE/DB постачальник послуг оренди застосунків returnedmessage: ORA-01017: пароль; входу до системи, немає] Трасування помилок бази даних OLE, [постачальника OLE/база даних 'MSDAORA' IDBInitialize::Initialize повертається 0x80040e4d].
    Це протокол IMAP про помилку вказує на те, що зв'язаний сервер не має правильний входу відображення. Ви можете виконати sp_helplinkedsrvlogin , зберігаються процедуру неправильно вказано ім'я користувача та пароль. Крім того, перевірте, чи вказано правильні параметри конфігурації linkedserver.
  • протокол IMAP 5
    Помилка 7306: Не вдалося відкрити таблицю "%ls" від постачальника баз даних OLE, "MSDAORA". Вказаної таблиці не існує.[OLE або DB-постачальник повертається повідомлення: таблиці відсутній.][OLE/DB providerreturned повідомлення: ORA-00942: таблиці або подання елементів не існує] база даних OLE помилка трасування [постачальника OLE/база даних 'MSDAORA' IOpenRowset::OpenRowset повертається в 0x80040e37: Thespecified таблиці не існує.].
    Помилка 7312:Invalid сценарій виконання схеми та/або каталог для бази даних OLE постачальник послуг оренди застосунків "%ls". 4 partname було виконано, але службу не розкриває необхідні інтерфейсів touse каталог і/або схеми.
    Помилка 7313:Invalid схеми або каталогу, для постачальника "%ls".
    ERR 7314: база даних OLE provider "%ls" не містить таблиці "%ls"
    Якщо ці протокол IMAP про помилки, таблиці, можливо, відсутні в схеми Oracle, або ви не маєте дозволу на цій таблиці. Переконайтеся, що було введено ім'я схеми за допомогою велика. Алфавітний випадку таблиці та стовпці має бути як зазначено в Oracle-системних таблиць.

    На стороні Oracle таблиці або стовпець, який створюється без подвійні лапки зберігаються у верхній регістр. Якщо таблиці, або стовпець, розміщується в подвійні лапки, таблиці або впорядкована стопка карт з чергуванням кольорів зберігається як.

    Такий виклик показує, що якщо таблиця існує схеми Oracle. Цей виклик також можна переглянути ім'я точно таблиці.
    sp_tables_ex  @table_server=Ora817Link, @table_schema='your_schema_name'
    Щоб отримати додаткові відомості про протокол IMAP про помилку, 7306 клацніть номер статті в базі знань Microsoft Knowledge Base:
    240340 Розподілена-запит SQL із Oracle, викликає помилку, що "Не вдалося відкрити таблицю"
  • протокол IMAP 6
    Помилка 7413: Не вдалося виконати aWindows NT з перевіреною автентичністю вхід через те, що делегування не надається.
    MSG 18456, рівень 14, стан 1, рядок 1-Loginfailed для користувача "\".
    Нижче описано з SQL Server Books Online:
    Це протокол IMAP про помилку вказує на те, що розподілених запит Вільний час виконані для Microsoft Windows, автентифікацію входу, не є явний вхід відображення. У середовищі операційної системи безпеки, яка не підтримується делегування Windows NT автентифікувати входи необхідно явного відображення, віддалений вхід, і пароль, створені з використанням sp_addlinkedsrvlogin.
  • протокол IMAP 7
    Помилка 7354: база даних OLE provider'MSDAORA "постачається неприпустимий метаданих стовпця"%ls". тип даних, є notsupported.
    Якщо з'являється протокол IMAP про помилку, можливо, виник помилку, описане в такій статті бази знань Майкрософт:
    243027 ВИПРАВЛЕННЯ: Числовому стовпці Oracle, викликає помилку 7354
  • протокол IMAP 8
    Помилка 7356: база даних OLE provider'MSDAORA "постачається в невизначеному метаданих впорядкована стопка карт з чергуванням кольорів. Метадані waschanged інформації, під Вільний час виконання.
    Зв'язаний сервер запит на змінення, які використовують в Oracle подання елементів, можуть виникнути проблеми, описаної в такій статті бази знань Майкрософт:
    251238 Розповсюджені запити, повертає помилку 7356 MSDAORA
  • протокол IMAP 9
    Помилка 7391: Операції, можуть notbe, які виконуються через те, що бази даних OLE постачальник послуг оренди застосунків 'MSDAORA' не підтримує distributedtransactions. база даних OLE помилка трасування [OLE/DB Provider 'MSDAORA' ITransactionJoin::JoinTransaction повертається в 0x8004d01b]
    Переконайтеся, що theOCI версії зареєстровано належним чином, як зазначено вище в цій статті.

    Примітка Якщо всі правильні запис А бізнес-партнера реєстру, у MtxOCI.dll, файл isloaded. Якщо файл MtxOCI.dll не завантажується, не може виконати distributedtransactions, від Oracle за допомогою постачальника Microsoft база даних OLE Oracle orby, використовуючи Microsoft також драйвер ODBC для Oracle. Якщо ви використовуєте сторонніх постачальників і youreceive помилка 7391, переконайтеся, що постачальник послуг оренди застосунків бази даних OLE, який використовується supportsdistributed операції. Якщо постачальник послуг оренди застосунків бази даних OLE, підтримує distributedtransactions, переконайтеся, що Microsoft розподілених транзакцій Coordinator(MSDTC) працює.
  • протокол IMAP 10
    Помилка 7392: Не вдалося запустити atransaction, база даних OLE постачальника "MSDAORA". база даних OLE помилка трасування [OLE або DB-Provider'MSDAORA' ITransactionLocal::StartTransaction повертається, 0x8004d013:ISOLEVEL = 4096].
    Нижче описано з SQL Server Books Online:
    Постачальника бази даних OLE, повернув помилку 7392, тому що тільки одна може бути активним цього сеансу. Ця помилка вказує на те, що оператор зміни даних Вільний час спробі від постачальника послуг з бази даних OLE під Вільний час підключення в з явного або неявного транзакцій, і постачальника бази даних OLE не підтримує вкладені операції. SQL Server потребує підтримка, таким чином, що на певних умов помилка може припинити ефекти оператор зміни даних, продовжуючи при цьому транзакції.
    Якщо ВСТАНОВЛЕНО, XACT_ABORT на SQL Server не потрібно nestedtransaction підтримку від постачальника бази даних OLE. Таким чином, для виконання набір XACT_ABORT ONbefore Вільний час виконання даних модифікації заяви, стосовно віддаленого таблиці animplicit або явного транзакцій. Для цього у випадку, якщо постачальник послуг оренди застосунків бази даних OLE, який використовується підтримки, вкладені операції.
Посилання
Щоб отримати додаткові відомості клацніть номер статті в базі знань Microsoft Knowledge Base:
244661 Обмеження, що драйвер Microsoft Oracle ODBC і бази даних OLE
259959 Технології, за допомогою налагодження проблеми з підключенням до сервера Oracle, використовуючи драйвер ODBC та постачальника бази даних OLE
239719 Можливості підтримки, або драйвер, база даних OLE постачальника Microsoft ODBC для Oracle w.r.t Oracle 8. x
193893 Відомості про сценарій виконання Oracle Microsoft Transaction Server і COM+ компоненти.
191168 Не вдалося службу на виклик об'єкта угода TRIPs про помилку "-2147168246 (8004d00a)"
Щоб отримати додаткові відомості про те, як використовувати разом із DB2 зв'язаний сервер клацніть номер статті в базі знань Microsoft Knowledge Base:
218590 Налаштування джерела даних у Microsoft база даних OLE provider для DB2
216428 Настроювання драйвер Microsoft ODBC для DB2
зв'язаний позначки трасування SQL Oracle DBCC для розповсюджені запити

Попередження. Цю статтю переведено автоматично

Властивості

Ідентифікатор статті: 280106 – останній перегляд: 12/23/2014 00:37:00 – виправлення: 3.0

Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 64-bit Edition, Microsoft SQL Server 7.0 Standard Edition, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL 2005 Server Enterprise, Microsoft SQL Server 2005 Express Edition, Microsoft SQL 2005 Server Workgroup

  • kbsqlsetup kbhowtomaster kbmt KB280106 KbMtuk
Зворотний зв’язок