powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Редактор команд не дает план доступа
15 сообщений из 15, страница 1 из 1
Редактор команд не дает план доступа
    #36653047
kasyanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пытаюсь посмотреть на план доступа для запроса в редакторе команд DB2 9.7.1
Сразу скажу, что соединяюсь с локальной базой данных, и пытаюсь смотреть план для запроса из простой таблички в схеме своего пользователя.

Получаю ошибку (после сообщения об автоматическом создании таблиц объяснения плана доступа):

DBA3065E Снимок нельзя обработать из-за ошибки CLI.

Объяснение:

При обработке снимка произошла ошибка CLI. План доступа вывести нельзя.

Действия пользователя:

Проверьте конфигурацию CLI, введя следующую команду:

db2 get cli cfg
for section <имя-базы-данных>

Если значение LONGDATACOMPAT равно 1, попытайтесь внести базу данных в
каталог с другим алиасом:

catalog db <имя-базы-данных> as <алиас-базы-данных>

Задайте для алиаса базы данных LONGDATACOMPAT=0:

db2 update cli cfg for section <алиас-базы-данных> using
longdatacompat 0

Передайте запрос для EXPLAIN в базе данных алиаса.

Если значение LONGDATACOMPAT не равно 1 или если этот параметр не задан
в конфигурации CLI, обратитесь в центр IBM по обслуживанию.



Никакой секции CLI у меня для этой базы нет, она локальная. И вообще, редактор команд соединяется через jdbc
Когда-то давно на прошлых версиях, помнится, это работало - получалась красивая такая диаграмма с блоками и стрелочками :)

Алексей.
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #36653420
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kasyanov,

Попробуй сделать :

1. db2 connect to ....
2. db2 -tf EXPLAIN.DDL

С уважением,
Вадим.
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #36653651
kasyanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GVF112GVFkasyanov,

Попробуй сделать :

1. db2 connect to ....
2. db2 -tf EXPLAIN.DDL

С уважением,
Вадим.

Попробовал, не помогает (фактически все объекты уже были созданы и так автоматом).
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #36653693
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
db2 "connect to ..."
db2 "explain plan for select * from ...."

db2exfmt -d ${DB_NAME} -e ${SCHEMA_NAME} -g OTIC -n XXX -u ${USER_NAME} ${PASSWORD} -o ${FILE_NAME} -no_prompt

${SCHEMA_NAME} - это имя схемы в которой находятся EXPLAIN-таблицы
${FILE_NAME} - в этом файле будет результат
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #36653696
kasyanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовал создать новую базу, на ней работает.
Видимо какие-то эксперименты с db cfg привели к столь плачевным результатам...
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #36653699
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, кстати, таблички объяснения лучше чистить перед использованием: delete from explain_instance;
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #36653824
kasyanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gardenman,
Спасибо, в текстовом виде работает
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #36653923
Anka_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kasyanov,
CLI встречается во многих местах.
Например, при добавлении алиасов БД в источниках ODBC, там кстати ошибка мб из-за какой-нибудь библиотеки драйверов, которая не может прописаться нормально в реестре, если ошибка в этом то можно попробовать прописать вручную через regsvr32 <file_name>.

Если ругается на имена, то нужно смотреть как база была прописана в узле.
БД можно прописать, например,

так db2 catalog database name at node my,
или db2 catalog database name as name2 at node my

Вообщем смотреть хорошо бы odbc.ini и db2cli.ini.

Есть ещё одна фишка, иногда из-за настроек машины не могут работать с именами компьютеров или серверов, т.е пускаешь ping VOVA, а он не идёт, хотя сама машина доступна в этом случае можно попробовать указать ip-адрес при добавлении источника
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #36653946
Anka_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kasyanov,

и ещё у тебя jdbc, зн. ты зависишь от Jav'ы.
Jаva стоит одна?
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #37065985
light_ret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток!
Столкнулся с такой же проблемой, но заметил одну маленькую особенность:
когда таблицы участвующие в запросе пусты либо имеют мало записей, план запроса строится на ура, а если таблицы имеют много записей (несколько миллионов), то при построении плана запроса получаю ошибку "DBA3065E Снимок нельзя обработать из-за ошибки CLI."

ОС: SUSE 10.2
DB: DB2 ESE 9.7
все стоит на VMWare Server 1.0.9


Может, посоветуете ,где можно еще поковыряться?
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #37066087
light_ret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А попытка сгенерить план запроса в файл дает такой результат.

Выполняемая команда:
Код: plaintext
db2exfmt -d test1 -e db2inst1 -g OTIC -n XXX -u db2inst1 db2inst1 -o ./db2_help/epx_log.log -no_prompt

Результат:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
DB2 Universal Database Version  9 . 7 ,  5622 - 044  (c) Copyright IBM Corp.  1991 ,  2008 
Licensed Material - Program Property of IBM
IBM DATABASE  2  Explain Table Format Tool

Connecting to the Database as user db2inst1.
Connect to Database Successful.
No Explain instances (plans) were found for database test1, source pattern: %.XXX for explain table schema db2inst1.
If this is not the correct explain table schema, please specify the correct schema
using the -e option on the command line or correct the setting of the variable
USER or USERNAME so the correct schema can be found.
Output is in ./db2_help/epx_log.log.
Executing Connect Reset -- Connect Reset was Successful.

Почему, схема db2inst1 ему не подходит понять не могу.
в этой схеме находятся все таблицы запроса и таблицы плана запроса.
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #37066189
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
light_ret,

А так:
Код: plaintext
db2exfmt - 1  -e DB2INST1 -d test1 -g -u db2inst1 db2inst1 -o ./db2_help/epx_log.log
?
Если то же самое будет, что у вас из-под db2inst1 в выдаёт
Код: plaintext
select count( 1 ) from explain_instance
?
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #37066328
light_ret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mark Barinstein,

Большое СПАСИБО!!!
Так все отработало.
Хотя, какая основная ошибка была у меня так и не пойму.

Сейчас попробую сделать это на таблицах с данными :)


А по визуальной части догадок нет, случайно?
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #37066685
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
light_retА по визуальной части догадок нет, случайно?Попробуйте LOB'ы, если есть из списка в SELECT убрать.
Бывает, что ему это не нравится...
...
Рейтинг: 0 / 0
Редактор команд не дает план доступа
    #37067420
light_ret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mark Barinstein,

у меня в таблицах отсутствуют LOB'ы.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Редактор команд не дает план доступа
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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