Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Прошу помощи. / 12 сообщений из 12, страница 1 из 1
08.10.2014, 10:33
    #38770007
SQLMantis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
Привет всем!
Остались без DB2 DBA. Прошу помощи в диагностировании проблемы.
Есть TSM (Tivoli Storage Manager), который использует DB2 под Linux.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
[tsminst1@tsmserver ~]$ uname -a
Linux tsmserver 2.6.32-220.el6.x86_64 #1 SMP Wed Nov 9 08:03:13 EST 2011 x86_64 x86_64 x86_64 GNU/Linux
[tsminst1@tsmserver ~]$ db2level
DB21085I  Instance "tsminst1" uses "64" bits and DB2 code release "SQL09076"
with level identifier "08070107".
Informational tokens are "DB2 v9.7.0.6", "s120516", "IP23328", and Fix Pack
"6".
Product is installed at "/opt/tivoli/tsm/db2".



В логах TSM, периодически появляются ошибки
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
10/08/2014 07:42:53      ANR0162W Supplemental database diagnostic information:
                          -1:58030:-1655 ([IBM][CLI Driver][DB2/LINUXX8664]
                          SQL1655C  The operation could not be completed due to an
                          error accessing data on disk.  SQLSTATE=58030). (SESSION:
                          18639)
10/08/2014 07:42:53      ANR0102E tbcli.c(2146): Error 9999 inserting row in table
                          "Backup.Objects". (SESSION: 18639)
10/08/2014 07:42:53      ANR0532W smnode.c(4143): Transaction 0:8106225 was aborted
                          for session 18639 for node GRID_DB (TDPO Linux86-64).
                          (SESSION: 18639)
10/08/2014 07:42:53      ANE4994S (Session: 18639, Node: GRID_DB)  TDPO Linux86-64
                          ANU0599 TDP for Oracle: (23594): => () ANS1301E (RC1)
                          Server detected system error (SESSION: 18639)



Часть лога DB2 (на это время)
Код: sql
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.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
2014-10-08-07.42.43.157103+240 I42272223E3927      LEVEL: Severe
PID     : 8801                 TID  : 140407589562112PROC : db2sysc 0
INSTANCE: tsminst1             NODE : 000          DB   : TSMDB1
APPHDL  : 0-8937               APPID: *LOCAL.tsminst1.141008032356
AUTHID  : TSMINST1
EDUID   : 623                  EDUNAME: db2agent (TSMDB1) 0
FUNCTION: DB2 UDB, buffer pool services, sqlb_verify_page, probe:2
MESSAGE : ZRC=0x86020001=-2046689279=SQLB_BADP "page is bad"
          DIA8400C A bad page was encountered.
DATA #1 : String, 64 bytes
Error encountered trying to read a page - information follows :
DATA #2 : String, 23 bytes
Page verification error
DATA #3 : Page ID, PD_TYPE_SQLB_PAGE_ID, 4 bytes
1219179
DATA #4 : Object descriptor, PD_TYPE_SQLB_OBJECT_DESC, 88 bytes
    Obj: {pool:4;obj:19;type:1} Parent={2;19}
  lifeLSN:       0000000001C9D067
  tid:           0 0  0
  extentAnchor:                1056
  initEmpPages:                   0
  poolPage0:                      0
  poolflags:                   3122
  objectState:                   27
  lastSMP:                        0
  pageSize:                    8192
  extentSize:                    32
  bufferPoolID:                   2
  partialHash:             18022404
  bufferPool:    0x00007fb54e4337c0
  pdef:          0x00007fb574b21080
DATA #5 : Bitmask, 4 bytes
0x00000002
DATA #6 : Page header, PD_TYPE_SQLB_PAGE_HEAD, 48 bytes
pageHead: {tbspSeed:0;obj:0;type:0} PPNum:0 OPNum:0
  begoff:                       0
  datlen:                       0
  pagebinx:                     0
  revnum:                       0
  pagelsn:     0000000000000000  flag:                         0
  future32:                    0
  cbits1to31:                   0
  cbits32to63:                  0
DATA #7 : Bufferpool globals, PD_TYPE_SQLB_GLOBALS, 1256 bytes
  dbcb:                  0x00000002011682c0
  bpcb:                  0x00007fb5401abdc0
  ptbl:                  0x00007fb5401abf40
  eduType:               SQLB_EDU_AGENT
  eduCB:                 0x00007fb3027b0080
  qryData:               0x0000000000000000
  qryDataSz:                              0
  qryDataPos:                             0
  contQryData:           0x0000000000000000
  contQryDataSz:                          0
  contQryDataPos:                         0
  bglobals_flags:                       200
  dbmon_cb:              0x0000000000000000
  eduId:                 623
  curPfQ:                                 3
  curRemHateListCounter:             273019
  debugInfo:             0x0000000000000000
  pCurRecLsn:            0x0000000000000000
  clnrCB:                0x0000000000000000
  prefetchPriority:                       1
  agentPriorityWeight:      00
  staticStr:             925608<FF>5<FF>5<FF>925640<FF>/tsminst1/db/tsminst1/NODE0000/TSMDB1/T0000005/C0000000.LRG<FF><FF>
  numPFRequestsHeld:                      0
  memAccessCount:
    m_bIsInitialized:                 false
    m_iDisabled:                          0
    m_iAccessCount:                       0
CALLSTCK: (Static functions may not be resolved correctly, as they are resolved to the nearest symbol)
  [0] 0x00007FB8DD899AC0 pdLog + 0x398
  [1] 0x00007FB8DE5B116E _Z25sqlbLogReadAttemptFailurejP16SQLB_OBJECT_DESCjP9SQLB_PAGEibmjPcP12SQLB_GLOBALS + 0x1BE
  [2] 0x00007FB8E00F5043 sqlbReadPage + 0xA17
  [3] 0x00007FB8E00EBB2A _Z19sqlbGetPageFromDiskP11SQLB_FIX_CBi + 0x48C
  [4] 0x00007FB8E00DE79A _Z7sqlbfixP11SQLB_FIX_CB + 0x1076
  [5] 0x00007FB8E01B24B4 _Z7sqlifixP7SQLI_CBP14SQLI_PAGE_DESCji + 0x66
  [6] 0x00007FB8DE076519 _Z23sqliFixPageWithChildPtrP7SQLI_CBjiii + 0x3B
  [7] 0x00007FB8DFEA3B16 _Z8sqlischsP7SQLI_CBP10SQLD_ISTATP10SQLD_CSTATP10SQLD_TSTATP9schs_datai + 0x1A8
  [8] 0x00007FB8DFF35FF3 _Z8sqlistatP8sqeAgentP8SQLD_CCBjP9SQLD_IXCBP10SQLD_ISTATP10SQLD_CSTATP10SQLD_TSTAT + 0x445
  [9] 0x00007FB8DE68D45F _Z14sqldIndexStatsP8sqeAgenttthtijP10SQLD_ISTATP10SQLD_TSTATPciS5_ijRb + 0x90F

2014-10-08-07.42.43.208273+240 E42276151E967       LEVEL: Critical
PID     : 8801                 TID  : 140407589562112PROC : db2sysc 0
INSTANCE: tsminst1             NODE : 000          DB   : TSMDB1
APPHDL  : 0-8937               APPID: *LOCAL.tsminst1.141008032356
AUTHID  : TSMINST1
EDUID   : 623                  EDUNAME: db2agent (TSMDB1) 0
FUNCTION: DB2 UDB, buffer pool services, sqlbLogReadAttemptFailure, probe:10
MESSAGE : ADM14001C  An unexpected and critical error has occurred: "BadPage".
          The instance may have been shutdown as a result. "Automatic" FODC
          (First Occurrence Data Capture) has been invoked and diagnostic
          information has been recorded in directory
          "/home/tsminst1/sqllib/db2dump/FODC_BadPage_2014-10-08-07.42.43.20819
          4_0000/". Please look in this directory for detailed evidence about
          what happened and contact IBM support if necessary to diagnose the
          problem.


...
Рейтинг: 0 / 0
08.10.2014, 11:32
    #38770111
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
SQLMantis,

Добрый день.

Код: plaintext
Obj: {pool:4;obj:19;type:1} Parent={2;19}
Индекс покосился.
При остановленном инстансе tsminst1 (или при неактивной базе TSMDB1, т.е. когда к ней нет пользовательских подключений и база не активировалась ранее явно) из командной строки из-под пользователя tsminst1:
db2dart TSMDB1 /MI /TSI 4 /OI 19
Команда пометит индекс как испорченный, и он перестроится потом автоматически либо при активации базы, либо при первом доступе к таблице.
...
Рейтинг: 0 / 0
08.10.2014, 11:53
    #38770161
SQLMantis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
Mark Barinstein,

Спасибо большое за помощь, но мне нужны уточнения (в db2 я полный null).

При остановленном инстансе tsminst1 - это достигается DEACTIVATE DATABASE ?


или при неактивной базе TSMDB1 - как мне убедиться, что база не активна?


Можно ли мне оценить время выполнения этой команды?
...
Рейтинг: 0 / 0
08.10.2014, 12:45
    #38770274
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
SQLMantis,

1. Остановите TSM server. Не помню, останавливается ли при этом инстанс db2.
Из-под tsminst1:
2. Проверьте статус инстанса:
Код: plaintext
db2gcf -s
Если выдаст Operable - он остановлен, если Available, остановите:
Код: plaintext
db2stop force
3. Выдайте:
Код: plaintext
db2dart TSMDB1 /MI /TSI 4 /OI 19
Команда должна отработать быстро.
4. Запустите TSM server.
5. Можете посмотреть, что появилось в db2diag.log после старта инстанса. Там должны быть сообщения, что невалидный индекс перестроился.
...
Рейтинг: 0 / 0
09.10.2014, 09:52
    #38771232
SQLMantis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
Mark Barinstein,

индекс перестроился и на тот обьект больше не ругается, но сыпятся ошибки по поводу другого.
Я все сделал по аналогии

и теперь в логе
Код: sql
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.
2014-10-09-09.39.58.333885   Instance:tsminst1   Node:000
PID:11265(db2agent (TSMDB1) 0)   TID:4122994432   Appid:*LOCAL.tsminst1.141008141145
data management  sqldIndexCreate Probe:1   Database:TSMDB1

ADM5541W  Rebuilding index with IID "1" in object with ID "5" and table space
ID "6" on table "TSMDB1  .BACKUP_OBJECTS".
^^
2014-10-09-09.40.22.255316   Instance:tsminst1   Node:000
PID:11265(db2pfchr (TSMDB1) 0)   TID:1061152512   Appid:none
buffer pool services  sqlbLogReadAttemptFailure Probe:10

ADM14001C  An unexpected and critical error has occurred: "BadPage". The
instance may have been shutdown as a result. "Automatic" FODC (First Occurrence
Data Capture) has been invoked and diagnostic information has been recorded in
directory
"/home/tsminst1/sqllib/db2dump/FODC_BadPage_2014-10-08-18.01.22.027392_0000/".
Please look in this directory for detailed evidence about what happened and
contact IBM support if necessary to diagnose the problem.
^^
2014-10-09-09.40.27.318349   Instance:tsminst1   Node:000
PID:11265(db2agntp 0)   TID:4148160256   Appid:*LOCAL.tsminst1.141008141145
buffer pool services  sqlbReadPage Probe:1199   Database:TSMDB1

ADM6006E  DB2 encountered an error while reading page "925608" from table space
"5" for object "5" (located at offset "462824" of container
"/tsminst1/db2/tsminst1/NODE0000/TSMDB1/T0000005/C0000001.LRG").
^^
2014-10-09-09.40.27.451338   Instance:tsminst1   Node:000
PID:11265(db2agent (TSMDB1) 0)   TID:4122994432   Appid:*LOCAL.tsminst1.141008141145
data management  sqldEndIndexCreate Probe:2   Database:TSMDB1

ADM5543E  Rebuild of indexes on table "TSMDB1  .BACKUP_OBJECTS" failed with
SQLCODE of "-1655".




Кстати, я правильно понимаю, что в Obj: {pool:4;obj:19;type:1} Parent={2;19}, type:1 признак страницы индекса а type:0 страницы данных?
...
Рейтинг: 0 / 0
09.10.2014, 12:56
    #38771565
CawaSPb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
SQLMantisMark Barinstein,

индекс перестроился и на тот обьект больше не ругается, но сыпятся ошибки по поводу другого.
...
Побились данные уже в таблице.
Посмотрите, доступны ли данные физически - скопируйте /tsminst1/db2/tsminst1/NODE0000/TSMDB1/T0000005/C0000001.LRG куда-нибудь.

Поскольку проблема возникла в другом табличном пространстве, я бы серьёзно озаботился целостностью базы в целом.
Проверьте файловую систему и прогоните db2dart по всей базе (при потушенном инстансе):
Код: plaintext
db2dart TSMDB1 /rptn db2dart.rpt

SQLMantisКстати, я правильно понимаю, что в Obj: {pool:4;obj:19;type:1} Parent={2;19}, type:1 признак страницы индекса а type:0 страницы данных?Правильно.
...
Рейтинг: 0 / 0
10.10.2014, 15:33
    #38773328
SQLMantis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
CawaSPb
Посмотрите, доступны ли данные физически - скопируйте /tsminst1/db2/tsminst1/NODE0000/TSMDB1/T0000005/C0000001.LRG куда-нибудь.

Копируется. Мы на самом деле подняли дамп с прода на еще один сервер и смотрим ошибки на нем.

CawaSPb
Код: plaintext
db2dart TSMDB1 /rptn db2dart.rpt

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

Table inspection start: TSMDB1.BACKUP_OBJECTS
Код: sql
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.
     Table inspection start: TSMDB1.BACKUP_OBJECTS

         Data inspection phase start. Data obj: 5  In pool: 5
         Error: BPS check read error for pool page 925608, from object ID 5, pool 5,
         Error: BPS Header Page Number incorrect. Expecting 915528, Found 0.
         Error: BPS Header pool relative page number incorrect. Expecting 925608, Found 0.
         Error: BPS Header object ID incorrect. Expecting 5, Found 0.
         Error: Object tablespace id 5. BPS Header tablespace seed incorrect. Expecting 5, Found 0.
         Error: BPS Header problems found
         Error: in page 915528, pool page 925608, of Object 5, in tablespace 5.
         Error: Page data will be dumped to report.
         Error: BPS Header revision number 0x0 invalid, use version 0x500 for expected BEGOFF value.
         Error: BPS Header BEGOFF value 0x0 invalid, expected value 0x30
         000       *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           010       *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           020       *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           030       *                                           **
           030  000  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           040  010  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           050  020  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           060  030  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           070  040  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           080  050  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           090  060  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           0A0  070  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
           0B0  080  *0000 0000 0000 0000 0000 0000 0000 0000*   *................*
и так далее куча всего
.....

Error: DMS Header total free space 0 not equal to calculated value 65516 (65516-0-0).
         Error: in page 915528, pool page 925608, of Object 5, in tablespace 5.
         Data inspection phase end.


         Index inspection phase start. Index obj: 5  In pool: 6

         Index inspection phase start. Index obj: 5  In pool: 6
         Warning: Index object flags indicate invalid state, requires index be re-built,
         errors reported for this object may be due to this state.
         Warning: Index object flags indicate invalid state, requires index be re-built,
         some index consistency checks have been skipped due to this state.
         Index inspection phase end.

      Table inspection end.




С этим можно что нибудь сделать?
...
Рейтинг: 0 / 0
10.10.2014, 16:26
    #38773454
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
SQLMantis,

Надо восстанавливать табличное пространство с ID=5 из архива.
Но, если вы говорите, что только восстановили базу из архива, то, вероятно, таблица в нем сидит уже побитая?
Проверьте архив утилитой db2ckbkp .
...
Рейтинг: 0 / 0
10.10.2014, 16:59
    #38773537
SQLMantis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
Mark BarinsteinSQLMantis,
Надо восстанавливать табличное пространство с ID=5 из архива.
Но, если вы говорите, что только восстановили базу из архива, то, вероятно, таблица в нем сидит уже побитая?


Да, архив сделан с уже побитой таблицей.
Насколько я понимаю ситуацию, архива с не побитой таблицей уже нет.
Это конец? :)
...
Рейтинг: 0 / 0
10.10.2014, 17:49
    #38773620
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
SQLMantisДа, архив сделан с уже побитой таблицей.
Насколько я понимаю ситуацию, архива с не побитой таблицей уже нет.
Это конец? :)Ну, если у вас есть возможность обратиться в поддержку IBM, то это только начало!
Без поддержки вы можете только попытаться выгрузить таблицу в текстовый файл с разделителями командой
db2dart TSMDB1 /DDEL
где надо будет указать ID таблицы (5) и ID табличного пространства (5). См. ограничения по типам данных полей, если у вас в ней есть неподдерживаемые типы, то оно не выгрузит данные из этих полей.

Но проблема в том, что вам оригинальную таблицу оно может не дать удалить, т.е. даже на drop table может выдаваться ошибка.
Вытащите ddl таблицы утилитой:
db2look -d TSMDB1 -x -e -z TSMDB1 -t BACKUP_OBJECTS -o TSMDB1.BACKUP_OBJECTS.ddl

Попробуйте выгрузить данные и удалить таблицу. Если удалить не получится, то можно попробовать ее переименовать (RENAME TABLE), но это только если вы удалите все объекты, которые от нее зависят (в т.ч. индексы).
Если удалить/переименовать не получится, то надо в поддержку. Раньше была возможность пометить таблицу как невалидную с помощью db2dart /MT, но с какой-то версии её запаролили, и только поддержка может сказать вам, как ее активировать. Ну или по-другому как-то помогут...
...
Рейтинг: 0 / 0
14.10.2014, 17:36
    #38776501
SQLMantis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
Mark Barinstein,

таблица выгрузилась с одним сообщением об ошибке.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
   Dumping Page 915524 ....
   Dumping Page 915525 ....
   Dumping Page 915526 ....
   Dumping Page 915527 ....
   Dumping Page 915528 ....
   Error: BPS check read error for pool page 925608, from object ID 5, pool 5,
   Dumping Page 915529 ....
   Dumping Page 915530 ....
   Dumping Page 915531 ....
   Dumping Page 915532 ....
   Dumping Page 915533 ....
   Dumping Page 915534 ....


...
Рейтинг: 0 / 0
14.10.2014, 18:22
    #38776566
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи.
SQLMantis,

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


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