groongaはネットワークを通じて利用することができます。groonga独自プロトコルもしくはHTTPのどちらかを選択してgroongaを起動することにより、groongaはネットワーク接続を待ち受けます。
書式
groonga [-p ポート番号] -d DBパス名
既存のデータベースのフルパス名をDBパス名に指定します。 groongaがデーモンモードで起動し、指定したポート番号でgroongaの専用プロトコルを用いた通信をすることができます。 (ポート番号を省略した場合は10041が使用されます)
実行例:
% groonga -d /tmp/tutorial.db
12345
%
デーモンモードで起動後、プロセス番号が表示されます。
書式
groonga [-p ポート番号] -c [対象ホスト名またはIPアドレス]
対象ホストで動作しているgroongaサーバに接続します。
対象ホスト名を省略した場合はlocalhostに対して接続し、対象ポート番号を省略した場合は10041ポートに対して接続します。
接続に成功すると対話モードに入り、標準入力からコマンドを読み込んで順次実行します。
実行例
% groonga -c
> status
[[0,1308820928.88213,4.1937e-05],{"alloc_count":548,"starttime":1308820641,"uptime":287,"version":"1.2.2-104-gf48051d","n_queries":375,"cache_hit_rate":0.533333333333333,"command_version":1,"default_command_version":1,"max_command_version":2}]
> ctrl-d
%
groongaデーモンにshutdownコマンドを発行することにより、終了させることができます。
実行例
% groonga -c
> shutdown
%
groongaをHTTP経由で利用したい場合には、HTTPプロトコルモードで起動します。
書式
groonga [-p ポート番号] -d --protocol http DBパス名
protocolオプションで、groongaが受け付けるプロトコルを指定できます。httpを指定すると、groongaはHTTPプロトコルでの通信を受け付けます。
コマンド実行後、http://[IPアドレスまたはホスト名]:[ポート番号]/ というURLにブラウザからアクセスすると、HTML管理ツールが表示されます。ブラウザは、JavaScriptの実行が有効になっている必要があります。
groongaがHTTPプロトコルモードで起動されているとき、「/d/コマンド名」というURLにアクセスすると、コマンドを実行することが出来ます。
コマンドのオプションは、HTTPのGETパラメータで渡します。つまり、「?オプション=値&オプション=値 …」という書式になります。
実行例
http://[IPまたはホスト名]:[ポート番号]/d/status
実行される処理:
> status
[[0,1308820929.085,4.9675e-05],{"alloc_count":548,"starttime":1308820641,"uptime":288,"version":"1.2.2-104-gf48051d","n_queries":375,"cache_hit_rate":0.533333333333333,"command_version":1,"default_command_version":1,"max_command_version":2}]
http://[IPまたはホスト名]:[ポート番号]/d/select?table=Site&query=title:@this
実行される処理:
> select --table Site --query title:@this
[[0,1308820929.28709,6.8668e-05],[[[1],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"]],[1,"http://example.org/","This is test record 1!"]]]]
groongaのネットワークサービスにはは認証機能がありません。誰でもデータベースの内容を閲覧・修正することができます。iptablesなどを用いて、アクセス元IPアドレスを制限することを薦めます。