Получить системный IP-адрес и порт для DB2 ODBC DSN
Моя программа написана на VB.Net и подключается к DB2 через ODBC. Для других соединений ODBC мы смогли получить IP-адрес хоста через реестр.
HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ ODBC \ ODBC.INI \
У DB2, похоже, нет этой информации, поэтому мне интересно, есть ли способ получить ip через соединение ODBC.
Теперь я также понимаю, что есть способ получить эту информацию через процессор командной строки DB2, запустив комбинацию list db directory
а потом list node directory
, но мне интересно, есть ли более простой способ через ODBC или, возможно, какой-нибудь DB2 SQL Command... Спасибо за помощь!
1 ответ
Вы можете получить имя хоста для сервера DB2, используя следующую инструкцию SQL:
select host_name, adapter_name from TABLE(ENV_GET_NETWORK_RESOURCES())
Если вы знаете, какое имя адаптера, то есть eth0, eth1, ..., ethN вы хотите, вы можете добавить предикат
WHERE adapter_name like '<adapter>%'
Примером является:
db2 "select substr(host_name,1,20) as host, substr(adapter_name,1,10) as adapter from TABLE(ENV_GET_NETWORK_RESOURCES())"
HOST ADAPTER
-------------------- ----------
dbms eth0
dbms lo
2 record(s) selected.