Symfoware/RDBのセットアップ作業手順を示します。Symfoware ServerのWebAdmin、またはコマンドを使用して作業を進めてください。
Symfoware/RDBでは、SafeCLUSTERによるクラスタ構成としている場合に、データベース資源をローデバイスに配置することができます。
リポジトリを複数作成する場合
リポジトリごとに、以下の手順6、7を繰り返してください。複数のリポジトリで、同じリポジトリ用データベース接続ユーザを使用して運用するときは、手順6は不要です。手順7を繰り返してください。
データベース共用形態の環境を構築する場合
データベースを共用するため、以下の手順を1回のみ実施してください。詳細は、“6.1 データベース共用”を参照してください。
Interstage ディレクトリサービスで使用するRDBシステムをセットアップします。以下の条件を満たすように作成してください。
RDBシステム名を必ず指定してください。
RDBシステム名に使用できる文字は、先頭が英字で始まる半角英数字です。8文字以内で指定してください。
リモート接続で使用するポート番号を登録(例 2050)してください。
ローカル接続数((リポジトリからRDBへの最大コネクション数 + 1) × リポジトリ数以上)
ローカルのSymfoware/RDBに接続する場合に指定してください。
リモート接続数((リポジトリからRDBへの最大コネクション数 + 1) × リポジトリ数以上)
リモートのSymfoware/RDBに接続する場合に指定してください。(Symfoware/RDBから見ると、Interstage ディレクトリサービスがリモート接続するデータベースクライアントになります。)
データベース資源をローデバイスに配置する場合は、RDBディレクトリファイルをローデバイスに配置してください。
RDBシステムの作成の詳細は、Symfoware Serverのマニュアル“セットアップガイド”の“WebAdminによるSymfoware/RDBのセットアップ”、または“コマンドによるSymfoware/RDBのセットアップ”を参照してください。
リポジトリからRDBへの最大コネクション数は、リポジトリの作成時に合わせて設定します。詳細は、“リポジトリの作成”の“5.1.2 Symfoware/RDBを使用する場合”を参照してください。
アーカイブログの適用によるリカバリをする場合には、アーカイブログファイルを2個以上作成しておきます。
アーカイブログファイルの初期作成
アーカイブログファイルの初期作成は、rdblogコマンドの-Gオプション、および-aオプションで行います。
“3.1.1 Symfoware/RDBで使用する資源の見積もり”で、算出したアーカイブログファイルの容量を指定します。
アーカイブログファイルの追加
アーカイブログファイルの追加は、rdblogコマンドの-Uオプション、および-aオプションで行います。このとき、追加するアーカイブログファイルの大きさは指定できません。指定したローデバイスの大きさに関係なく、初期作成時の値が使用されます。
詳細は、Symfoware Serverのマニュアル“セットアップガイド”の“コマンドによるSymfoware/RDBのセットアップ”を参照してください。
監査ログ運用をする場合は、監査ログデータベースのセットアップをします。
以下の手順で監査ログデータベースのセットアップを行ってください。
ロググループ管理ファイルの作成
監査ログデータベースのログ管理ファイルの作成
監査ログデータベースのテンポラリログファイルの作成
監査ログデータベースの作成
監査ログの取得範囲の選択
ロググループ管理ファイルの作成
監査ログ運用を行うには監査ログデータベースのロググループを作成します。すでにスケーラブルログ運用を行っている場合、以下の作業は不要です。スケーラブルログ運用を行っていない場合、以下の作業を行ってロググループ管理ファイルを作成してください。
Symfoware/RDBが起動状態であれば、Symfoware/RDBを停止してください。
RDB構成パラメタファイルのRDBLOGGROUPMANAGEに、ロググループ管理ファイルの配置先のローデバイスまたはディレクトリの絶対パスを指定します。
RDB構成パラメタファイルの詳細は、Symfoware Serverのマニュアル“セットアップガイド”の“Symfoware/RDB運用パラメタの定義”を参照してください。
RDB構成パラメタファイルのRDBLOGGROUPMANAGEを指定した後、rdblogコマンドの-Mオプションでロググループ管理ファイルを作成します。
監査ログデータベースのログ管理ファイルの作成
監査ログデータベースのログ管理ファイルを作成します。ログ管理ファイルの作成は、rdblogコマンドの-Iオプションおよび-gオプションで行います。ロググループ名には“#RDBII_ADTLOG#”を指定してください。
監査ログデータベースのテンポラリログファイルの作成
監査ログデータベースのテンポラリログファイルの作成はrdblogコマンドの-Gオプション、-tオプションおよび-gオプションで行います。ロググループ名には、“#RDBII_ADTLOG#”を指定してください。
監査ログデータベースの作成
監査ログを取得するための監査ログデータベースを作成します。
監査ログデータベースの作成
監査ログデータベースの作成は、rdbauditコマンドの-cオプション、-nオプション、-sオプション、および-rオプション(または-fオプション)で行います。
Symfoware/RDBを起動してから、rdbauditコマンドを実行してください。
監査ログデータベースを1つのディスクに作成すると、監査ログデータベースにディスク入出力障害が発生した場合に監査ログ運用が続行できなくなります。このため、監査ログエレメントの追加操作により、あらかじめ複数のディスクに監査ログエレメントを分散配置することをお勧めします。
監査ログエレメントの追加
監査ログエレメントの追加は、rdbauditコマンドの-aオプション、-nオプション、-rオプションで行います。
監査ログの取得範囲の選択
監査ログの取得範囲や監査ログデータベースが満杯時の対処方法を、SET SYSTEM PARAMETER文でチューニングします。
AUDIT_SESSION_SUCCESS
接続に成功したアプリケーションの実行に関する監査ログを取得するかどうかを指定します。
AUDIT_SESSION_FAIL
接続に失敗したアプリケーションの実行に関する監査ログを取得するかどうかを指定します。
AUDIT_ACCESS_SUCCESS
表およびプロシジャルーチンなどの資源に対するアクセスで成功したものの監査ログを取得するかどうかを指定します。
AUDIT_ACCESS_FAIL
表およびプロシジャルーチンなどの資源に対するアクセスで失敗したものの監査ログを取得するかどうかを指定します。
AUDIT_MANAGE
管理者の実行に関する監査ログを取得するかどうかを指定します。
AUDIT_ERROR
システムにおける重大なエラー、その他の事象の監査ログを取得するかどうかを指定します。
AUDIT_LOG_FULL
監査ログデータベースが満杯時の対処方法を指定します。
詳細は、Symfoware Serverのマニュアル“セットアップガイド”の“コマンドによるSymfoware/RDBのセットアップ”を参照してください。
“3.1.4.1 RDBシステムのセットアップ”で作成したRDBシステムを、rdbstartコマンドで起動します。
RDBシステムの起動の詳細は、Symfoware Serverのマニュアル“セットアップガイド”の“Symfoware Serverの起動と停止”を参照してください。
Interstage ディレクトリサービスがSymfoware/RDBにアクセスする利用者を、リポジトリ用データベース接続ユーザといいます。システム管理者アカウント(Windows(R)の場合は「Administrator」、Solaris、およびLinuxの場合は「root」)とは別のユーザアカウントを使用することをお勧めします。
リポジトリ用データベース接続ユーザがデータベースにアクセスできるようにするためには、OSに対して、そのユーザアカウントを登録する必要があります。リポジトリ用データベース接続ユーザ名(スキーマ名)に使える文字は、先頭が英字で始まる半角英数字です。30文字以内で指定してください。
ユーザアカウントの登録方法は、OSのドキュメントを参照してください。
データベースを作成します。
Interstage ディレクトリサービスとSymfoware Serverを別々のマシンで運用する場合は、Symfoware Serverを運用するマシンで実施してください。
Symfoware ServerのWebDBtoolsの利用に関係なく作成できます。
WebDBtoolsを使用する場合は、Symfoware Serverのマニュアル“WebDBtoolsユーザーズガイド”を、WebDBtoolsを使用しない場合は、Symfoware Serverのマニュアル“RDB運用ガイド(データベース定義編)”を、それぞれ参照してください。
データベースの設計
データベース設計には、表の設計、属性の設計、および格納構造の設計があります。表、属性、および格納構造は、リポジトリに対して適切なものに設計されており、後述のリポジトリデータ格納用テーブル作成コマンドで、定義・設定します。
表の設計、および属性の設計では、以下の条件に該当する場合はテーブルの詳細設定を行う必要があります。“3.1.4.7 テーブルの詳細設定”を参照し、詳細定義ファイルを事前に作成してください。作成した詳細定義ファイルは、テーブルの作成時に指定します。
データベーススペースを複数使用する場合
属性値の最大長を変更する場合
(文字列型属性の最大長の初期値は942バイト、バイナリ型属性の最大長の初期値は32Kバイト)
1エントリあたりの属性数(objectClass属性を含む)が20個を超える場合
1エントリあたりのバイナリ型属性の合計サイズが2Kバイトを超える場合
リポジトリに登録する文字列型属性の平均サイズが200バイトを超える場合
1エントリあたりのバイナリ型属性の合計サイズが2Kバイトを超える場合
# 1つ目のエントリ dn: cn=User001,ou=User,ou=interstage,o=fujitsu,dc=com objectclass: top objectclass: person objectclass: organizationalPerson objectclass: inetOrgPerson cn: User001 sn: Fujitsu jpegPhoto:< file:///C:\data\photo1.jpg <- 2.5Kバイトのバイナリ jpegPhoto:< file:///C:\data\photo2.jpg <- 2.0Kバイトのバイナリ # 2つ目のエントリ dn: cn=User002,ou=User,ou=interstage,o=fujitsu,dc=com objectclass: top objectclass: person objectclass: organizationalPerson cn: User002 sn: Fujitsu |
# 1つ目のエントリ dn: cn=User001,ou=User,ou=interstage,o=fujitsu,dc=com objectclass: top objectclass: person objectclass: organizationalPerson objectclass: inetOrgPerson cn: User001 sn: Fujitsu jpegPhoto:< file:///data/photo1.jpg <- 2.5Kバイトのバイナリ jpegPhoto:< file:///data/photo2.jpg <- 2.0Kバイトのバイナリ # 2つ目のエントリ dn: cn=User002,ou=User,ou=interstage,o=fujitsu,dc=com objectclass: top objectclass: person objectclass: organizationalPerson cn: User002 sn: Fujitsu |
(a) 1つ目のエントリのバイナリ型属性の合計サイズ = 2.5K + 2.0K
= 4.5Kバイト
(b) 2つ目のエントリのバイナリ型属性の合計サイズ = 0バイト
(c) エントリ数 = 2
( (a) + (b) ) / (c) = 2.25Kバイト
上記の例の場合、1エントリあたりのバイナリ型属性の合計サイズが2Kバイトを超えるため、テーブルの詳細設定が必要になります。
リポジトリに登録する文字列型属性の平均サイズが200バイトを超える場合
# 1つ目のエントリ dn: cn=User001,ou=User,ou=interstage,o=fujitsu,dc=com <- 49バイト objectclass: top <- 3バイト objectclass: person <- 6バイト objectclass: organizationalPerson <- 20バイト cn: User001 <- 7バイト sn: Fujitsu <- 7バイト description:< file:///C:\data\sentence1.txt <- 1,500バイトのテキスト # 2つ目のエントリ dn: cn=User002,ou=User,ou=interstage,o=fujitsu,dc=com <- 49バイト objectclass: top <- 3バイト objectclass: person <- 6バイト objectclass: organizationalPerson <- 20バイト cn: User002 <- 7バイト sn: Fujitsu <- 7バイト description:< file:///C:\data\sentence2.txt <- 1,200バイトのテキスト |
# 1つ目のエントリ dn: cn=User001,ou=User,ou=interstage,o=fujitsu,dc=com <- 49バイト objectclass: top <- 3バイト objectclass: person <- 6バイト objectclass: organizationalPerson <- 20バイト cn: User001 <- 7バイト sn: Fujitsu <- 7バイト description:< file:///data/sentence1.txt <- 1,500バイトのテキスト # 2つ目のエントリ dn: cn=User002,ou=User,ou=interstage,o=fujitsu,dc=com <- 49バイト objectclass: top <- 3バイト objectclass: person <- 6バイト objectclass: organizationalPerson <- 20バイト cn: User002 <- 7バイト sn: Fujitsu <- 7バイト description:< file:///data/sentence2.txt <- 1,200バイトのテキスト |
(a) 1つ目のエントリの文字列型属性の合計サイズ
= 49 + 3 + 6 + 20 + 7 + 7 + 1,500
= 1,592バイト
(b) 2つ目のエントリの文字列型属性の合計サイズ
= 49 + 3 + 6 + 20 + 7 + 7 + 1,200
= 1,292バイト
(c) 1つ目のエントリの文字列型属性の合計数 = 7
(d) 2つ目のエントリの文字列型属性の合計数 = 7
( (a) + (b) ) / ( (c) + (d) ) = 206バイト
上記の例の場合、リポジトリに登録する文字列型属性の平均サイズが200バイトを超えるため、テーブルの詳細設定が必要になります。
格納構造の設計では、格納構造に応じたデータベーススペース量を見積もる必要があります。このデータベーススペース量は、リポジトリに格納するデータ量によって違いますので、“D.1.1 データベーススペースの見積もり”を参照して、見積もってください。
Symfoware Serverを運用するマシンに、ログイン
データベースの構築は、リポジトリ用データベース接続ユーザで実施する必要があります。
“3.1.4.5 リポジトリ用データベース接続ユーザの登録”で登録したOSアカウントでログインします。システム管理者アカウント(Windows(R)の場合は「Administrator」、Solaris、およびLinuxの場合は「root」)でデータベースに接続する運用の場合は、システム管理者アカウントでログインします。
ログインは、Symfoware Serverを運用するマシンのコンソール、またはコンソールセッションに接続したリモートデスクトップから行ってください。
データベース名の定義/登録
コマンド、またはWebDBtoolsを使用して、以下のSQLを実行します。
データベース名「DSDB」を定義するとき
CREATE DATABASE DSDB |
データベース名を定義/登録する際の、データベース名には、任意の名前を先頭が英字で始まる半角英数字8文字以内で指定してください。異常時に備えて、バックアップ・リストアできるように、データベース名を、ノートなどに記録して保存してください。
データベーススペースの定義/作成
コマンド、またはWebDBtoolsを使用して、以下のSQLを実行します。
なお、リポジトリデータ格納用テーブルの作成時に詳細設定を行わない場合は、データベーススペース名を定義/作成する際のデータベーススペース名には、「DSDBSPACE」を指定してください。
論理ドライブ名「SHD_RAW_DIR」のローデバイスにデータベーススペース「DSDBSPACE」を定義するとき
CREATE DBSPACE DSDBSPACE ALLOCATE RAWDEVICE \\.\SHD_RAW_DIR |
ローデバイス「/dev/raw/raw4」にデータベーススペース「DSDBSPACE」を定義するとき
CREATE DBSPACE DSDBSPACE ALLOCATE RAWDEVICE /dev/raw/raw4 |
異常時に備えて、バックアップ・リストアできるように、データベーススペース名(「DSDBSPACE」)を、ノートなどに記録して保存してください。
リポジトリデータ格納用テーブル作成コマンドの実行環境作成
以下のシステム構成の場合、リポジトリデータ格納用テーブル作成コマンドの実行環境を作成する必要があります。
Interstage ディレクトリサービスとSymfoware Serverを別々のマシンで運用する場合
Interstage ディレクトリサービスとSymfoware Serverを同一マシンで運用し、リポジトリ用データベース接続ユーザをシステム管理者以外にする場合
これらに該当しない(Interstage ディレクトリサービスとSymfoware Serverを同一マシンで運用し、リポジトリ用データベース接続ユーザをシステム管理者にする)場合は、本手順は不要ですので、次の手順6へ進んでください。
Interstage ディレクトリサービスを運用するマシンの、以下のディレクトリにコマンド環境を圧縮したファイルがありますので、そのコマンド実行環境の圧縮ファイルを、Symfoware Serverを運用するマシンへコピーしてください。
Interstage ディレクトリサービスをWindows(R)で運用する場合
C:\Interstage\IREP\bin\RDB\archive
Interstage ディレクトリサービスをSolaris、またはLinuxで運用する場合
/opt/FJSVirep/bin/RDB/archive
Symfoware Serverを | コマンド実行環境の圧縮ファイル |
---|---|
Windows(R) | DBCRT_Win.exe (自己解凍形式です。) |
Solaris | DBCRT_Sol.tar.gz |
RHEL-AS4(x86)/AS4(EM64T) | DBCRT_RHEL4.tar.gz |
RHEL-AS4(IPF) | DBCRT_RHEL4_IPF.tar.gz |
RHEL5(x86)/(Intel64) | DBCRT_RHEL5.tar.gz |
RHEL5(IPF) | DBCRT_RHEL5_IPF.tar.gz |
RHEL-AS4(x86)は、Red Hat Enterprise Linux AS (v.4 for x86) の略称です。
RHEL-AS4(EM64T)は、Red Hat Enterprise Linux AS (v.4 for EM64T) の略称です。
RHEL5(x86)は、Red Hat Enterprise Linux 5 (for x86)の略称です。
RHEL5(Intel64)は、Red Hat Enterprise Linux 5 (for Intel64)の略称です。
RHEL-AS4(IPF)は、Red Hat Enterprise Linux AS (v.4 for Itanium)の略称です。
RHEL5(IPF)は、Red Hat Enterprise Linux 5 (for Intel Itanium)の略称です。
コマンド環境のコピーは、以下の手順でします。
リポジトリ用データベース接続ユーザをシステム管理者以外にする場合
コマンド実行環境の圧縮ファイルをコピーします。
システム管理者に依頼し、使用するプラットフォームのコマンド実行環境の圧縮ファイルを任意の場所に展開、またはコピーします。Symfoware Serverを他のマシンで運用する場合は、そのマシンにコマンド実行環境の圧縮ファイルを転送します。
コピーしたコマンド実行環境の圧縮ファイルを展開します。
システム管理者がコピーしたコマンド実行環境の圧縮ファイルを展開します。
展開後のディレクトリの所有者を変更します。
リポジトリ用データベース接続ユーザがコマンドを実行できるように、展開後のディレクトリの所有者を変更します。
リポジトリ用データベース接続ユーザのIDをDSADMIN、リポジトリ用データベース接続ユーザのグループをDSGRP、ディレクトリ名をDBCRTとするとき
chown -R DSADMIN:DSGRP DBCRT |
コピーしたコマンド実行環境の圧縮ファイルを削除してください。
コマンド実行環境の圧縮ファイルをコピーまたは転送した場合、コピーまたは転送したコマンド実行環境の圧縮ファイルは必ず削除してください。
リポジトリ用データベース接続ユーザをシステム管理者にする場合
上述のコマンド実行環境の圧縮ファイルをSymfoware Serverを運用するマシンに転送します。
コマンド実行環境の圧縮ファイルを任意のディレクトリに展開します。
展開後、コマンド実行環境の圧縮ファイルを必ず削除してください。
テーブル作成コマンドの実行環境を、Interstage ディレクトリサービスを運用するマシンとは異なるWindows(R)のマシンにコピーして使用する場合は、以下のパッケージがインストールされている必要があります。インストールされていない場合は、Microsoftのホームページからダウンロードしてインストールしてください。
Microsoft Visual C++ 2005 再頒布可能パッケージ (x86)
リポジトリデータ格納用テーブルの作成
テーブル作成コマンド「irepgendb」を実行してテーブルを作成します。
テーブル作成コマンドを、Solarisのマシン上で実行する場合は、Solarisの以下のパッチが適用されていることを確認してください。
Solaris 9の場合
114224-05
Solaris 10の場合
118367-04
コマンドの実行方法を説明します。
コマンドが格納されているディレクトリへ移動します。
C:\Interstage\IREP\bin\RDB |
/opt/FJSVirep/bin/RDB |
Interstage ディレクトリサービスとSymfoware Serverを別々のマシンで運用する場合、またはリポジトリ用データベース接続ユーザをシステム管理者以外にする場合は、手順5のbでコマンドの実行環境を展開したディレクトリへ移動します。
コマンドの実行結果出力先ファイルの削除
コマンド実行結果は、以下のファイルに出力されます。
Interstage ディレクトリサービスとSymfoware Serverを別々のマシンで運用する、またはリポジトリ用データベース接続ユーザをシステム管理者以外にする場合
手順5のテーブル作成コマンドの実行環境作成で、Symfoware Serverを運用するマシンにコマンド環境を展開した場合は、以下の位置に、実行結果を出力します。
コマンドの実行環境を展開したディレクトリ/log/ds_gen.log |
Interstage ディレクトリサービスとSymfoware Serverを同じマシンで運用し、リポジトリ用データベース接続ユーザをシステム管理者にする場合
C:\Interstage\IREP\bin\RDB\log\ds_gen.log |
/opt/FJSVirep/bin/RDB/log/ds_gen.log |
コマンドの実行結果出力先ファイルには、リポジトリ用データベース接続ユーザアカウントの書き込み権が必要です。
以前に、他のユーザアカウントでテーブル作成コマンドを実行したことがあると、実行結果出力先ファイルのアクセス権に、リポジトリ用データベース接続ユーザアカウントの書き込み権がなくなっていますので、実行結果出力先ファイルを削除してください。このファイルが必要なら、システム管理者権限でファイル名を変更するなどして、退避してください。
irepgendbを実行します。
リポジトリ用データベース接続ユーザで、irepgendbを実行します。
irepgendb |
テーブル作成コマンドの詳細は、リファレンスマニュアル(コマンド編)の“Interstage ディレクトリサービス運用コマンド”を参照してください。
ターミナルサービスを使用してコマンドを実行している場合、以下のメッセージが出力される場合があります。
Symfoware Serverを運用するマシンのコンソール、またはコンソールセッションに接続したリモートデスクトップからコマンドを実行している場合は、y <RETURN>を入力して続行してください。
異なる環境から実行している場合は、n <RETURN>を入力してコマンドの実行を中止し、Symfoware Serverを運用するマシンのコンソール、またはコンソールセッションに接続したリモートデスクトップからログインしなおして、再度コマンドを実行してください。
ターミナルサービスでコマンドを実行している場合は注意が必要です。 |
使用するデータベースを選択します。
リポジトリで使用するデータベースの種類を選択します。「1」を指定してください。
使用するデータベースを選択してください [1:Symfoware, 2:Oracle] : 1 <RETURN> |
RDBシステム名の入力を促すメッセージが表示されます。
RDBシステム名<RETURN>を入力してください。RDBシステム名をつけない運用はできません。必ず入力してください。
RDBシステム名に使える文字は、先頭が英字で始まる半角英数字です。8文字以内で指定してください。
RDBシステム名を入力してください : DSDBSYS <RETURN> |
データベース名の入力を促すメッセージが表示されます。
データベース名<RETURN>を入力してください。
データベース名に使える文字は、先頭が英字で始まる半角英数字です。8文字以内で指定してください。
データベース名を入力してください : DSDB <RETURN> |
データベースのスキーマ名の入力を促すメッセージが表示されます。
スキーマ名<RETURN>を入力してください。
データベースを作成するときに指定したOSのアカウントと同じ名前のスキーマ名を入力してください。スキーマ名に使える文字は、先頭が英字で始まる半角英大文字、半角数字です。リポジトリ用データベース接続ユーザを、英小文字を使ってOSに登録した場合は、英小文字部分を英大文字に変えて、入力してください。30文字以内で指定してください。
スキーマ名を入力してください : DSADMIN <RETURN> |
テーブルの詳細設定を行うかを指定します。
テーブルの詳細設定を行う場合は、「y」を、行わない場合は「n」を指定してください。
テーブルの詳細設定、および詳細定義ファイルの詳細は、“3.1.4.7 テーブルの詳細設定”を参照してください。
テーブルの詳細設定を行いますか?[y,n] : y or n <RETURN> |
「y」(テーブルの詳細設定を行う)を指定した場合
テーブルの各資源のサイズを個々に設定する詳細定義ファイルを指定します。
リポジトリデータ格納用テーブルの定義ファイルを指定してください : ファイル名 <RETURN> |
「n」(テーブルの詳細設定を行わない)を指定した場合
リポジトリに登録する最大エントリ数を、10,000,000(1千万)件以内で指定します。
指定したエントリ数の格納に必要なディスクスペースが確保されていることを確認してください。必要なサイズの見積もりは、“付録D Symfoware/RDBの資源の見積もり”を参照してください。
リポジトリデータ格納用テーブルに登録する最大エントリ数を入力してください : 100000 <RETURN> |
テーブルの作成情報が表示されます。
表示された内容で作成する場合は、「y <RETURN>」を、入力内容を変更する場合は、「n <RETURN>」を、処理を中止する場合は、「q <RETURN>をそれぞれ入力してください。
リポジトリデータ格納用テーブルの作成情報 使用するデータベース :Symfoware RDBシステム名 :DSDBSYS データベース名 :DSDB スキーマ名 :DSADMIN 登録する最大エントリ数 :100000 テーブルの詳細設定 :しない ========================== 警告 ========================== = リポジトリデータ格納用テーブル作成には時間がかかります。 = = 作成が完了するまで、コマンドを強制停止しないでください。 = = 強制停止を行うとテーブル作成が不完全な状態となります。 = ============================================================ テーブルの作成を開始しますか? [y, n, q]:y or n or q <RETURN> |
コマンドの実行結果が、手順6のbで示したファイルに出力されます。実行結果は、Symfoware Serverをインストールしたときの文字コード系で出力されます。
実行に失敗した場合は、Symfoware Serverのメッセージ集を参照して、エラー要因を取り除いてください。エラーに対処したあと、データベースの作成からやり直してください。
テーブルおよびインデックスのDSIに対する自動容量拡張設定
Symfoware Server 9.1以降を使用する場合は、テーブル作成時に、DSIに対して自動容量拡張するように定義されています。
Symfoware Server 9.0以前を使用する場合は、テーブル作成時に、DSIの自動容量拡張は定義されていません。Symfoware Serverのrdbalmdsiコマンドを使って、自動容量拡張を設定することができます。
DSIに対して、自動容量拡張を設定する方法は、“10.7.3.2 データベースの容量拡張”の“■自動容量拡張の拡張契機と拡張量”を参照してください。
データベースのデータバックアップ
異常時に備えて、データベースのデータをバックアップしてください。詳細は、“運用ガイド(基本編)”の“メンテナンス(資源のバックアップ)”-“資源のバックアップとリストア”を参照してください。
テーブル作成コマンドの実行環境を展開した場合、データベース作成後にディレクトリを削除してください。
リポジトリデータ格納用テーブルの作成時に、“テーブルの詳細設定を行う”を選択してテーブルを作成することで、データベース上の各テーブルの割り当てサイズ、割り当てスペースや、文字列型・バイナリ型属性の最大長の拡張などを詳細に設定することができます。
テーブルの詳細設定は、Symfoware/RDBを使用している場合は“3.1.4.6 データベースの作成”、Oracleデータベースを使用している場合は“3.2.4 データベースの作成”の手順で新規にテーブルを作成するときにのみ設定できます。
なお、テーブルの詳細設定を行う場合は、データベースのインデックス機能が利用できませんので、リポジトリの運用性能は低下します。
テーブルの詳細設定を行う場合は、上記のような階層構造をもつ詳細定義ファイルを事前に準備する必要があります。このファイルに、データベース上の各テーブルの割り当てサイズ、割り当てスペースや、文字列型・バイナリ型属性の最大長の拡張などを定義します。
詳細定義ファイルに設定する値については、Symfoware/RDBを使用している場合は“D.1.1 データベーススペースの見積もり”を、Oracleデータベースを使用している場合は“E.1.1 表領域(TABLESPACE)の見積もり”をそれぞれ参照してください。
詳細定義ファイル
詳細定義ファイルは、テキストエディタを使って編集します。Interstage ディレクトリサービスでは、新しい詳細定義ファイルを記述するためのサンプルを提供します。このファイルを、テキストエディタを使って編集します。
次の位置にサンプルファイルがあります。
C:\Interstage\IREP\bin\RDB\sample\irepdb.conf |
/opt/FJSVirep/bin/RDB/sample/irepdb.conf |
ファイル形式
以下に、詳細定義ファイルの形式について説明します。
タグの値が指定されていないものは、エラーになります。
タグの名前は、大文字小文字を区別しません。
タグの階層位置が正しければ、タグの出現順番は関係ありません。階層位置を誤って記述したタグはエラーになります。
定義ファイルの記述に必要なタグ(以下で説明するタグ)以外が記述されていた場合、エラーになります。
Oracleデータベース使用時に、LOBテーブルの容量を詳細定義ファイルに指定する必要はありません。
[設定内容]
文字列型属性に登録する文字列の最大長を指定します。
[指定できる回数]
省略不可、1回
[設定内容]
バイナリ型属性に登録するバイナリデータの最大長を指定します。
Oracleデータベース使用時は、本タグは指定しないでください。
[指定できる回数]
省略不可、1回
[設定内容]
テーブル名を指定します。
[指定できる回数]
省略不可、DS_SCOPE | DS_FILTER | DS_ENTRY 各1回
[下位要素]
DBSPACE
[設定内容]
テーブルに割り当てるスペースの名前を指定します。
Symfoware/RDB使用時
データベーススペース名を指定してください。
Oracleデータベース使用時
表領域(TABLESPACE)名を指定してください。
[指定できる回数]
省略不可。
Symfoware/RDB使用時
1つのTABLEタグ内に最大10回まで指定できます。
Oracleデータベース使用時
各テーブルに指定できるタグ(DBSPACEタグを除く)の個数分を指定できます。
下記の表を参照。
テーブル名 | STRINGMAXを拡張 | |
---|---|---|
する | しない | |
DS_SCOPE | 4 | 6 |
DS_FILTER | 5 | 7 |
DS_ENTRY | 3 | 3 |
ただし、同一のテーブル・インデックスを複数のDBSPACEに指定することはできません。
[上位要素]
TABLE
[下位要素]
TABLE_SIZE、INDEX1_SIZE、INDEX2_SIZE、INDEX3_SIZE、INDEX4_SIZE、INDEX5_SIZE、INDEX6_SIZE
[設定内容]
テーブルの全体サイズを指定します。
[指定できる回数]
省略不可。
Symfoware/RDB使用時
TABLEタグ内に1回以上の指定ができます。ただし、1つのDBSPACEには1回だけ指定できます。
Oracleデータベース使用時
TABLEタグ内に1回だけ指定できます。
[上位要素]
DBSPACE
[設定内容]
テーブルのインデックスのサイズを指定します。
[指定できる回数]
Symfoware/RDB使用時
TABLEタグ内に1回以上の指定ができます。ただし、1つのDBSPACEには1回だけ指定できます。
Oracleデータベース使用時
TABLEタグ内に1回だけ指定できます。
[上位要素]
DBSPACE
INDEX1_SIZEと同じです。
INDEX1_SIZEと同じです。
INDEX1_SIZEと同じです。
INDEX1_SIZEと同じです。
INDEX1_SIZEと同じです。
各データ型の最大長は以下のとおりです。
項目 | Symfoware使用時 | Oracle使用時 | 備考 |
---|---|---|---|
文字列型の最大長 | 942~10000 バイト | 942~4000 バイト | テーブルの詳細設定を行わない場合は、942 バイトです。 |
バイナリ型の最大長 | 32K~16M | - | テーブルの詳細設定を行わない場合は、32Kです。 |
TABLE_SIZE | 64K~999999M | 64K~999999M | テーブルの詳細設定を行わない場合は、テーブル作成時の登録する最大エントリ数の指定により可変です。 |
INDEX1_SIZE | 64K~999999M | 64K~999999M | テーブルの詳細設定を行わない場合は、テーブル作成時の登録する最大エントリ数の指定により可変です。 |
STRINGMAXを除く各項目のサイズには、K(Kバイト)、M(Mバイト)を付加して指定できます。1Kバイトは1024バイト、1Mバイトは1024キロバイトです。
各テーブルに指定できるタグの関係は、以下のとおりです。
タグ名 | TABLEタグの指定値 | ||
---|---|---|---|
DS_SCOPE | DS_FILTER | DS_ENTRY | |
TABLE_SIZE | ○ | ○ | ○ |
INDEX1_SIZE | ○ | ○ | ○ |
INDEX2_SIZE | ○ | ○ | ○ |
INDEX3_SIZE | △ | △ | × |
INDEX4_SIZE | △ | ○ | × |
INDEX5_SIZE | ○ | △ | × |
INDEX6_SIZE | × | ○ | × |
○:必須、△:STRINGMAXを拡張する場合は指定不可、×:指定不要
以下に、詳細定義ファイルの定義例を示します。
以下の条件でのSymfoware/RDBを使用した場合の詳細定義ファイルの定義例
属性値の最大長は変更しない
データベーススペースはDSDBSPACEのみを使用
1リポジトリに登録するエントリ数を10,000
1エントリの属性数(objectClass属性を含む)の平均が30個
1エントリあたりのバイナリ型属性の合計サイズが2Kバイト
リポジトリに登録する文字列型属性の平均サイズが200バイト
<STRINGMAX> 942 </STRINGMAX> <BINARYMAX> 32K </BINARYMAX> <TABLE> DS_SCOPE <DBSPACE> DSDBSPACE <TABLE_SIZE> 6400K </TABLE_SIZE> <INDEX1_SIZE> 800K </INDEX1_SIZE> <INDEX2_SIZE> 1200K </INDEX2_SIZE> <INDEX3_SIZE> 5600K </INDEX3_SIZE> <INDEX4_SIZE> 5600K </INDEX4_SIZE> <INDEX5_SIZE> 800K </INDEX5_SIZE> </DBSPACE> </TABLE> <TABLE> DS_FILTER <DBSPACE> DSDBSPACE <TABLE_SIZE> 120M </TABLE_SIZE> <INDEX1_SIZE> 21M </INDEX1_SIZE> <INDEX2_SIZE> 53M </INDEX2_SIZE> <INDEX3_SIZE> 170M </INDEX3_SIZE> <INDEX4_SIZE> 39M </INDEX4_SIZE> <INDEX5_SIZE> 170M </INDEX5_SIZE> <INDEX6_SIZE> 39M </INDEX6_SIZE> </DBSPACE> </TABLE> <TABLE> DS_ENTRY <DBSPACE> DSDBSPACE <TABLE_SIZE> 147M </TABLE_SIZE> <INDEX1_SIZE> 22M </INDEX1_SIZE> <INDEX2_SIZE> 36M </INDEX2_SIZE> </DBSPACE> </TABLE> |
上記のようにテーブル毎に、テーブルの割り当てサイズや、インデックスの割り当てサイズを指定します。
上記の例を元に、DBSPACEを複数指定する場合の記述例を示します。
テーブルごとにDBSPACEを分割する場合
~ <TABLE> DS_SCOPE <DBSPACE> DSDBSPACE_1 <TABLE_SIZE> 6400K </TABLE_SIZE> <INDEX1_SIZE> 800K </INDEX1_SIZE> <INDEX2_SIZE> 1200K </INDEX2_SIZE> <INDEX3_SIZE> 5600K </INDEX3_SIZE> <INDEX4_SIZE> 5600K </INDEX4_SIZE> <INDEX5_SIZE> 800K </INDEX5_SIZE> </DBSPACE> </TABLE> <TABLE> DS_FILTER <DBSPACE> DSDBSPACE_2 <TABLE_SIZE> 120M </TABLE_SIZE> <INDEX1_SIZE> 21M </INDEX1_SIZE> <INDEX2_SIZE> 53M </INDEX2_SIZE> <INDEX3_SIZE> 170M </INDEX3_SIZE> <INDEX4_SIZE> 39M </INDEX4_SIZE> <INDEX5_SIZE> 170M </INDEX5_SIZE> <INDEX6_SIZE> 39M </INDEX6_SIZE> </DBSPACE> </TABLE> <TABLE> DS_ENTRY <DBSPACE> DSDBSPACE_3 <TABLE_SIZE> 147M </TABLE_SIZE> <INDEX1_SIZE> 22M </INDEX1_SIZE> <INDEX2_SIZE> 36M </INDEX2_SIZE> </DBSPACE> </TABLE> |
テーブルとインデックスを異なるDBSPACEに作成する場合
~ <TABLE> DS_SCOPE <DBSPACE> DSDBSPACE_TBL <TABLE_SIZE> 6400K </TABLE_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_IDX <INDEX1_SIZE> 800K </INDEX1_SIZE> <INDEX2_SIZE> 1200K </INDEX2_SIZE> <INDEX3_SIZE> 5600K </INDEX3_SIZE> <INDEX4_SIZE> 5600K </INDEX4_SIZE> <INDEX5_SIZE> 800K </INDEX5_SIZE> </DBSPACE> </TABLE> ~ |
テーブルとインデックスをすべて異なるDBSPACEに作成する場合
~ <TABLE> DS_FILTER <DBSPACE> DSDBSPACE_TBL <TABLE_SIZE> 120M </TABLE_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_IDX1 <INDEX1_SIZE> 21M </INDEX1_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_IDX2 <INDEX2_SIZE> 53M </INDEX2_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_IDX3 <INDEX3_SIZE> 170M </INDEX3_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_IDX4 <INDEX4_SIZE> 39M </INDEX4_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_IDX5 <INDEX5_SIZE> 170M </INDEX5_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_IDX6 <INDEX6_SIZE> 39M </INDEX6_SIZE> </DBSPACE> </TABLE> ~ |
テーブルを複数のDBSPACEに作成する場合(データベースがSymfoware/RDBの場合にだけ指定できます。)
~ <TABLE> DS_ENTRY <DBSPACE> DSDBSPACE_TBL1 <TABLE_SIZE> 100M </TABLE_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_TBL2 <TABLE_SIZE> 47M </TABLE_SIZE> </DBSPACE> <DBSPACE> DSDBSPACE_IDX <INDEX1_SIZE> 22M </INDEX1_SIZE> <INDEX2_SIZE> 36M </INDEX2_SIZE> </DBSPACE> </TABLE> ~ |
テーブルの作成中にエラーが発生した場合や、データベーススペースなどを変更する場合はSymfoware/RDBの機能でデータベースを削除してください。以下に削除方法の例を説明します。データベースの削除の詳細は、Symfoware Serverのマニュアル“RDB運用ガイド(データベース定義編)”を参照してください。
スキーマ配下の資源をすべて削除
コマンド、またはWebDBtoolsを使用して以下のSQLを実行します。
DROP SCHEMA DSADMIN CASCADE |
太字部分はデータベース作成時に指定したスキーマ名です。
データベーススペースの削除
コマンド、またはWebDBtoolsを使用して以下のSQLを実行します。
DROP DBSPACE DSDBSPACE |
太字部分はデータベース作成時に指定したデータベーススペース名です。
データベース名の削除
コマンド、またはWebDBtoolsを使用して以下のSQLを実行します。
DROP DATABASE DSDB |
太字部分はデータベース作成時に指定したデータベース名です。