Ошибка связи при создании федеративного (Data Virtualization) сервера (цель как DB2 on Cloud) - PullRequest
0 голосов
/ 20 марта 2019

Ошибка при создании сервера объединения с целевым сервером в качестве DB2 в облаке и источника федерации в качестве хранилища DB2 в облаке

Сообщение об ошибке (при выполнении второй команды ниже):

Aпроизошла ошибка связи "104" при отправке или получении данных из удаленной базы данных. SQLCODE = -30080, SQLSTATE = 08001, DRIVER = 4.24.92

Команды, запущенные в хранилище DB2 на консоли Cloud:

CREATE WRAPPER DRDA;  
CREATE SERVER DP_DB_SERVER TYPE DASHDB VERSION 11.1 WRAPPER DRDA AUTHORIZATION "bluadmin" PASSWORD "*****" OPTIONS (
    HOST '******.dal.bluemix.net', PORT '50001', DBNAME 'BLUDB');

FYI - Целевая БД - это БД транзакций в облаке с Flex Plan.Я могу подключиться к целевой БД и выполнить запросы с помощью инструмента клиента jdbc (SQL Workbench / J).Также я могу создать сервер в другом направлении, т. Е. Использовать целевой сервер DB2 Warehouse в облаке и объединенный источник в качестве DB2 в облаке.

обновление: при попытке изменить порт на 50000 произошла другая ошибка связи - A

произошла ошибка связи "110" при отправке или получении данных из удаленной базы данных. SQLCODE = -30080, SQLSTATE = 08001, DRIVER = 4.24.92

Благодарим вас за помощьна этом.Благодаря.

Ответы [ 2 ]

0 голосов
/ 21 марта 2019

Попробуйте порт 50000 в определении CREATE SERVER

В разделе «Что нового для хранилища Db2 в облаке» для федерации от 8 сентября 2017 года сказано:

Федерация

Федерация(ранее назывался «жидкий запрос») возможность теперь доступна для источников на основе Db2 через соединения не-SSL.

Обратите внимание на ограничение non-SSL connections

0 голосов
/ 20 марта 2019

В документации приведена следующая информация об ошибке связи 104 (сброс соединения) в Linux.

Предложите вам пройти каждый шаг и исключить каждую возможность.

Поскольку и источник, и цель находятся в облаке, вы должны убедиться, что соответствующие порты открыты между ними.

Подключенный партнер закрыл соединение.

Проверьте любой лимит времени ожидания на стороне партнера.

Например, Брандмауэр, Приложение, уровень DB2 CLI и т. Д.

Если в клиентском приложении, которое использует ODBC / CLI для подключения к серверу DB2 UDB, сообщается об ошибке:

Отключите тайм-аут DB2 CLI:

Добавьте 'QUERYTIMEOUTINTERVAL = 0' в файл db2cli.ini вна стороне клиента.

Проверьте, есть ли межсетевой экран между клиентом и сервером.

Если у него есть ограничение по времени для открытого соединения

Проверьте, есть ли у приложений время ожидания.

например, ADO timeout, VB timeout.

Эта ошибка также может быть вызвана проблемой, описанной в technote_1395285

Когда подключение к локальной базе данных каталогизируется с использованиемимя-псевдоним, чем имя базы данных, вы можете получить ошибку SQL30081 при попытке подключения к этой базе данных с использованием соединения TCPIP.

Если вы получаете эту ошибку при попытке подключения к базе данных, убедитесь, чтона компьютере, где находится эта база данных, база данных не каталогизируется с использованием другого псевдонима, чем имя базы данных.

...