powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / dblink oracle 12c RAC to mysql
12 сообщений из 12, страница 1 из 1
dblink oracle 12c RAC to mysql
    #39723148
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго всем здоровья.
преамбула.
Имеется довольно объемная работающая база (без кластера) на 11 оракле.
из этой базы есть ряд дблинков на mysql базы имеющие разное прикладное назначение.
все работает более менее стабильно и надежно.
который день собираю тестовую среду на 12 оракле с двумя узлами в кластере.
из известных мне проблем остались только дблинки.
у меня с гетерогенными дблинками не получается абсолютно ничего.
разве что ОДБС настроен и я нормально захожу на сервера mysql из командной строки.
что я данный момент делаю (на двух узлах, естественно).
1. настраиваю файлы initMYSQL.ora в папке <grid_home>/hs/admin
cat initMYSQL.ora
HS_FDS_CONNECT_INFO = mysql_odbc
HS_FDS_TRACE_LEVEL = ON
HS_FDS_TRACE_FILE_NAME = /tmp/odbc.log
HS_FDS_FETCH_ROWS = 1
HS_FDS_SHAREABLE_NAME = /usr/lib64/libmyodbc8a.so
HS_LANGUAGE = AMERICAN_AMERICA.CL8MSWIN1251
HS_NLS_DATE_FORMAT = "DD.MM.YYYY HH24:MI:SS"
HS_NLS_DATE_LANGUAGE= AMERICAN
set ODBCINI=/etc/odbc.ini
set ODBCINSTINI=/etc/odbcinst.ini
set LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64:/usr/lib64/mysql

2.листенер настраиваю в папке <grid_home>/network/admin
cat listener.ora
.....

SID_LIST_LISTENER_ODBC1 =
(SID_LIST =
(SID_DESC =
(PRORGAM = dg4odbc)
(ORACLE_HOME = /oracle/db/12.2.0.1/db_home)
(SID_NAME = MYSQL)
(ENV = "LD_LIBRARY_PATH=/usr/lib64/mysql:/oracle/db/12.2.0.1/db_home/lib")
)
)

LISTENER_ODBC1=
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = LISTENER_ODBC1))
)
# (ADDRESS=(PROTOCOL=TCP) (HOST = dbnode2) (PORT = 1530))
)
)
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_ODBC1=ON # line added by Agent
VALID_NODE_CHECKING_REGISTRATION_LISTENER_ODBC1=SUBNET # line added by Agent

3. листенер зарегистрирован в кластере запускается,останавливается
немного вывода команд
[grid@dbnode1 ~]$ srvctl stop listener -listener LISTENER_ODBC1
[grid@dbnode1 ~]$ srvctl start listener -listener LISTENER_ODBC1
[grid@dbnode1 ~]$ lsnrctl status LISTENER_ODBC1

LSNRCTL for Linux: Version 12.2.0.1.0 - Production on 25-OCT-2018 22:02:10

Copyright (c) 1991, 2016, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_ODBC1)))
STATUS of the LISTENER
------------------------
Alias LISTENER_ODBC1
Version TNSLSNR for Linux: Version 12.2.0.1.0 - Production
Start Date 25-OCT-2018 22:01:56
Uptime 0 days 0 hr. 0 min. 13 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oracle/grid/12.2.0.1/grid_home/network/admin/listener.ora
Listener Log File /oracle/gridbase/12.2.0.1/diag/tnslsnr/dbnode1/listener_odbc1/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER_ODBC1)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=1.2.25.5)(PORT=1523)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=1.2.25.9)(PORT=1523)))
Services Summary...
Service "MYSQL" has 1 instance(s).
Instance "MYSQL", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully


4. в папке <oracle_home>/network/admin

cat tnsnames.ora
.........
MYSQL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1.2.25.5)(PORT = 1523))
(ADDRESS = (PROTOCOL = TCP)(HOST = 1.2.25.9)(PORT = 1523)) )
(CONNECT_DATA = (SID = MYSQL))
(HS = OK)
)

5. это конечно фигня, но тем не менее похвастаться больше не чем :D
tnsping MYSQL

TNS Ping Utility for Linux: Version 12.2.0.1.0 - Production on 25-OCT-2018 22:11:23

Copyright (c) 1997, 2016, Oracle. All rights reserved.

Used parameter files:
/oracle/db/12.2.0.1/db_home/network/admin/sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 1.2.25.5)(PORT = 1523)) (ADDRESS = (PROTOCOL = TCP)(HOST = 1.2.25.9)(PORT = 1523))) (CONNECT_DATA = (SID = MYSQL)) (HS = OK))
OK (10 msec)

6. команду создания дблинка я не привожу. ибо все известные и вновь открытые способы создания дблинка приводят коднотипной ошибке
ошибка
Link : "MYSQL"
Error : ORA-28546: connection initialization failed, probable Net8 admin error
ORA-28511: lost RPC connection to heterogeneous remote agent using SID=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=1.2.25.5)(PORT=1523))(ADDRESS=(PROTOCOL=TCP)(HOST=1.2.25.9)(PORT=1523)))(CONNECT_DATA=(SID=MYSQL)))
ORA-02063: preceding 2 lines from MYSQL


предположу, как принято в просвещенных кругах "хайли лайкли", что мне не хватает запуска некой кластерной службы для получения искомого. но так как последний раз с работал с кластером еще на 10 оракле, то испытываю некие проблемы, которые усугубляются отсутствием в данный момент поддержки.
из факта отсутствия логов в гетерогенном сервисе я делаю вывод, что мои запросы до него даже не долетают.

не менее вероятно, что я вообще все делаю не так. и на кластере в 12.2 это делается как то совсем по другому.
в поисках ответов (в гугле) на свои вопрос я уже докатился до китайских форумов (с гугл транслейтом). :-)

готов ответить на дополнительные вопросы.
надеюсь на содействие.
спасибо за внимание.
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723163
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) что в $ORACLE_HOME/hs/trace?
2) вместо
Код: plsql
1.
2.
# HS_FDS_SHAREABLE_NAME = /usr/lib64/libmyodbc8a.so
HS_FDS_SHAREABLE_NAME = /usr/lib64/libodbc.so


20497219
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723164
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vadim Lejnin,
В трейсах гетерогенного сервиса нет вообще ничего.
думаю запросы не далетают до туда.
библиотеки и вообще коннекторы от майскуля пробовал самые разные.
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723171
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надфиль,
trace
Может быть также в $OH/hs/log
Проверьте что hs4odbc есть в OH/bin
установите параметры
export LD_LIBRARY_PATH=/usr/lib64/mysql:/oracle/db/12.2.0.1/db_home/lib
проверьте
ldd /usr/lib64/libmyodbc8a.so
21054756
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723178
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и еще
разберитесь с ADDRESS

кто в лес кто по дрова:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
# listener.ora
LISTENER_ODBC1=
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = LISTENER_ODBC1))
)
# (ADDRESS=(PROTOCOL=TCP) (HOST = dbnode2) (PORT = 1530))
)

# tnsnames.ora
MYSQL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1.2.25.5)(PORT = 1523))
(ADDRESS = (PROTOCOL = TCP)(HOST = 1.2.25.9)(PORT = 1523)) )
(CONNECT_DATA = (SID = MYSQL))
(HS = OK)
)


# tnsping MYSQL
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 1.2.25.5)(PORT = 1523)) (ADDRESS = (PROTOCOL = TCP)(HOST = 1.2.25.9)(PORT = 1523))) (CONNECT_DATA = (SID = MYSQL)) (HS = OK))




p.s.
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723204
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надфиль
cat listener.ora
(PRORGAM = dg4odbc)
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723271
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вячеслав Любомудров,
Спасибо.
это конечно эпик фейл.
даже смотря на выделенный вами фрагмент в течении нескольких минут, не мог заметить досадную опечатку.
в общем более менее заработало, но боюсь, еще повозится придется.
кстати, хозяйке на заметку, файлы настроек гетерогенного сервиса всетаки нужно помещать в oracle_home\hs\admin,
а не в grid_home.
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723275
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vadim Lejninи еще
разберитесь с ADDRESS

кто в лес кто по дрова:


спасибо за замечание.
в listener.ora я вообще не назначаю адрес. "оно само".
конкретный порт и адрес закомментирован в результате многочисленных опытов.
в tnsnames.ora адреса вставлены из логов запуска листенера (посмотрел где он слушает)
возможно я тут перемудрил, но это тоже результат многочисленных безуспешных "опытов".
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723512
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем успешно натрахавшись я добился работоспособности линков.
систематизирую. вдруг кому понадобится.
1. обязательно качаем коннектор к майскулю наиболее близкий по версии.
2. Гетерогенный сервис настраиваем в oracle_home (не в grid_home).
3. Листенер также настраиваем в oracle_home. Мне НЕ удалось подцепить гетерогенный сервис к листенеру на уровне кластера (не появлялся даже ЛОГ для гетероенного сервиса, т.е. мои запросы так и не смогли долететь до майскуля). как только я для каждой ноды настроил что то типа локального отдельного листенера, сразу появился логи, ну а как логи появились, то дальше дело техники.

если кому то нужны примерные надстроечные файлы, то спросите.
спасибо всем за участие.
особенно товарищу
Вячеслав Любомудров
за то, что поднял мне веки
с меня пиво.
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723790
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надфиль2. Гетерогенный сервис настраиваем в oracle_home (не в grid_home). Не скажу за RAC, но почему нет?
В grid ему самое место ибо самая свежая версия
Листенер должен быть либо один, либо хоть рулится с одного хома
Надфиль3. Листенер также настраиваем в oracle_home. Мне НЕ удалось подцепить гетерогенный сервис к листенеру на уровне кластера (не появлялся даже ЛОГ для гетероенного сервиса, т.е. мои запросы так и не смогли долететь до майскуля). как только я для каждой ноды настроил что то типа локального отдельного листенера, сразу появился логи, ну а как логи появились, то дальше дело техники. Опять же не скажу за кластер, но есть подозрение, что ты там что-то просто напутал
Надфильспасибо всем за участие.
особенно товарищу
Вячеслав Любомудров
за то, что поднял мне веки
с меня пиво.Надеюсь, не самовывоз?
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39723931
Надфиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вячеслав ЛюбомудровНе скажу за RAC, но почему нет?
В grid ему самое место ибо самая свежая версия

ну в грид нет ничего кроме каталога для HS.
и HS должен, КМК, быть в одном хоуме с листенером?
Вячеслав ЛюбомудровЛистенер должен быть либо один, либо хоть рулится с одного хома

все мои бубны самого большого калибра не справились с задачей привязки HS к кластерному листенеру.
Вячеслав ЛюбомудровОпять же не скажу за кластер, но есть подозрение, что ты там что-то просто напутал

да легко на самом деле. вон буквы путаю в ини файлах.
Вячеслав ЛюбомудровНадеюсь, не самовывоз?
я не настолько злобный тип.
земля круглая.... как нибудь выполню доставку.
...
Рейтинг: 0 / 0
dblink oracle 12c RAC to mysql
    #39724062
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадфильВячеслав ЛюбомудровНе скажу за RAC, но почему нет?
В grid ему самое место ибо самая свежая версия

ну в грид нет ничего кроме каталога для HS.
и HS должен, КМК, быть в одном хоуме с листенером?Не рассматривал ситуацию разных версий БД в одном clusterware/ASM хранилище?
Там нужно разные PRORGAM запускать
И разные переменные окружения выставлять
НадфильВячеслав ЛюбомудровНадеюсь, не самовывоз?
я не настолько злобный тип.
земля круглая.... как нибудь выполню доставку. Дык "дорога ложка к обеду"
А то вот прямо сейчас (почти 9 вечера) приходится бежать
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / dblink oracle 12c RAC to mysql
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]