10,2 г до 11,2 г и Microsoft ODBC для проблем с Oracle - PullRequest
4 голосов
/ 02 марта 2012

Моя команда пытается перейти с ORACLE 10g на 11g. Это наши системные характеристики:

Наш текущий производственный сервер:

ORACLE 10.2g 
ORACLE Application Express(3.0)
Apache
Red Hat 64 bit

Наш новый сервер (еще не запущен):

ORACLE 11.2g
ORACLE Application Express (4.1.1)
ORACLE HTTP Server 
Red Hat 64 bit

Нам удалось настроить 11g, установить APEX 4.1 и применить последний набор обновлений. Единственное, что задерживает нас в нашей миграции, - это то, что наши бизнес-пользователи имеют доступ к Crystal Reports XI, MS Access / Excel 2003, которые они используют для подключения к нашей базе данных. Типичный пользователь имеет операционную систему Window XP SP 3 (32bit). В настоящее время мы используем Microsoft ODBC для драйвера Oracle (версия 2.575.1132.00) для подключения к нашей базе данных 10g, и у нас не было никаких проблем. Однако, когда мы пытаемся подключиться к 11g, мы продолжаем получать ORA-03113: конец файла при ошибках канала связи. В ORACLE SQL Developer мы можем подключиться к нашему экземпляру 11g, используя «базовое» соединение. Я также использовал записи "TNS", и это хорошо работает.

Я думаю, что бизнес-пользователи получили драйвер Microsoft ODBC для Oracle, установив ORACLE Discover 3.1.3.6, который используется для другой базы данных Oracle. У них также есть Oracle Client 7.3.3, который, как я вижу, Oracle73 (2.00.03.01) упоминается на экране администрирования источника данных ODBM.

Мы попробовали поискать результат, и после различных тестов пришли к выводу, что это проблема с драйвером ODBC. Насколько мы понимаем, ORACLE SQL Developer использует другой драйвер на основе JAVA для подключения, поэтому он не использует версию Microsoft.

Может ли кто-нибудь подтвердить, что мы правильно понимаем наличие проблем совместимости с Microsoft ODBC для драйвера Oracle (версия 2.575.1132.00) и 11.2g? Если да, что бы вы могли порекомендовать совместимый драйвер для использования с Crystal и Access / excel для извлечения данных?

Я думаю, что бизнес-пользователи получили драйвер Microsoft ODBC для Oracle, установив ORACLE Discover 3.1.3.6, который используется для другой базы данных Oracle. У них также есть Oracle Client 7.3.3, который, как я вижу, Oracle73 (2.00.03.01) упоминается на экране администрирования источника данных ODBM.

1 Ответ

3 голосов
/ 02 марта 2012

Драйвер Microsoft ODBC для Oracle написан с использованием древней версии API OCI (Oracle Call Interface), который устарел после выпуска Oracle 8 (который был более десяти лет назад и 11 основных выпусков назад). Microsoft решила отключить этот драйвер, а не портировать его на новую версию API OCI. Клиенты Oracle 7 могут подключаться к базам данных Oracle 10.2, но Oracle не поддерживает соединения между клиентами Oracle 7 и базами данных Oracle 11.2.

Вам потребуется обновить версию клиента Oracle, установленного на компьютерах бизнес-пользователя, и вы захотите использовать последнюю версию драйвера Oracle ODBC, которая подходит для этой версии клиента Oracle. Предполагая, что вы устанавливаете версию 11.2 клиента Oracle (единственная причина, по которой не следует полностью обновляться до клиента 11.2, заключается в том, что пользователям все еще нужно было подключаться к более старым базам данных, которые не поддерживают подключения от клиента 11.2), хотел бы использовать самую последнюю версию драйвера Oracle ODBC 11.2.0.x . У клиента установки Oracle также должна быть возможность установить версию драйвера Oracle ODBC - этого также должно быть достаточно.

...