Club DB2ナイト・サークルに参加してきました。講師は生粋の(?)千葉っ子、高橋さん。

【管理ツール編】という募集だったのですが、実は【運用管理編】でした。

あまり詳しく知らないのに運用管理なんて・・・と思いましたが、勉強したことはたったの三つ。

・バックアップ(backup)
・表の再編成(reorg)
・統計情報の更新(runstats)

DB2の資格研修で勉強したことがあるのでおおよその動きを知っている言葉達だったので良かったです。

初っぱなに「ずきっ」と来た言葉。

『DB管理者の仕事で一番大切なのはバックアップです。で、RAIDはバックアップではありません。』

よ~く知っております。知っていますけどたぶんうちの現場では、外部ディスク装置を使い始めてからバックアップをとっていないのではないかなと思われます(災対機にデータを移行するためにダンプをとっていますが、それはバックアップに入るかしら?)。

バックアップの名称が少し気になりました。

通常、フルバックアップ(full backup)の後に差分バックアップ(incremental backup)と増分バックアップ(differential backup)を単独もしくは組み合わせで使うと思いますが、DB2ではここで言う差分バックアップを「デルタバックアップ(incremental delta)」と呼び、増分バックアップを「累積バックアップ(incremental)」と呼ぶんだそうです。

表の再編成はすぐにコマンドが出てくるくらい気になる作業です。たま~にこの言葉が聞こえてくるとうきうきしてきます。実作業を見たことはないんですが。

表の再編成には二種類あって、一つは、テーブルを一時領域にコピーし、再編成をしながら元の領域に戻していく「シャドー・コピー」。もう一つは、PCのデフラグのように空きスペースを少しずつ動かしながら行う「インプレース」。

統計情報の更新についてはかなり駆け足でしたが、DB2 9.1から自動runstatsはデフォルトONだそうです。

大規模DBなどにおいてアクセス・プランが変わってしまうのがいやであれば忘れずに自動化機能をOFFにするようにと注意がありました。"db2look -m"で統計情報のDDLをバックアップできるのでrunstatsする場合にはとっておくのも手だと言うことです。

大規模DBを触ったことがないのでイメージがつきませんが、アクセス・プランが変わることでどれくらいSQLのパフォーマンスが変わるのか体感してみたいです(そもそもここで言う大規模ってどのくらいのDBなのだろう?)。

この連休中にバックアップ・リストアくらいは試してみようかな。