*目次 [#jf7054eb]
#contents

*関連情報 [#yb011055]
-[[DB2 Express-C]]
-[[db2cmd]]
*運用 [#a56b3128]
**データベース [#uf27faad]
***リモートデータベースのカタログ [#a343dd67]
別のマシンのdb2を利用するためには、データベースをカタログする必要がある。以下では、devというマシンにdevnというノード名をつけ、dev上のデータベース utf8を参照可能に設定している。
#pre{{
 D:\>db2cmd db2 catalog tcpip node devn remote dev server 50000;
 D:\>db2cmd db2 catalog db utf8 at node devn;
}}
-[[./運用]]

***ローカルデータベースの再カタログ [#z72c87fa]
-参考: [[ローカルに存在するDBをカタログする | Unofficial DB2 BLOG:http://db2.jugem.cc/?eid=181]]

DB2をバージョンアップした場合ローカルに存在するデータベースを再カタログすればそのまま使うことができる。C:\DB2\NODE0000の下にデータベースフォルダが存在するのでその名前を使えば良い。
 db2cmd db2 catalog database sampledb

フォルダ指定は特になくても大丈夫だった
**テーブル [#ma49d0ec]
***列を追加する [#gacfbeb9]
ALTER TABLEを使う
 ALTER TABLE テーブル名 ADD COLUMN 列の定義
Integer型の列を追加する場合
 ALTER TABLE person ADD COLUMN age Integer


**環境 [#j1989457]
***レジストリ変数を表示する [#l653b944]
Windowsでは次のように実行する
 db2cmd db2set -all

***クライアント環境のコードページを指定する [#s89e2126]
UTF-8のCSVファイルデータをインポートするときに、コードページを指定しないとエラーになることがある(特にWindows環境)。そのような場合クライアントのコードページ(文字コード)を指定する。

UTF-8を設定する場合次のように実行する。
 db2cmd db2set DB2CODEPAGE=1208
*トラブルシューティング [#p6354b5f]
**DB2が自動起動しない [#q863f1a5]
-DB2 Express-C 9.7 for Windows。
-タスクトレイのアイコンの左下に赤い四角マークが表示され自動起動しない場合がある(つまりDB2が起動してない)。
-原因は不明だが起動プロセスのどこかで時間がかかりすぎタイムアウトしているらしい?。
-とりあえず管理者権限でコマンドプロンプトを起動し、db2startで開始できる。PC再起動でもいけるかも。
-[[IBM DB2 9.7 for Linux, UNIX and Windows Information Center:http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.admin.config.doc/doc/r0000378.html]]にかかれているstart_stop_timeを変更?
-db2cmd db2 get database manager configurationで表示できる(デフォルト10分)
-db2 update dbm cfg using START_STOP_TIME 20 で20分に変更できる。


**CREATE TABLEで失敗する [#a9a1cbe3]
-CREATE TABLEででかいテーブルを生成しようとするとエラーが発生
#pre{{
DB21034E   コマンドが、有効なコマンド行プロセッサー・コ
マンドでないため、 SQL
ステートメントとして処理されました。 SQL
処理中に、そのコマンドが返されました。
SQL0286N  許可 ID "DB2INST1"
が使用を許可されている少なくとも "8192"
のページ・サイズを持つデフォルトの表スペースが検出され
ませんでした。  SQLSTATE=42727
}}

&tag(DB2);


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS