DB2V8にFixPakをあてたら自動起動しない設定になってしまったようなので、自動起動するように
いろいろ頑張ってみました。
■ 現象
DB2V8にFixPakをあてたらDB2が自動起動しない。手動でdb2 start database managerすればOK。
■ 対策
# db2iauto -on db2inst1
でOK(かも)。障害モニター関連でいろいろやってたら知らないうちに起動するようになった(;゚Д゚)
■ 補足・障害モニターについて
DB2には障害モニターというものがあり、DB2のインスタンスが不慮の事故で止まってしまったときに
復活させる機能をうけもっているらしい。設定をいろいろいじっていたものの結局
よく分からないまま。以下メモ
■ db2fmcd
db2fmcdは障害モニターdb2fmd(DBのインスタンスごとに一つ作られる)の調整を行うデーモン。
inittabで設定されシステム起動時に自動起動される。inittabに登録するには次のように実行する。
# /opt/IBM/db2/V8.1/bin/db2fmcu -u -p /opt/IBM/db2/V8.1/bin/db2fmcd
■ db2fmd
障害モニター本体。db2fmcdから起動される?db2fmコマンドで設定を変更することができる。例えばインスタンスdb2inst1の
現在の設定は、/home/db2inst1/sqllib/fm.dev.localdomain.regなどで確認できる(devはホスト名)。
FM_ON = no # updated by db2fm
FM_ACTIVE = yes # default
START_TIMEOUT = 60 # default
STOP_TIMEOUT = 60 # default
STATUS_TIMEOUT = 20 # default
STATUS_INTERVAL = 20 # default
RESTART_RETRIES = 3 # default
ACTION_RETRIES = 3 # default
NOTIFY_ADDRESS = db2inst1@dev.localdomain # default
DBのインスタンスの他に、DASのインスタンスも存在している。それは、/home/dasusr1/das/fm.dev.localdomainで確認できる。
FM_ON = yes # default
FM_ACTIVE = yes # default
START_TIMEOUT = 60 # default
STOP_TIMEOUT = 60 # default
STATUS_TIMEOUT = 20 # default
STATUS_INTERVAL = 20 # default
RESTART_RETRIES = 3 # default
ACTION_RETRIES = 3 # default
NOTIFY_ADDRESS = dasusr1@dev.localdomain # default
IBMによるとFM_ON=yesかつFM_ACTIVE=yesのときだけ障害モニターが自動起動するとのことなので、
上記設定ではdasの障害モニターだけしか自動起動してない(のか?)。
で、上記設定でもdb2inst1のインスタンスは自動起動してる。自動起動してないときは、
db2fmcdがrootとdasusr1の二つのユーザーで起動してたみたいだけどそのせい?
謎は深まる( ´ー`)フゥー...
■ 参考リンク