ソースからインストール

このドキュメントはソースからPGroongaをビルドしてインストールする方法を説明します。

ビルド・インストール方法はWindowsとWindows以外のプラットフォームで違います。このドキュメントではそれぞれ別々に説明します。

Windows以外のプラットフォーム

PostgreSQLをインストールします。

Groongaをインストールします。パッケージを使うことをおすすめします。パッケージを使ってGroongaをインストールする場合は次のパッケージをインストールしてください。

PGroongaのソースを展開します。

% wget https://packages.groonga.org/source/pgroonga/pgroonga-3.2.0.tar.gz
% tar xvf pgroonga-3.2.0.tar.gz
% cd pgroonga-3.2.0

参考:未リリースの最新版を使いたい場合は次のようにしてください。

% git clone --recursive https://github.com/pgroonga/pgroonga.git
% cd pgroonga

PGroongaをビルドします。いくつかオプションがあります。

WALサポート付きでビルドしたい場合は次のコマンドラインを使います。

% make HAVE_MSGPACK=1

WALサポートが必要ない場合は次のコマンドラインを使います。

% make

エラーが発生した場合は次のことを確認してください。

もし、pg_configコマンドが存在しない場合、PostgreSQLの開発用パッケージをインストールし忘れているかもしれません。

もし、pkg-config --list-allgroongaが含まれていない場合、Groongaの開発用パッケージをインストールし忘れているかもしれません。あるいは、groonga.pcが標準的なディレクトリーではないディレクトリーにインストールされているのかもしれません。その場合はPKG_CONFIG_PATH環境変数を使ってください。

以下は--prefix=/usr/localオプション付きでGroongaをインストールした場合の例です。

% PKG_CONFIG_PATH=/usr/local/lib/pkg-config make

PGroongaをインストールします。

% sudo make install

もし、SELinuxを使っているなら、ポリシーパッケージ(.pp)を作成し、インストールしなければなりません。PGroongaは、 <data dir>/pgrn* ファイルをメモリー内にマップさせますが、これはデフォルトでは許可されていません。初めに、 policycoreutilscheckpolicy をインストールします。

% sudo dnf install policycoreutils checkpolicy

PostgreSQLのバイナリーのタイプを postgresql_t 、 PostgreSQlのデータファイルのタイプを postgresql_db_t とします。 postgresql_tpostgresql_db_t のファイルをメモリーにマップすることを許可します。そして、それをコンパイル(.mod)、パッケージ(.pp)したポリシーパッケージをインストールします。

% cat > my-pgroonga.te << EOF
module my-pgroonga 1.0;

require {
    type postgresql_t;
    type postgresql_db_t;
    class file map;
}

allow postgresql_t postgresql_db_t:file map;
EOF

% checkmodule -M -m -o my-pgroonga.mod my-pgroonga.te
% semodule_package -o my-pgroonga.pp -m my-pgroonga.mod
% sudo semodule -i my-pgroonga.pp

データベースを作成します。

% psql --command 'CREATE DATABASE pgroonga_test'

(通常はpgroonga_testデータベース用のユーザーを作ってそのユーザーを利用するべきです。詳細はGRANT USAGE ON SCHEMA pgroongaを参照してください。)

作成したデータベースに接続し、CREATE EXTENSION pgroongaを実行します。

% psql -d pgroonga_test --command 'CREATE EXTENSION pgroonga;'

これで終わりです!

チュートリアルを試してください。PGroongaについてもっと理解できるはずです。

Windows

ソースからPGroongaをビルド・インストールするために必要なソフトウェアは次の通りです。これらをインストールしてください。

packages.groonga.orgからWindows用のPGroongaソースアーカイブをダウンロードしてください。Windows用のソースアーカイブはzipファイルです。Windows用のソースアーカイブにはGroongaがバンドルされています。

ダウンロードしたソースアーカイブを展開し、ソースフォルダーに移動してください。

> cd c:\Users\%USERNAME%\Downloads\pgroonga-3.2.0

cmakeのビルドオプションを指定します。64bitバージョンのPostgreSQL用にPGroongaをビルドするためのコマンドラインは次の通りです。もし、32bitバージョンのPostgreSQL用にビルドしたい場合は、代わりに-G "Visual Studio 12 2013"パラメーターを使ってください。

pgroonga-3.2.0> cmake . -G "Visual Studio 12 2013 Win64" -DCMAKE_INSTALL_PREFIX=%POSTGRESQL_INSTALL_FOLDER% -DGRN_WITH_BUNDLED_LZ4=yes -DGRN_WITH_BUNDLED_MECAB=yes -DGRN_WITH_BUNDLED_MESSAGE_PACK=yes -DGRN_WITH_MRUBY=yes

インストーラーを使ってPostgreSQLをインストールした場合は%POSTGRESQL_INSTALL_FOLDER%C:\Program Files\PostgreSQL\%POSTGRESQL_VERSION%になります。

zipバージョンのPostgreSQLをインストールした場合は%POSTGRESQL_INSTALL_FOLDER%%PostgreSQLのzipを展開したフォルダー%\pgsqlになります。

PGroongaをビルドします。

pgroonga-3.2.0> cmake --build . --config Release

PGroongaをインストールします。管理者権限が必要かもしれません。たとえば、インストーラーを使ってPostgreSQLをインストールした場合は管理者権限が必要でしょう。

pgroonga-3.2.0> cmake --build . --config Release --target Install

データベースを作成します。

postgres=# CREATE DATABASE pgroonga_test;

(通常はpgroonga_testデータベース用のユーザーを作ってそのユーザーを利用するべきです。詳細はGRANT USAGE ON SCHEMA pgroongaを参照してください。)

作成したデータベースに接続し、CREATE EXTENSION pgroongaを実行します。

postgres=# \c pgroonga_test
pgroonga_test=# CREATE EXTENSION pgroonga;

これで終わりです!

チュートリアルを試してください。PGroongaについてもっと理解できるはずです。