NMDA: Резервні копії знімків IBM DB2 не реагують
Summary: NetWorker Module for Databases and Applications (NMDA) Резервні копії знімків IBM DB2 не відповідають.
Symptoms
Резервні копії знімків NMDA IBM DB2 не реагують.
База даних DB2 працює в режимі write, suspend.
Помилка в db2diag.log
Warning: ---------------------------------------- 2016-05-20-15.05.16.771114+000 E7423877A808 LEVEL: Warning PID : 7733668 TID : 47390 PROC : db2sysc 0 INSTANCE: <instance_name> NODE : 000 DB : APPHDL : 0-57647 APPID: <app_id> AUTHID : EDUID : 47390 EDUNAME: db2agent (instance) 0 FUNCTION: DB2 UDB, database monitor, sqm___sqlmonssagnt, probe:1234 DATA #1 : <preformatted> This occurs when any snapshot other than list applications is attempted on a database that is write suspended. This is necessary due to latching conflicts. This database is skipped in the snapshot, but other databases should still be processed. Skipping database '<db_name>'. For more information on write suspend, please see the 'db2 set write suspend for database' command. ------------------------------------------
Cause
Робочий процес DB2 працює як:
DB2 виклики db2ACSPrepare() у бібліотеці NMDA DB2 для початкової підготовки до апаратного знімка. Після цього менеджер бази даних DB2 призупиняє роботу бази даних і викликає функцію NMDA DB2 db2ACSSnapshot(). У цьому випадку DB2 не викликає db2ACSSnapshot(). Робочий процес перестає реагувати, щоб рушій DB2 продовжив резервне копіювання. Підтримка IBM PMR: Відкрито 29538 004 000. Інженерії IBM DB2 потрібно більше налагодження, щоб визначити корінну причину цього зависання.
Resolution
Обхідний шлях:
- Скасувати поточне резервне копіювання
- Виведіть базу даних з режиму призупинення запису
Щоб виявити корінну причину, служба підтримки IBM DB2 запитують відповідну інформацію для подальшого розслідування,
- Видаліть або перемістіть будь-які стеки чи дампи в каталозі db2dump. Він створює нові стеки або дампи без змішування старих. (Шлях UNIX/Linux:
/$INSTHOME/sqllib/db2dump) - Трасування DB2 на короткий час:
db2trc on -f trace.dmp wait about 30 seconds db2trc off db2trc fmt trace.dmp trace.fmt db2trc flw trace.dmp trace.flw
- Збирайте стеки:
db2pd -stack all -rep 5 5
- Після завершення вищезазначеного кроку запускайте,
procstack <PID> > db2vend.pstack.out
<PID> — це ідентифікатор процесуdb2vendПроцес для бази даних. - Потім отримайте сесію резервного копіювання знімків,
db2 get snapshot for applications on <dbname> > db2snap.out
- Тепер можна налаштувати написати резюме, а потім спробувати зробити резервне копіювання знімка ще раз і подивитися, чи закінчиться робота.
- Зберіть db2support.zip так:
db2support . -d <dbname> -c -s
- Зареєструйте і надішліть на IBM PMR:
trace.dmptrace.fmttrace.flwdb2vend.pstack.outdb2snap.outdb2support.zip