powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Создание сервера объединения на втором экземпляре
9 сообщений из 9, страница 1 из 1
Создание сервера объединения на втором экземпляре
    #38197614
Semen Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте всем!

Есть DB2 WSE 9.7 fp 7. На сервере создано 2 экземпляря DB2 и DB2S. Через ассистент конфигурирования добавил алиас удаленной БД REMOTEDB. Теперь хочу в локальной БД экземпляра DB2S развернуть сервер объединения. Оболочку создал, а вот сам сервер не создается. Ругается на REMOTEDB, что не может найти.
Код: plaintext
1.
2.
3.
SQL30061N  Алиас или имя базы данных "<имя>" не было найдено на удаленном узле.

Объяснение: Базы данных с таким именем нет на удаленном узле.

Создание сервера объединения в БД первого экземпляра на этот же REMOTEDB выполняется успешно. Что не так?

С уважением, Семен Попов
...
Рейтинг: 0 / 0
Создание сервера объединения на втором экземпляре
    #38197792
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Semen Popov,

Здравствуйте.

Что выдаёт на сервере из db2cw 2 последние команды:

Код: plaintext
1.
2.
3.
set DB2INSTANCE=DB2S
db2 terminate
db2 list node directory
db2 list db directory
...
Рейтинг: 0 / 0
Создание сервера объединения на втором экземпляре
    #38198161
Semen Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
db2 list node directory:
Код: plaintext
SQL1027N  Невозможно найти каталог узлов.

db2 list db directory:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Запись базы данных 1:

 Алиас базы данных               = JURNALDB
 Имя базы данных             = JURNALDB
 Каталог локальной базы данных        = D:
 Выпуск базы данных                                      = d.00
 Комментарии                             = БД Электронного журнала
 Тип записи каталога             = Косвенный
 Номер раздела базы данных каталога            = 0
 Имя хоста альтернативного сервера    =
 Номер порта альтернативного сервера  =

Собственно, JURNALDB - это та база, в которой хочу развернуть сервер объединения. А вот алиас удаленной базы не вижу. Да и с каталогом узлов что-то не в порядке.
...
Рейтинг: 0 / 0
Создание сервера объединения на втором экземпляре
    #38198225
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Semen Popov...
Собственно, JURNALDB - это та база, в которой хочу развернуть сервер объединения. А вот алиас удаленной базы не вижу. Да и с каталогом узлов что-то не в порядке.дело в том, что вам надо зарегистрировать REMOTEDB (и его экземпляр, конечно) под локальным экземпляром DB2S так же, как вы сделали это для экземпляра DB2.

Т.е. вы делаете примерно так:

Код: plaintext
1.
2.
3.
set DB2INSTANCE=DB2S
db2 terminate
db2 catalog tcpip node  REM_NODE  remote  hostname  server  port_number 
db2 catalog db  REMOTEDB  at node  REM_NODE 
...
Рейтинг: 0 / 0
Создание сервера объединения на втором экземпляре
    #38198394
Semen Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mark Barinstein...
дело в том, что вам надо зарегистрировать REMOTEDB (и его экземпляр, конечно) под локальным экземпляром DB2S так же, как вы сделали это для экземпляра DB2.

Т.е. вы делаете примерно так:
...
Спасибо. Всё получилось. Ранее я не использовал set DB2INSTANCE=DB2S . Я почему-то предполагал, что для каталогизации удаленной бд на втором экземпляре достаточно выполнить attach to DB2S . :-) Но в этом случае каталогизация все равно происходит в первом инстансе.
...
Рейтинг: 0 / 0
Создание сервера объединения на втором экземпляре
    #38199176
Semen Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А еще вопрос можно? При создании никнеймов (только по view-структурам) такая ошибка

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE NICKNAME DB2INST.V_ADDR_RT_CITY FOR UNITSTRH.DB2INST.V_ADDR_RT_CITY

DB21034E  Данная команда обрабатывалась как оператор SQL, поскольку она не 
является допустимой командой процессора командной строки.  При обработке SQL 
было получено сообщение:
SQL0901N  Оператор SQL завершился неудачно из-за несущественной ошибки 
системы. Последующие операторы SQL могут обрабатываться.  (Причина "cannot 
convert stats timestamp value ".)  SQLSTATE=58004

Поэтому псевдонимы на view вообще не могу создать
...
Рейтинг: 0 / 0
Создание сервера объединения на втором экземпляре
    #38200381
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Semen Popov,

Это похоже на баг, который, вроде, уже должен быть исправлен.
JR35191: CAN NOT CREATE A NICKNAME ON A NICKNAME .
Но если у вас действительно 9.7.7, а не 9.7.0, то надо бы открыть PMR.
...
Рейтинг: 0 / 0
Создание сервера объединения на втором экземпляре
    #38200563
Semen Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mark Barinstein, спасибо. Я действительно создаю никнейм на никнейм удаленной БД. Версия DB2 9.7.7, а вот удаленная версия DB2 9.7.4

И действительно у всех никнейм (view) в удаленной БД при запросе select stats_time from syscat.tables where tabname ='VIEW_NICKNAME' выдается результат:

Код: plaintext
1.
2.
3.
4.
5.
STATS_TIME
--------------------------
0000-00-00-00.00.00.000000

  1 record(s) selected.

А вот для никнеймов таблиц выдается значение реальной даты.

Скажите, а я не могу принудительно обновить это поле для всех таблиц, у которых STATS_TIME=0000-00-00-00.00.00.000000, в какое-нибудь ненулевое значение?

Например,
Код: sql
1.
update syscat.tables set STATS_TIME='2012-08-27-09.23.35.461000' where TYPE='T' and STATS_TIME='0000-00-00-00.00.00.000000'
...
Рейтинг: 0 / 0
Создание сервера объединения на втором экземпляре
    #38200654
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Semen Popov...
Скажите, а я не могу принудительно обновить это поле для всех таблиц, у которых STATS_TIME=0000-00-00-00.00.00.000000, в какое-нибудь ненулевое значение?
Для этого вы можете либо:

- сделать
update sysstat.tables set card=0 where ...
update sysstat.tables set card=-1 where ...
для нужого nickname; при этом соотв. syscat.tables.stats_time должно измениться.

- воспользоваться процедурой SYSPROC.NNSTAT для этого nickname:
CALL SYSPROC.NNSTAT(NULL, 'VIEW_NICKSCHEMA', 'VIEW_NICKNAME', NULL, NULL, 0, 'D:\\tmp\\log1.txt', ?)
в этом случае оно, скорее всего, будет выполнять 'select * from view_nichschema.view_nickname', так что процедура на больших таблицах может работать долго.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Создание сервера объединения на втором экземпляре
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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