Установка Management Pack for Oracle GoldenGate
Всем добрый день!
Сегодня отличный день чтобы написать очередную заметку. Посвящена она будет довольно популярному продукту от Oracle (теперь:) под названием GoldenGate. Установка самого GG отлично описана вот тут. Меня же заинтересовал процесс установки подсистемы Management Pack for Oracle GoldenGate (в прошлом GoldenGate Director). В ходе инсталляции этой программы, у меня возникла очень неприятная ошибка, которая как раз и побудила меня написать данный пост. Поэтому основное внимание будет уделено именно ей. Лично у меня на решение этой проблемы ушло несколько часов, поэтому я надеюсь, что смогу сэкономить вам довольно много времени в случае возникновения аналогичной проблемы. Итак.
Director состоит из двух частей. Серверной и клиентской. Клиентскую часть я использовал виндовую и с ее установкой проблем не возникло. Установить серверную часть оказалось значительно сложнее.
Итак, для установки серверной части GG Director(Management Pack for Oracle GoldenGate), на сервере вам потребуется наличие WebLogic. Для его установки мне пришлось скачать и поставить JDK и JRE версии 1.6. После этого:
1.Прописываем путь к папке jre/bin в PATH
export PATH=/u04/app/jre_1.6/bin:$PATH
2. Прописываем переменную DISPLAY
export DISPLAY=yourip:0.0
3. Запускаем X-сервер. Лично я предпочитаю Reflection-X
4. Запускаем установку WebLogic
java -jar wls1031_generic.jar
Ничего сложного. В конце установки отказываемся от QuickStart.
Теперь ставим GG Director.
Скачиваем дистрибутив, распаковываем.
1. Делаем файл исполняемым
chmod +x ggdirector-serversetup_v2.0.0.2_001.sh
2. Запускаем инсталлятор
./ggdirector-serversetup_v2.0.0.2_001.sh
3. Потом все просто. Указываем сначала директорию, куда установили weblogic.
4. Когда инсталлятор потребует ввести директорию для домена, я создал и указал ему папку в директории weblogic:
mkdir -p user_projects/domains
Домен назовем GGDomain
5. Когда нас спросят про подключение к базе, я использовал Oracle.
6. Вот тут самое инетересное. Когда он просит указать нас SID, сервер и порт, то вне зависимости от того, какой порт мы укажем, при установке будет использоваться порт 1521. Например, мне надо было использовать порт 1522.
Если не предпринимать никаких действий, то мы получим ошибку:
unable to run run-cds-tool script file.
На эту ошибку у меня сегодня ушло очень много времени. Но я придумал одну хитрость как это обойти ![]()
7. Продолжаем процесс инсталяции. Когда статусная строка будет подходить к концу, необходимо нажать cancel. Установка запаузится.
8. В параллельной сессии заходим в папку $weblogic/wlserver_10.3/server/bin. Здесь мы должны обнаружить файл db-config.cds. Если его нет, значит на кнопку cancel нажали слишком рано.
9. Правим в файлике порт, на нужный.
10. В окне устанвки отказываемся от отмены установки. Установка продолжается и успешно завершается.
11. Если вы все сделали правильно, то серверная часть будет установлена. Но работать ничего не будет ![]()
При запуске сервера будет следующая ошибка:
<Nov 6, 2009 4:18:04 PM MSK> <Error> <Security> <BEA-000000> <[Security:090737]An exception occurred while getting connection to validate the configuration settings
java.sql.SQLException: [Security:090735]The DBMS connection was not usable
at weblogic.security.providers.authentication.DBMSSQLAuthenticatorDelegateImpl.getManageableConnection(DBMSSQLAuthenticatorDelegateImpl.java:923)
at weblogic.security.providers.authentication.DBMSSQLAuthenticatorDelegateImpl.validateConfiguration(DBMSSQLAuthenticatorDelegateImpl.java:153)
at weblogic.security.providers.authentication.DBMSSQLAuthenticatorDelegateImpl.<init>(DBMSSQLAuthenticatorDelegateImpl.java:78)
at weblogic.security.providers.authentication.DBMSAuthenticatorDelegateImpl.getInstance(DBMSAuthenticatorDelegateImpl.java:459)
at weblogic.security.providers.authentication.DBMSSQLAuthenticationProviderImpl.initialize(DBMSSQLAuthenticationProviderImpl.java:56)
Truncated. see log file for complete stacktrace
>
<Nov 6, 2009 4:18:06 PM MSK> <Notice> <Security> <BEA-090082> <Security initializing using security realm ggRealm.>
<Nov 6, 2009 4:18:06 PM MSK> <Error> <Security> <BEA-000000> <[Security:090735]The DBMS connection was not usable>
<Nov 6, 2009 4:18:06 PM MSK> <Critical> <Security> <BEA-090402> <Authentication denied: Boot identity not valid; The user name and/or password from the boot identity file (boot.properties) is not valid. The boot identity may have been changed since the boot identity file was created. Please edit and update the boot identity file with the proper values of username and password. The first time the updated boot identity file is used to start the server, these new values are encrypted.>
12. Заходим в папку $weblogic/user_projects/domains/GGDomain/config/jdbc
13. Редактируем файл ggds-datasource-jdbc.xml, заменяя номер порта на нужный.
14. Запускаем $weblogic/user_projects/domains/GGDomain/startWebLogic.sh
15. При подключении указываем admin/admin. Также после имени сервера через двоеточие уазываем порт. Порт задавался при установке GG Director. По умолчанию 7001.
Ура! Процесс установки завершен! Возможно, что проблема проявляется только в сборке под Linux x86_64. На сколько мне известно, уже заведен баг по этому поводу.
До новых встреч!
UPD!!!
Как выяснилось, проблема с портом листенера возникает только при использование Reflection-X в качестве X сервера. С XMing все проходит на ура.




