レベル: 初級 下佐粉 昭, ソフトウェア事業部, IBM
2006年 8月 10日 このドキュメントではDB2 9 Express-C for Windows(以下DB2 Express-C)をインストールする方法をご紹介します。
※2007年10月31日に公開された「DB2 Express-C 9.5 for Windowsのインストール手順」はこちらからご覧いただけます。
DB2 Express-Cとは?:
DB2 Express-Cは、無料で使用できるDB2の新しいエディションです。Linux版,Windows版が用意されています。DB2 Express-Cには使用期限やデータベースサイズの制限がありません。IBMからのサポートが無い以外はDB2 Expressとほぼ同じ機能を誇ります。DB2 Express-Cは米IBMのサイトからダウンロードする事ができます。ダウンロードの際には、簡単なID登録(IBM IDの取得)が必要になります。
1.はじめに
DB2 9 Express-C for Windows(以下DB2 Express-C)は、2006年7月に公開された、無料版DB2の最新バージョンです。
DB2 9 Express-Cは、DB2 9 Expressとほぼ同じ機能を持っていますが、無料で使用することができます(IBMからのサポートはありませんが、WEBのフォーラムでQ&Aを行っています)。このドキュメントではDB2 9 Express-Cfor Windowsのインストール方法を詳細に解説します。
DB2 Express-Cには以下のような制限がありますが、制限は少なめです。メモリの上限は大きめで、DBサイズの制限もありません。
| 最大プロセッサ数 | 2 |
|---|
| 最大使用可能メモリ | 4GB |
|---|
| 最大DBサイズ |
制限無し
|
|---|
| 搭載されるオプション機能 | pureXML |
|---|
また、DB2 9の主な特徴として挙げられるのがXMLネイティブ対応の”pureXML”や、メモリ管の自動調整機能”STMM”ですが、そのどちらもDB2 9 Express-Cに搭載されています。この他、DB2 9の新機能については以下の記事を参照してください。
「DB2 デベロッパー・ドメイン V9技術情報」
最新の機能を持つデータベースを、ぜひ試してみてください。
2.インストールの前提条件
DB2 9 for WindowsがサポートするWindows OSは以下に記述されています。
「DB2 9 System requirements」
正確なサポート範囲は上記ドキュメントに譲りますが、Windows 2003,XPからVMware,Virtual PCまで主要な環境をサポートしています。通常のExpress EditionはXP Homeでは動作しませんが(XP Professionalには対応しています)、Express-CではWindows XP Home専用(Experimental)の別イメージが用意されています。Experimental=実験用という言葉の通り、まだ実験的なバージョンですが、XP Homeに導入可能です。XP Homeをお使いの方は以下のURLからダウンロードしてご利用ください。
https://www14.software.ibm.com/webapp/iwm/web/reg/download.do?source=dm-db2express&S_PKG=winxpv9
このドキュメントで使用したDB2とWindowsは以下の通りです。
- DB2 9 Express-C (Windows 32Bit)
- Windows 2003 Server
3.DB2 9 Express-Cのダウンロード
DB2 9 Express-Cは以下のURLよりダウンロードが可能です。
http://www.ibm.com/software/data/db2/express/download.html
DB2 Express-Cは、多数のOS用のイメージが用意されています。ここではWindows x86 (32-bit)版をダウンロードします。下記の丸印のリンクをクリックしてダウンロードしてください。
ダウンロードにはIBM IDの登録が必要です。
サインインし、使用同意書に同意すると上記画面になります。ここではダウンロードの方法として、ダウンロード・ディレクターを使用した高速なダウンロード方法と、一般的なhttp経由でのダウンロードが選択できます。
通常はダウンロード・ディレクターを使用します。チェックボックスにチェックを入れて、一番下の「ダウンロード」をクリックします。
Javaアプレットが使用できないなどダウンロード・ディレクターが使用できない環境では”download using http”のリンクからダウンロードしてください。
4.DB2 9 Express-Cのインストール
ここでは、DB2 9 Express-C for Windows(以下DB2)のインストール方法を解説します。まず管理ユーザ(Administrator)でログインして、さきほどダウンロードしたDB2のZIPファイルを任意のディレクトリに展開します。
展開した先にsetup.exeというファイルがありますので、それをエクスプローラ等から実行する事でインストーラーが起動します。
これから具体的なインストール方法を解説しますが、これはDB2インストール方法の一例ですので、他の選択肢を選んでインストールしていただいても問題ありません。
上記画面で、「製品のインストール」を選択します。
上記画面で、「新規インストール」ボタンをクリックすると、インストーラーが起動します。
注) OSの標準ブラウザが、Internet Explorerであれば問題ありませんが、別のブラウザが標準になっていると、上記のボタンを押してもインストーラーが起動しない場合があります。その場合は一時的にInternet Explorerを標準のブラウザに変更して実行してください。
この画面が表示されたら「次へ」をクリックします。ただし、インストーラーの内部処理で圧縮ファイルの展開作業を行っているため、システムによっては「次へ」ボタンが有効になるまでに少し時間が掛かる場合があります。
DB2をインストールする前に、最低でも以下の事を計画しておく必要があります。
- DB2の管理ユーザ名(デフォルトでは、db2admin)
- インスタンスのTCP/IPポート番号(デフォルトでは、50000番)
DB2のサーバ機能は、Windows上のサービスとして起動します。その起動には、上記の「DB2の管理ユーザ」が使用されます。
また、DB2 ではインスタンスが外部(クライアント)からの接続を受け付けるために、1インスタンス毎に一つ、現在使用していないポート番号が必要になります。
DB2ライセンス情報の確認です。内容を確認して同意できたら「使用条件の条項に同意します」をチェックして、「次へ」をクリックします。
インストール・タイプを選択します。「カスタム」を選択すると導入するコンポーネントを細かく選択できます。「標準」を選ぶと標準的なコンポーネントが選択され、またインストール時の質問項目の多くが自動的に決定されるため、質問項目が少なくなります。
多くの場合、「標準」のままで問題ありません。ここでは「標準」を選択したまま「次へ」をクリックします。
ここでは応答ファイル(レスポンスファイル)を作成するかどうかを設定します。応答ファイルは、インストール時に選択した内容を記録しておくファイルで、同じ内容で次回インストールする際にそのファイルを使用するとインストール作業を自動化できるというものです。
「応答ファイルに保管する」を選択したまま「次へ」をクリックします。
ここではDB2を導入するディレクトリを選択します。デフォルトでは\Program Files\から始まるディレクトリ名に設定されていますが、これを上記のように途中に空白を含まないディレクトリ名に変更する事を推奨します。
これは、空白を含むディレクトリ名以下にインストールした場合に、外部のツールがうまく動作しなくなる可能性を回避するためです。(DB2は空白を含むディレクトリに導入しても問題なく動作します)
DB2の管理ユーザについての設定です。ここではユーザ名をデフォルトのdb2adminとしています。また、Windowsのドメインを利用して認証する場合はここで選択できます。
下部の「同じユーザ名とパスワードを残りのDB2サービスで使用する」は通常チェックを入れておいて問題ありませんが、何かの事情でDB2のサービス毎にユーザを変えたい場合はチェックを外してください。
ここでは、インスタンスの構成を変更できます。主に、使用するTCP/IPのポートと、システム起動時に自動起動するかどうかを設定します。
DB2 for Windowsでは“DB2”という名前のインスタンスが自動的に作成されます。インストール時には一つのインスタンスしか作成されませんが、DB2は複数のインスタンスを作成可能です。インスタンスを追加するには導入後にdb2icrtコマンドを使用します。
”DB2”インスタンスの構成を確認するため、”DB2”を選択して「構成」のボタンをクリックします。
「構成」を選択すると上記ダイアログが出ますので、TCP/IPタブの構成を選択し、あらかじめ決めておいたTCP/IPのポート番号を入力します。前述のように他のサービスで使用していないポート番号を指定する必要があります。使用されているサービスは、Windows\system32\drivers\etc以下にある、servicesファイルを見ることで確認できます。
また、このダイアログで指定したサービス名もservicesファイルに記述されます。任意の名前を付けることが出来ますが、DB2のサービスである事が分かる名前にする事を推奨します。設定したら次は「スタートアップ」タブを選択します。
「スタートアップ」タブを選択すると上記画面が表示されます。
「システム始動時にインスタンスを自動開始します」にチェックを付けておくと、OS起動時に自動的にインスタンスが起動するようになります。(OS起動後にdb2startコマンドを実行するのと同じです)
DB2のインスタンスはWindowsのサービスとして登録されますので、インストール後にインスタンスの自動起動を変更したい場合は、Windowsの「管理ツール→サービス」によって設定できます。
設定したら、「OK」をクリックして前の画面に戻り、「次へ」をクリックします。
全て入力が完了すると、サマリーが表示されます。「DB2 コピー名:」というところにDB2COPY1という名前が設定されていることが確認できます。DB2 9から複数のバージョンのDB2を一つのマシンに導入できるようになりました。そのため、複数のDB2を区別するために、インストール毎に「コピー名」という名前が設定されるようになりました。(カスタムでインストールした場合は自由な名前に設定できます)
その他、設定内容に間違いが無いことを確認して「完了」をクリックします。後は自動的にDB2のインストールが行われます。
インストールが終了すると上記のような完了の画面が表示されます。
これでDB2のインストールは完了です。「完了」をクリックしてインストールを完了します。環境によっては再起動が要求されますので、その場合はOSを再起動してください。
Visual Studio 2005(Express以外)が導入されている環境の場合は、一番下のチェックボックスをチェックしておくと、自動的にVisual StudioへDB2のアドインソフトが登録されます。
5.インストール後の確認
インストール後に、動作を確認します。まず、Administratorでのログインをログオフし、DB2管理ユーザ(db2admin)で再度ログインします。もしくはインストール後に再起動した場合は、db2adminでログインします。
ログインをすると以下のような「ファースト・ステップ」ダイアログが表示されます。(導入時の選択によっては出ない場合もあります。その場合はスタートメニューから起動します)
ここでは、このダイアログからサンプルデータベースを作成します。左のメニューから「データベース作成」をクリックします。
この画面になりますので、「SAMPLEデータベースの作成」をクリックします。
上記ダイアログが表示されますので、「XMLおよびSQLのオブジェクトとデータ」にチェックを入れて、「OK」をクリックします。少し時間がかかりますが、「完了」のダイアログが出ると作成終了です。作成が完了すると、C:\直下に、インスタンス名のディレクトリが作成され(C:\DB2)、その中にサンプルデータベースがSAMPLEという名前で作成されます。
次にコマンドプロンプトからSAMPLEデータベースに接続してみます。スタートメニューから「IBM DB2 →DB2COPY1(デフォルト)→コマンド行ツール→コマンド・ウィンドウ」と選択しコマンド・ウィンドウを起動します。DB2のコマンドはこのウィンドウで実行します。
まずdb2levelコマンドを実行してDB2のバージョンを確認してください。画面にDB2のバージョン番号や導入先ディレクトリが表示されるはずです。
次にコマンド・ウィンドウ上で以下のように入力し、SAMPLEデータベースに接続してみます。
C:\SQLLIB\BIN> db2 connect to sample (データベースに接続)
C:\SQLLIB\BIN> db2 list tables (表の一覧を表示)
C:\SQLLIB\BIN> db2 “select * from staff “ (SQLを実行)
C:\SQLLIB\BIN> db2 terminate (接続解除)
|
また、db2ccコマンドを実行するか、スタートメニューから「IBM DB2 →DB2COPY1(デフォルト)→汎用管理ツール→コントロール・センター」を選択することで、GUIのコントロール・センターを起動してデータベースの内容を確認する事もできます。
データベースに接続し、データベースの内容が確認できたら確認は終了です。
6.よくある質問と答え(FAQ)
[Q] db2adminのパスワードを変えると、DB2が起動しなくなりました
[A] サービスのパスワードを入力しなおします。
DB2 for Windowsは、DB2関連のサービスをdb2adminユーザで起動しているため、db2adminユーザのパスワードを変更した場合、各サービスのプロパティにあるログオンタブを選択し、パスワードを新しいものに設定しなおす必要があります。
[Q] ドキュメントや情報はどこにあるのですか?
[A] インターネット上で閲覧可能です。
インターネット上でも最新のマニュアルを確認できます。
http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp
PDF版のマニュアルは、以下のURLから検索して各国語版のマニュアルをダウンロードできます。
http://www-306.ibm.com/software/data/db2/udb/support/manualsNLVv9.html
またDB2を購入した場合は「インフォメーション・センター」のCDが付属しますので、そのCDから導入することでローカルにドキュメントを導入できます。
マニュアル以外の情報は、以下のホームページより御覧頂けます。
DB2 Developer Domain JP
このほかにIBM製品全般についてのよくある質問が以下のURLにまとめられています。
IBM製品よくある質問
[Q] 新しいDB2インスタンスを追加するには?
[A] db2icrtコマンドを使用します。
DB2インスタンスを追加するには、db2icrtを使用します。こちらの解説を参照してください。
[Q] 他のマシン(クライアントマシン)からリモートのDB2に接続するには?
[A] ランタイム・クライアントを導入後、接続先のサーバを設定します。
他マシンからDBサーバに接続するには、DB2のクライアント環境が導入されている必要があります。DB2のクライアント環境は以下のパッケージに含まれていますので、このうちのどれかを導入する必要があります。
- DB2 ランタイム・クライアント (DB2 Runtime Client)
- DB2 クライアント (DB2 Client)
数字の大きい物は小さい物の機能を兼ねるので、良く分からない場合は 2 を導入します。DB2クライアントは以下のURLからダウンロード可能です。
http://www-306.ibm.com/software/data/db2/udb/support/downloadv9.html
導入時にクライアント側には接続用のインスタンス・ユーザが作成されます。クライアント環境を導入できたら、次にDBサーバ上のDBをクライアント側に登録する必要があります。
-
まず、接続したいDBを提供しているインスタンスのTCPサービス名をDBサーバ上で確認します。DBサーバにインスタンスオーナーでLoginして、db2 get dbm config コマンドを実行します。インスタンスに関する情報が出力されますが、その中の
TCP/IP サービス名(SVCENAME) = db2cdb2inst1
の行を記録しておいてください。そして、そのサービス名と対になっている(同じ行に書かれている)TCP/IPのポート番号をサーバ上の/etc/services(Windowsの場合は、Windows\SYSTEM32\Drivers\etc\services)から見つけてください。
-
インスタンスユーザでクライアントマシンにLoginします(Windowsの場合は、DB2コマンドプロンプトを起動する)。
-
DBサーバを新しいノード として登録する。
-
ノード(DBサーバ)上のDBを登録する。
上記登録が終了すると、別名を指定する事でDBサーバ上のDBに接続する事が出来ます。
また、上記のコマンドラインからの方法以外にも、GUIの「構成アシスタント」を起動する事で、GUI上で設定を行う事ができます。
1構成アシスタント
[Q] パッチ(修正ファイル)はどこで入手できますか?
[A] IBMのFTPサイトより、入手できます。
DB2用の修正ファイルは、Fixpakという名前で約3ヶ月毎にIBMの公開FTPサーバ上に置かれます。詳細は以下のページを参照してください。
http://www-306.ibm.com/software/data/db2/udb/support/downloadv9.html
Fixpakの適用方法は、Fixpakのアーカイブ内 doc/jp/FixpakReadme.txtに日本語のマニュアルがありますので、そちらを参照してください。
[Q] SQL****Nというエラー文が表示されました。どういう意味ですか?
[A] メッセージ・リファレンス第2巻を調べてください。
SQLから始まる文字列は、SQLCODEというDB2でのエラー内容を表した値です。この値の意味を調べるには、DB2のPDFドキュメントの「メッセージ・リファレンス第2巻」を見るか、DB2インフォメーション・センターから「参照情報」→「メッセージ」→「SQL」を参照してください。
またDB2コマンド・ウィンドウでdb2 ? SQLCODEと入力する事で、簡易な解説を得る事ができます。
> db2 "? SQL0204N"
[Q] 操作するインスタンスを切り替えるには?
[A] DB2INSTANCE環境変数を設定してください
DB2 for Windowsでは、操作するインスタンスは環境変数DB2INSTANCEの値で決定されるため、他のインスタンスに切り替えるにはDB2INSTANCEを変更します。
> set DB2INSTANCE=DB2CTLSV
また、システム起動時のデフォルトインスタンスを設定したい場合は、DB2のレジストリ変数DB2INSTDEFに値を設定します
> db2set DB2INSTDEF=DB2CTLSV
[Q] コマンドプロンプトからDB2のコマンドを実行すると、「DB21061Eコマンド行環境は初期化されていません。」が表示されます。
[A] DB2のコマンド(db2 connect 等)は、DB2コマンド・ウィンドウから実行します。
コマンドプロンプト(MS-DOSプロンプト)から直接db2 connectなどと実行すると、「DB21061Eコマンド行環境は初期化されていません。」というエラーが表示されます。これはDB2コマンドの実行に必要な環境が初期化されていないためです。DB2コマンドの実行は、スタートメニューから「IBM DB2」→「DB2COPY1」→「コマンド行ツール」内にあるコマンド・ウィンドウなどから実行する必要があります。
もしくは、MS-DOSプロンプトからdb2cmdコマンドを実行すると出てくるプロンプトでも同様にDB2コマンドの実行が可能です。
参考文献
著者について  | |  | 下佐粉 昭はDB2に関して6年の幅広い知識と経験を有する日本アイ・ビー・エムの社員です。彼は書籍「DB2 逆引きリファレンス」の共著者でもあります。彼の旺盛な好奇心はDB2に留まらず、Javaやオープン・テクノロジーでも幅広い活躍をしています。現在はソフトウエア事業に所属し、ビジネス・パートナー様の技術支援の仕事に従事しています。休日は各地の温泉に行く事を趣味にしています。
|
記事の評価
|