DB2の場合Oracleと比べれば事前準備はまったく持って不要。依存するライブラリもデスクトップ構成で入れていればほぼ入っている。GUIインストールするにはXが必要だが、応答ファイルを利用したCUIインストールも可能。一度GUIインストールすると応答ファイルを残すことができるのでそれを参考にするといい。
サーバー名(IP)とDB名を指定すればOKなオープンソース系DBと違ってとてもわかりにくい。まずノードというものにサーバーを結びつける。そのノードにインスタンスを結びつける。インスタンスは複数のデーターベースを保持できるのでこれまたややこしい。
接続 | db2 connect to DB接続先 user ユーザー名 using パスワード |
切断 | db2 connect reset |
テーブル一覧 | db2 list tables |
SQL実行 | db2 "SQL" |
外部SQLファイル実行 | db2 -tvf ファイル名 |
現在のコマンドラインオプション状況 | db2 list command options |
IMPORT FROM "インポート対象.csv" OF DEL REPLACE INTO インポート対象テーブル;
主キーがかぶったときに置き換えるのがREPLACE。主キーがかぶっても置き換えないのであればINSERTにする。
db2 "get database configuration for インスタンス名"
db2 "UPDATE DB CFG FOR データベース名 USING パラメータ名 パラメータ値"
describe table テーブル名
DB2はコストベースのオプティマイザしかないので統計情報が古いと効率の悪いアクセスプランを選択してしまう。定期的にrunstatsして統計情報を更新すること。
db2advis -d データベース名 -i SQLファイル
画面に入りきらないほど出てくる場合は出力をファイルにリダイレクトすること
少なくとも日本においてはOracleと違って圧倒的に情報が少ないので貴重な存在。