DBMT – švýcarský nůž administrátora Domino serveru

S Dominem verze 9.0 přišla nová utilita nazvaná DBMT – DataBase Maintenance Tool. O její existenci, jak jsem s překvapením zjistil, neví mnoho i letitých administrátorů Domino serverů. Pojďme se podívat, co je tento nástroj zač a co se s ním dá a nedá provádět.

Co DMBT umí?

  • copy-style compact
  • inkrementální indexování pohledů
  • update a rebuild full-text indexů
  • správu složek
  • vyčištění „deletion stubů“
  • expiraci „soft deleted“ položek
  • aktualizaci seznamů „Unread Marks“
  • fixup (opravu) porušených databází

Proč DBMT vlastně použít?

  • nahrazuje Compact na NEsystémových databázích
  • není potom nutno spouštět Updall z NOTES.INI
  • v clusterovaném prostředí pracuje CLDBDIR.NSF a zajišťuje dostupnost alespoň 1 repliky databáze pro uživatele

DBMT neprovádí Compact na systémových databázích, ale provádí -updall a -fti operace!!!


Systémovými databázemi se myslí:

  • admin4.nsf
  • busytime.nsf
  • catalog.nsf
  • cldbdir.nsf
  • clubusy.nsf
  • daoscat.nsf
  • ddm.nsf
  • domlog.nsf
  • events4.nsf
  • log.nsf
  • lndfr.nsf
  • names.nsf
  • statrep.nsf
  • dbdirman.nsf
  • dircat.nsf
  • mtdata\mtsore.nsf

Naopak, k mailovým databázím vytvořeným ze šablon StdR7Mail,StdR8Mail,StdR85Mail nebo StdR9Mail se chová DBMT specificky a indexuje následující pohledy: ($Inbox), ($Drafts), ($Sent), ($All), ($RepeatLookup), ($ToDo), ($Calendar),
(Haiku_TOC), ($Alarms), (iNotes), ($Users), (iNotes_Contacts), ($ThreadsEmbed).

Pokud používáte upravené šablony (např. z OpenNTF), můžete si přidat pomocí parametru do NOTES.INI Domino serveru další šablony a specifické pohledy. Použijte tyto parametry:

DBMT_MailTemplate=templatename1,templatename2,templatename3

DBMT_TemplateName=ViewNameOrAlias1;ViewNameOrAlias2;…ViewNameOrAliasN

POZOR – parametry v NOTES.INI mají limit 128 znaků!!!!!

Jak vypadá výstup DBMT?
DBMT.Compact.Began 17.04.2017 11:21:12
DBMT.Compact.Finished 17.04.2017 11:21:34
DBMT.Compact.Successful 6
DBMT.Compact.Unsuccessful 2
DBMT.Compact.Unsuccessful.InUse 2
DBMT.Compact.Unsuccessful.TimeLimit 0
DBMT.Compact.BackLog 2
DBMT.Compact.Fixup 0
DBMT.Updall.Began 17.04.2017 11:21:12
DBMT.Updall.Finished 17.04.2017 11:21:13
DBMT.Updall.Processed 8

Pokud DMBT pouštíte jako naplánovanou úlohu z Program documentu v Domino Directory, můžete si vypsat výsledek posledního běhu příkazem:
show stat dbmt

Nakonec uvedeme syntaxi a přehled možných parametrů DBMT:

Parametr
-compactThreads<n>Počet vláken pro proces compactu , n je mezi 0 a 100 včetně.
-updallThreads<m>Počet vláken pro proces Updall, m je mezi 0 a 100 včetně.
-ftiNdays<f>Rebuild full-text indexů každých f dní od vytvoření.
-ftiThreads<g>Počet vláken pro proces rebuldu ft indexů, g je mezi 0 a 100 včetně.
-force-compactNdays<n>Pro fixup&compact odství databáze offline. n znamená den v týdnu, kdy tak bude provedeno (1 = neděle, 2 = pondělí,…). 0 znamená kterýkoliv den bude BDMT spuštěn.
-compactNdays<p>Provede compact databází, kde nebyl proveden posledních p dní.
-timeLimit<g>Compact bdue ukončen po q minutách, pokud nedoběhl.
-range<s> <e>Spustí se pouze mezi časy a , kdy rozdíl musí být min. 10 minut.
Čas musí být specifikován ve 12-ihodinovém formátu s AM/PM specifikací dopoledne/odpoledne např. 11:50PM).
-stoptime<e>Pouze sběhne JEDNOU odteď do času .
-noCompactLimitAktuální compact doběhne bez ohledu na časový limit, ale další se nespustí.

POZOR – Při použití DBMT na mailové databáze v případě, že router potřebuje do db doručit mail, proces compactu se přeruší. Příští běh DBMT bude pokračovat tam, kde přestal (na rozdíl do standardní úlohy Compact).
Tomuto chování lze zabránit parametrem do NOTES.INI, kdy Router počká, dokud DBMT předmětnou databázi „nepustí“.

MailFileDisableCompactAbort=1

load DBMT <One database, one folder (recurses), one IND file or ommited (all, recurses)> <Options(s)>