Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Время доброе! Есть большая БД, с недавних пор на ней при выполнении скрипта с запуском RUNSTATS и REORG стали появляться сообщения об ошибках. Например, при выполнении сбора статистики SQL2310N The utility could not generate statistics. Error "-1477" was returned, а при выполнении реорганизации SQL2216N SQL Error "-1477" occurred while reorganizing a database table or its indexes. Путём применения db2dart выяснилось, что на некоторой таблице более чем в 500 тыс. записей (кол-во записей смотрели на аналогичной базе отстающей от боевой на 8 дней) имеется предупреждение: Data object in drop-penting (unavailable) stat, errors reported for this object may be due to this state. И далее сообщение об ошибке в индексах: Error: Unable to read pool page 0, object page 0, from pool 2, Error: parent pool2, object ID 54, object type index. Error: Page 0 of index object does not exist. This invalid invalid index object will be rebuilt... Проверили в каком табличном пространтсве находятся табличка и её индексы SMS Вытащили описание индексов, начинаем отбрасывать сломавшийся индекс через drop index И практически сразу получаем SQL1477N Table "схема.имя" cannot be accessed. SQLSTATE=55019 Вот такая засада, таблицу уничтожать нельзя. Как получить доступ к сломавшейся табличке для того что бы перестроить её индексы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2007, 19:50 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Не лечится. Единственное, что вы можете сделать - это восстановить таблицу из резервной копии. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2007, 01:27 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Ага вот и я про то же. Справочник SQL есть и да же по-русски, что делать с ошибкой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2007, 10:16 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Вопрос то стоит в другом плане! Все бы было ничего если бы у нас таблица не заблокировалась. Есть ли какая-то возможность разблокировать ее ручками? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2007, 10:20 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Anka_SВот такая засада, таблицу уничтожать нельзя. Как получить доступ к сломавшейся табличке для того что бы перестроить её индексы?Из вашего поста непонятно - у вас селекты идут на эту таблицу или нет? Если да, то db2dart может пометить этот индекс как инвалидный (db2dart <your_base> /MI) и после этого можно его дропнуть будет. Если нет, то содержимое таблицы можно выгрузить в текстовый файл с разделителями (db2dart <your_base> /DDEL). Начальная страница - 0, число страниц задавайте какое-нибудь побольше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2007, 10:34 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Mark Barinstein Anka_SВот такая засада, таблицу уничтожать нельзя. Как получить доступ к сломавшейся табличке для того что бы перестроить её индексы?Из вашего поста непонятно - у вас селекты идут на эту таблицу или нет? Если да, то db2dart может пометить этот индекс как инвалидный (db2dart <your_base> /MI) и после этого можно его дропнуть будет. Если нет, то содержимое таблицы можно выгрузить в текстовый файл с разделителями (db2dart <your_base> /DDEL). Начальная страница - 0, число страниц задавайте какое-нибудь побольше. Пытались открыть таблицу через центр управления, не получилось вываливалась ошибка что-то типа нед доступа, точнее сейчас не скажу, но из этого следует что select уже не проходит. Поэтому, наверное, придётся пробовать второй вариант c db2dart <my_base> /DDEL. Можно вопрос по параметрам утилиты db2dart? Знаю, что для полной проверки базы необходимо запустить db2dart <base> /DB. Здесь Вы ещё упомянули /MI и /DDEL, а ещё какие наиболее часто используются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2007, 20:22 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Anka_SМожно вопрос по параметрам утилиты db2dart? Знаю, что для полной проверки базы необходимо запустить db2dart <base> /DB. Здесь Вы ещё упомянули /MI и /DDEL, а ещё какие наиболее часто используются? db2dart . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2007, 20:54 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
А что случилось? пытались восстановиться с момента времени до notlogged операции или сделать роллбак за нее? Mark когда-то говорил, что после такого таблица может быть только дропнута. После коммита с не журналируемой операцией лучше сразу делать резервную копию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2007, 17:55 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Mark Barinstein Anka_SМожно вопрос по параметрам утилиты db2dart? Знаю, что для полной проверки базы необходимо запустить db2dart <base> /DB. Здесь Вы ещё упомянули /MI и /DDEL, а ещё какие наиболее часто используются? db2dart . Добрый вечер! Я, когда рыскала в поисках параметров для db2dart'а, искала в pdf-никах к версии, а там как то не особо густо, но всё уже нашлось db2dart <name> /H :) Теперь по результатам после запуска db2dart <name> /MI было предложено ввести index object ID and tablespace с эти всё в порядке (т.к. при прогоне db2dart' ом с параметром /DB улилита вывела необходимые мне Index obj:XX in pool:X в лог) после этого пошла строчка Attempting to mark index (p=x; o=xx) as bad. В подробностях <NAME>.RPT есть: Error: unable to read poole 0 (кажется так, распечатку забыла), object page 0, from pool x Error: parent pool x, object ID XX, object type index, наверное, из этого следует сделать вывод, что пометить индекс как сбойный улилите не удалось, вообщем- то косвено об этом говорит отрицательный результат последующей попытки удаления сбойного индекса в сообщении об ошибке [IBM][CLI Driver][DB2/LINUX] SQL1477N не удаётся получить доступ к таблице <схема.имя> SQLSTATE=55019 Сдвинуться с места пока не удалось, что я делаю ни так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2007, 19:56 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
DB2Adventurer_А что случилось? пытались восстановиться с момента времени до notlogged операции или сделать роллбак за нее? Mark когда-то говорил, что после такого таблица может быть только дропнута. После коммита с не журналируемой операцией лучше сразу делать резервную копию. Хотите верьте, хотите нет, но я так и не поняла как таблица оказалась в состоянии drop-pending (unavailable), нашли её, работая совсем над другой проблемой случайно. МЫ обкатываем новое ПО и соответственно проводим всякие тестирования, настройки по оптимизации производительности и прочая. На сегодняшний день установили, только то, что в ПО пошёл глюк одном из режимов, штатно он должен работать так- есть некоторый список из него нужно удалить одну из записей, тестеровщик встаёт на запись жмёт пиктограммку удалить, программа спрашивает Вы уверены? далше следует выбрать Да и всё, удаляемая запись с экрана исчезает -хэппи энд, но после восстановления базы из бэкапа при всех тех же действиях запись остаётся на своём месте, ничего не происходит-тишина. У меня это всё вызвало подозрение, когда я сама проделала этот фокус и полезла в просмотр "яко бы только что грохнутой записи" из интерфейса прграммы и нарваласть на отсутствие доступа к ней. До этого приходилось это делать пару раз и всё было хоккей, а тут засада, вот и начала копать. Бэкапную копию сворачивает скрипт еженочно, до этого днём никто не жаловался на проблемы, перед, тем как развернуть бэкап была выполнена задача, целью, которой являлась максимальная нагрузка по коннектам и работа пользователей в наиболее сложных режимах с выполнением предложенного сценария, после её завершения, сделали восстановление с ночного бэкапа, на нём пошёл этот осяк с удалением, начали копать и нашли эту самую таблицу в drop-pending. Бэкап я делаю так (скрипт примерно так же): отрубаю все приложения db2 force application all затем db2 backup database <name> user <blablabla> using <bububu> to <path> whith 1 buffers buffer 1024 parallelism 1 compress without prompting скорее всего в тот раз было то же самое. С восстановлением то же без особых хитростей db2 force application all потом db2 restor database <name> user <blablabla> using <bububu> from <path> taken at <метка создания> without prompting ну и плюс стартуем БД и перестартуем WebSpher'у что здесь могло произойти и как? Нужно будет ещё раз пройтись по Журналу в ЦУ мб там есть следы какой-нибудь гадости. Если бы сервак был виндовый объязательно бы полезла в Администрировании посмотрела журнал событий, но это Linux, увы я его совсем не знаю. Я не поняла, что такое восстановиться с момента времени до notlogged операции или сделать роллбак за нее- это как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2007, 21:05 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Anka_SСдвинуться с места пока не удалось, что я делаю ни так?Видимо, вы сделали либо неудачную нелогируемую операцию изменения таблицы, либо эта нелогируемая операция с таблицей (load into ... nonrecoverable, alter table ... activate not logged initially) встретилась при накате по логам после restore database. Выгружайте уже таблицу: db2dart <your_base> /DDEL после подсказки вводите 4 цифирки через запятую (число страниц можно ставить в 0 для выгрузки всех страниц). Действуйте смелее! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2007, 10:18 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Anka_S Я не поняла, что такое восстановиться с момента времени до notlogged операции или сделать роллбак за нее- это как? Была успешно выполнена операция с NLI. Потом вы восстановили бэкап сделанный до этой операции и пытаетесь сделать роллфорвард до момента времени уже после этой операции. Второй вариант: Вы сделали ALTER ... NOT LOGGED INITIALLY, потом что-то выполняли над таблицей, однако встретилась ошибка и была попытка отката транзакции с NLI. Могу как альтернативу db2dart /ddel предложить взять бэкап до NLI, восстановиться с него и сделать роллфорвард до момента времени предвшествующего этой операции. Но для этого вы должны знать, когда все было хорошо, например, до начала тестов. Под линукс тоже есть журнал, Control Center -Tools-Journal. Только придется локали номрально настроить если база в не в utf8. С меня семь ведер пота сошло, пока не заработал номарльно гуи во всех тулзах, уведомления на почту приходили зашифрованные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2007, 11:09 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
DB2Adventurer[quot Anka_S ] Но для этого вы должны знать, когда все было хорошо, например, до начала тестов. Хороший вопрос :) Так насчёт выгрузки наверное всёравно я её сделаю, а что насчёт внешних ключей как оказалось они там так же присутствуют как проверить внешиний ключ 016-0814? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2007, 19:16 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Mark Barinstein Anka_SСдвинуться с места пока не удалось, что я делаю ни так?Видимо, вы сделали либо неудачную нелогируемую операцию изменения таблицы, либо эта нелогируемая операция с таблицей (load into ... nonrecoverable, alter table ... activate not logged initially) встретилась при накате по логам после restore database. Вечер добрый! Нелогируемая операция...по идее WebSphere пришет всё подряд правильно, вот и возникает такой вопрос если взять SystemOut.log можно в нём что то найти или это так же как с db2diag.log который стоит анализировать только в случае описанного где то ранее колапса? Да и ещё у меня рядом с этм логом лежит SystemErr.log и SystemOut_"'date'"_"'time'".log это нормально, для чего сфера создаёт два последних? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2007, 19:45 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Выгрузили и дропнули таблицу, но вот мой вопрос отностительно логов неужели никто не сталкивался? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2007, 18:24 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Предлагаю посмотреть в IBM Autonomic Toolkit. Настройте парсер логов и выявляет, события в WS которые приводят к нежелательным последствиям в DB2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2007, 20:13 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Anka_SНелогируемая операция...по идее WebSphere пришет всё подряд правильно...websphere - это, образно говоря, запускалка приложений. Можно написать в приложении чего угодно, а потом запустить его с помощью websphere. Если хотите посмотреть, что это приложение делает, создайте event monitor на statements, постарайтесь сэмулировать ситуацию, а потом посмотрите, что именно при этом приложение делает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2007, 10:11 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Итогом недельных мучений стало вот такое хирургическое решение (мб кто из знатоков увидит в нём ошибки, поправьте, т.к. пока это решение прикатали только на тестовом серваке): -Выгружаем из таблицы в drop-penting состоянии через db2dart <my_base> /DDEL в текстовик содержимое ч/з (,). -Вытаскивем с помощью db2look -d <my_base> -t <my_table> -a -e -l -x -c -f (надо будет с параметрами разобраться поподробнее) стр-ру сломавшейся таблицы. -Дропаем инвалидную табличку, -Стоим её заново по стр-ре, что вытянули через db2look, у меня через sql-запрос постоить не получилось, через ЦУ ручками вполне вменяемо, с триггером была какая-то возня (он никак стоиться не хотел, хотя, наверное его вообще можно было и не бить ?) -Дальше импортируем из текстовика в пустую таблицу данные, предварительно сделав RUNSTATS и REORG , поскольку в командах db2 разбираюсь плохо, предпочла сделать импорт ч/з опцию ЦУ, и в конце ещё раз проехалась по DB RUNSTATS и REORG (мб это и перебор не знаю). Интересно насколько теперь это правильно будет работать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2007, 20:55 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Mark Barinsteinwebsphere - это, образно говоря, запускалка приложений. Можно написать в приложении чего угодно, а потом запустить его с помощью websphere... Да, действительно, чего угодно и как угодно :) Спасибо за наводку на монитор событий, попробую как-нибудь разобраться. Но всё же меня не покидает вопрос насколько нормально, то что у меня три лога и почему сфера их создаёт или это какие то настройки в WSAS? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2007, 21:04 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Anka_S Но всё же меня не покидает вопрос насколько нормально, то что у меня три лога и почему сфера их создаёт или это какие то настройки в WSAS? Не мучайтесь. Логи создаваемые в WSAS, это дело Java программ. Этих логов может быть гораздо больше. Вам эти логи могут помочь или помешать при разборе - чем занималась программа. Конкретно ваши SystemOut - стандартный поток вывода. SystemErr - стандартный поток ошибок. Обычно, при разборе полётов интересен последний журнал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2007, 08:51 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
gals Anka_S Но всё же меня не покидает вопрос насколько нормально, то что у меня три лога и почему сфера их создаёт или это какие то настройки в WSAS? Не мучайтесь. Логи создаваемые в WSAS, это дело Java программ. Этих логов может быть гораздо больше. Вам эти логи могут помочь или помешать при разборе - чем занималась программа. Конкретно ваши SystemOut - стандартный поток вывода. SystemErr - стандартный поток ошибок. Обычно, при разборе полётов интересен последний журнал.Да это понятно, что если пошли косяки error искать нужно, у нас разработчик прикольный, собирает скриптом всё информацию о системе, метров по пять в архиве получается, но анализировать как оказалось не анализирует вот я и поинтересовалась м.б. кто утилитку какую юзает для разборов полётов что для SystemOut, что для DB2 db2diag.log IBM хвалилось что спецалально структурировало форму лога. Может кто что слышал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2007, 21:11 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Я же вроде писал про autonomic management toolkit. http://www.ibm.com/developerworks/autonomic смотрите там. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 09:30 |
|
||
|
SOS на большой таблице лезет ошибка SQL2310N при RUNSTATS и SQL22316N при REORG
|
|||
|---|---|---|---|
|
#18+
Anka_Sм.б. кто утилитку какую юзает для разборов полётов что для SystemOut, что для DB2 db2diag.log IBM хвалилось что спецалально структурировало форму лога. Может кто что слышал? db2diag - для анализа db2diag.log ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 10:06 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=43&tid=1604120]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 370ms |

| 0 / 0 |
