PowerGres

技術情報 | PowerGres体験記 | サイレントインストール機能のご紹介

このページに記載の情報は、2005 年にリリースした PowerGres Plus V2 を対象としています。PowerGres Plus V2 の販売はすでに終了しています。

PowerGres Plus の最新バージョンに関する情報は、製品紹介ページまたは PowerGres 体験記ページを参照してください。

サイレントインストール機能のご紹介 『インストールからセットアップまで簡単システム構築』

はじめに

今日、データベースは様々なアプリケーションソフトと連携し、パッケージソフトとして広く利用されています。 このようなパッケージソフトでデータベースを利用する時、製品の統一性を考えると、データベース固有のユーザインタフェースが表に出ることは、避けたいのではないでしょうか。

PowerGres Plus は、少ない操作で簡単にシステムの構築ができるよう、GUI のセットアップでデータベースの構築を行うことができます。 さらに、Linux 版には、製品標準の機能として、サイレントインストールと呼ばれる機能があります。 この機能は GUI を一切表示せず、PowerGres Plus のインストールからセットアップ、データベースの作成、データの登録までを行うことができます。

今回は、このサイレントインストール機能を使って、データベース環境を構築する方法をご紹介します。

サイレントインストールとは

通常のインストールは、コマンドを入力しプログラムをインストールした後、セットアップを起動し GUI メニューからデータベースの構築を行います。

通常のインストール

図 1: 通常のインストール

サイレントインストールは、最初にコマンドを入力するだけで、その後はユーザに入力を要求しません。 その代わり、インストール時に必要な情報を、「オプション情報ファイル」と呼ばれるテキストファイルに記載しておきます。 サイレントインストールは、この情報をもとにインストールからセットアップまでを自動的に行います。

さらに、セットアップで作成したデータベースに対してテーブルを作成し、データをロードすることもできます。

サイレントインストール

図 2: サイレントインストール

サイレントインストールの用途

データベースを組み込んだパッケージソフトをインストールする場合、製品としての統一性を考えると、データベースのインストールを表に見せたくない場合もあります。 サイレントインストールを利用すると、インストール時の入力操作が不要になります。 このため、ユーザに意識させることなく、PowerGres Plus をインストールすることができます。

パッケージへの組み込み

図 3: パッケージへの組み込み

また、複数のサーバに対して、PowerGres Plus をインストールする場合は、最初に準備したオプション情報ファイルを利用し、他のマシンにも、簡単に同じデータベース環境を構築することができます。

※ 複数のサーバへのインストールは、サーバと CPU の数に応じたライセンスが必要です。 詳しくは、PowerGres Plus の製品仕様 をご覧ください。

複数マシンへのインストール

図 4: 複数マシンへのインストール

サイレントインストールの使用方法

では、実際にサイレントインストールを使って、PowerGres Plus をインストールする方法をご紹介します。 今回、インストールに使用した環境は、以下のとおりです。

サイレントインストールは、Linux 版でのみ動作します。 Windows 版では、提供されていません。 添付のサンプルスクリプトは、PowerGres Plus が対応するすべてのディストリビューションで動作します。

サイレントインストールは、Linux 版にのみ搭載されています。 標準 PowerGres Plus が対応するすべての Linux ディストリビューションに標準で動作します。

ファイルの準備

構築するデータベース環境、サイレントインストールの使用目的に応じて、以下の 4 つのファイルを準備します。 これらのファイルは サンプル一覧 にあります。

ファイル ファイル名 説明
オプション情報ファイル pginstall_data.ini サイレントインストールを行う際に、必要なファイルです。 インストールのパラメタを記述します。
DDL ファイル pginstall_ddl.sql 作成したデータベースに対して、SQL 文を実行する場合に必要なファイルです。 CREATE TABLE、COPY などの SQL 文を記述します。
データファイル 任意 (添付のサンプルでは、products_data) DDL ファイルに COPY コマンドを記述する場合に必要なファイルです。 COPY コマンドに対応したフォーマットで記述します。
インストールスクリプト 任意 (添付のサンプルでは、silent_install.sh)

サイレントインストールのコマンドを実行する前後に、必要な処理がいくつかあり、これらを記述します。

実際にパッケージソフトに PowerGres Plus を組み込む場合、これらの処理は、パッケージソフトのインストーラで実施することになると思いますので、このファイルを準備する必要はありません。

サイレントインストールがどのようなものか、単体で実行してみたいという場合は、このファイルを準備してください。

以下、これらのファイルの詳細を説明します。

オプション情報ファイルの準備

インストールを行う際に必要な情報を、pginstall_data.ini というファイルに記述します。 以下は、オプション情報ファイルの記述例です。

オプション情報ファイルの記述例

図 5: オプション情報ファイルの記述例

オプション情報ファイルには、1 行に 1 つの項目名とその値を行の先頭から記述します。 「=」の前後に、空白およびタブを記述することはできません。 また、行の先頭が「#」の場合、その行はコメントとして扱われます。

以下がオプション情報ファイルの主な項目です。

項目 意味
password インスタンス管理者用ユーザのパスワード
instance インスタンス名
instance_directory インスタンスを格納するディレクトリまでの絶対パス
backup_directory バックアップデータを格納するディレクトリまでの絶対パス
database_name インスタンスに作成するデータベース名
dbspace_name データベーススペース名
dbspace_path データベーススペースとするファイルの絶対パス
dbspace_size データベーススペースのサイズ (MB 単位)
ddl_file データベースにテーブルを作成する場合などに実行する SQL 文を記述したファイルの絶対パス

これらの項目以外にも、記述可能な項目があります。 詳しくは、添付の「PostgreSQL Plus サイレントインストールガイド」を参照してください。

DDL ファイルの準備

オプション情報ファイルの ddl_file の項目に、ファイルを指定した場合は、そのファイルを準備します。

以下は、DDL ファイルの記述例です。 作成したデータベースに対して実行する SQL 文を記述します。

DDL ファイルの記述例

図 6: DDL ファイルの記述例

データファイルの準備

DDL ファイルに COPY コマンドを記述し、テーブルにデータを登録する場合は、そのデータファイルを準備します。

以下は、データファイルの記述例です。

データファイルの記述例

図 7: データファイルの記述例

インストールスクリプトの準備

サイレントインストールは、インストールコマンドを実行する前と後に、いくつかの処理が必要です。 パッケージソフトに PowerGres Plus を組み込む場合、これらの処理は、パッケージソフトのインストーラで実施することになると思います。

今回は、サイレントインストールがどのようなものかご紹介するために、サイレントインストールを単体で実行します。 このため、これらの処理を行うインストールスクリプトを準備します。

以下は、インストールスクリプトの記述例です。

インストールスクリプトの記述例

図 8: インストールスクリプトの記述例

インストールスクリプトに記述する処理は、以下のとおりです。

項目 内容
インストール前の処理 インスタンス管理者用
ユーザの登録
システムにインスタンス管理者用ユーザを作成し、パスワードを設定します。
ディレクトリの作成 インスタンスディレクトリ、バックアップディレクトリ、データベーススペースを格納するディレクトリを作成します。 また、これらの所有権をインスタンス管理者用ユーザに設定します。
環境変数の設定 インスタンス管理者用ユーザが PowerGres Plus を使用できるように、以下の環境変数を設定します。
  • PATHに、/usr/local/pgsqlplus/bin を追加します。
  • MANPATH に、/usr/local/pgsqlplus/manを追加します。
インストールコマンドの実行 インストールコマンド

インストールコマンド (install.sh) に -S オプションを指定して、サイレントインストールを実行します。

以下の形式で指定します。

install.sh -S ユーザ名 オプション情報ファイル名
ユーザ名

インスタンス管理者用ユーザを指定します。

オプション情報ファイル名

オプション情報ファイルの準備 で準備したオプション情報ファイルを絶対パスで指定します。

インストール後の処理 実行結果の確認 実行結果は、シェルの特殊パラメタ $? に格納されます。 インストールスクリプトでは、echo コマンドを使用して、これを画面に表示します。

インストールの実行

サイレントインストールを実行する準備が整いましたので、root でインストールスクリプトを実行します。 スクリプトを実行するとインストールがはじまり、以下のような情報が表示されます。

インストール状況

図 9: インストール状況

インストール結果の確認

実行結果は、シェルの特殊パラメタ $? に格納されます。 今回のサンプルでは、これを終了ステータスとして画面に表示しています。

パッケージソフトに PowerGres Plus を組み込む場合は、パッケージソフトのインストーラからこの値を参照してください。

インストール結果

図 10: インストール結果

終了ステータス

0: インストールは正常に完了しました。

0 以外: インストールでエラーが発生しました。

エラーが発生した場合は、添付の「PostgreSQL Plus サイレントインストールガイド」の「2.4 インストール結果の確認」を参照し、原因を取り除いてから、再度インストールを行ってください。

代表的なエラーとその対処は以下のとおりです。

終了ステータス 意味
70 インストールは成功しましたが、ディスクの空き容量が不足しているため、オプション情報ファイルで指定したデータベース環境を構築できません。 PowerGres Plus をアンインストールし、十分なディスク容量を確保した後、再度インストールを行ってください。 これ以外にも、オプション情報ファイルの記述やインストールコマンドの指定に誤りがあった場合にも、このエラーは発生します。 詳しくは、「PostgreSQL Plus サイレントインストールガイド」を参照してください。
99 PowerGres Plus がすでにインストールされている可能性があります。 PowerGres Plus をアンインストールした後、再度インストールを行ってください。

以下は、インストールが正常に終了した後に、データベースを参照した例です。 インストール時に指定したデータが正しく格納されていることがわかります。

 正常にインストールが完了した環境

図 11: 正常にインストールが完了した環境

最後に

サイレントインストールは、事前にいくつかのファイルを準備しておく必要がありますが、一度作成すれば、あとはコマンド 1 つで、インストールからセットアップ、データベースの作成、データの登録までを自動的に行うことができます。

今回は、シンプルなデータベース環境の作成例をご紹介しましたが、オプション情報ファイル、DDL ファイルには、さらに詳細な情報を記述することができますので、多様なデータベース環境の構築が可能です。

ご紹介したサンプルスクリプトは、サイレントインストールのマニュアルとともに、サンプル一覧 に公開してありますので、ぜひ、ご利用ください。

SRA OSS Online Shop

製品・サービスに関するお問い合わせ
03-5979-2701

お問い合せ受付時間 月 - 金 10:00 - 17:00

メールフォームでのお問い合わせ

ページトップへ