Cognos 8.3 не может подключиться к источнику данных. Зачем? - PullRequest
0 голосов
/ 05 августа 2011

Я установил Cognos BI 8.3 на мою машину с 64-битной ОС Windows 7. В списке поддерживаемых сред IBM для Cognos 8.3 Windows 7 не указана. Кроме того, в нем говорится, что продукт будет интегрироваться только с 32-разрядными сторонними библиотеками. Итак, вы уже можете видеть, что я уже начинаю с плохой ноги. Но в любом случае, это машина, которая у меня есть, и это программное обеспечение, которое я получил, поэтому я решил посмотреть, будут ли они работать вместе.

Я установил базу данных Oracle 10g Express также на моей машине и сервере Apache 2.2. До там проблем нет.

Прежде чем двигаться дальше, я скопировал ojdbc14.jar в cognos /.../ webapps / p2pd / WEB-INF / lib и добавил базу данных Oracle в Cognos Configuration. Проверено, пройдено.

После запуска базы данных, запуска сервера Apache и запуска Cognos я успешно смог запустить Cognos Connection на компьютере. Таким образом, похоже, что ОС не является проблемой.

(Вы можете увидеть все, что я сделал, выполнив шаги на этом сайте , который, как два дня назад, кажется, не работает, но я думаю, в конце концов вернется)

Тогда я решил попробовать примеры, поэтому я попытался создать соединение с источником данных из Cognos к базе данных Oracle. Итак, в консоли конфигурации администратора (т.е. Администрирование содержимого Cognos> Конфигурация) я решил создать новый источник данных Oracle. Я поставил учетные данные, но BAM .. тестирование не проходит.

Сообщение об ошибке:

QE-DEF-0285 The logon failed.
QE-DEF-0323 The DSN(ODBC)/ServiceName is invalid. Either the DSN is missing or the host is inaccessible. 
RQP-DEF-0068 Unable to connect to at least one database during a multi-database attach to 1 database(s) in: 
testDateSourceConnection

UDA-SQL-0031 Unable to access the "testDataSourceConnection" database.
UDA-SQL-0532 Data Source is not accessible: "XE".
ORA-12154: TNS:could not resolve the connect identifier specified

RSV-SRV-0042 Trace back: 
...

Из того, что я исследовал, может быть несколько вещей, но, похоже, ничего не работает. Вот что я попробовал:

  1. Добавление драйвера ODBC. Добавил драйвер Oracle XE, даже убедившись, что это было сделано в 32-битном менеджере ODBC (то есть Windows \ SysWOW64 \ odbcad32.exe). Это не сработало.

  2. Добавлены ORACLE_HOME, LD_LIBRARY_PATH и TNS_ADMIN к моим переменным среды.

  3. tnsping'ed база данных XE и пинг вернулся нормально.

  4. На компьютере нет дубликатов tnsnames.ora.

  5. Я попытался, и я могу подключиться к базе данных через sqlplus. Я упоминал, что тестирование базы данных Cognos Config также прошло?

  6. Установлен клиент Oracle XE. Но мало что с этим сделал, потому что сервер Oracle установлен на компьютере и также имеет клиентский компонент.

Кто-нибудь сталкивался с этой проблемой? Я не мог диагностировать проблему или даже сделать небольшой прогресс в течение нескольких дней. Если вы хотите, чтобы я предоставил больше информации о любом из решений, которые я пробовал, пожалуйста, спросите. Если у вас есть потенциальное решение или, что еще лучше, если вы уже могли решить эту проблему раньше, пожалуйста, дайте мне знать, как!

Спасибо!

Ответы [ 2 ]

1 голос
/ 09 августа 2011

Чтобы использовать oracle в качестве источника данных, необходимо установить 32-битный клиент.64-битный клиент не будет работать.Так что, если вы установили 64-битную версию oracle express и не хотите ее деинсталлировать, вы можете просто установить дополнительный 32-битный клиент и установить его в качестве домашней страницы по умолчанию.

1 голос
/ 05 августа 2011

Следует помнить одну вещь: некоторые части Cognos BI реализуются с помощью Java, а другие части реализуются с помощью собственных процессов C ++ (процессы BI Bus)

Cognos подключается к базе данных хранилища материалов из процесса Java с использованием JDBC.

Процессы BI Bus будут подключаться к Oracle с помощью собственного клиента Oracle.

Поэтому, основываясь на вашем описании, я бы сказал, что проблемная область находится в собственной конфигурации клиента oracle (или с точки зрения службы Cognos).

Вы упомянули о добавлении в Windows переменных среды ORACLE_HOME, LD_LIBRARY_PATH и TNS_ADMIN, а также о том, что утилиты Oracle, такие как SQLPlus и TNSPing, работают для вас.

Когда вы добавили переменные среды, добавили ли вы их в область SYSTEM для переменных среды или в область пользователя ...?

Если вы используете Cognos как службу, это будет дочерний процесс SERVICES.EXE, который запускается как система (этот процесс также не перезапускается, пока вы не перезагрузите компьютер).

Я бы попробовал это:

  1. убедитесь, что указанные выше переменные среды определены для пользователя SYSTEM (в системной области, а не в пользовательской области)
  2. как только вы это сделаете, перезагрузите машину

Проверьте, можете ли вы создать соединение с базой данных сейчас.

Если это не сработает, я бы предложил выполнить «запуск от имени» SQLPlus или TNSPING в качестве пользователя SYSTEM (и посмотрите, работает ли это).

...