### Navigation

- index
- next |
- previous |
- groonga v1.1.0 documentation »
- 3. チュートリアル »

# 3.2. ネットワークを通じた利用

groongaはネットワークを通じて利用することができます。groonga独自プロトコルもしくはHTTPのどちらかを選択してgroongaを起動することにより、groongaはネットワーク接続を待ち受けます。

## 3.2.1. groonga専用プロトコルによる通信

### 3.2.1.1. groongaデーモンの起動

書式

    groonga [-p ポート番号] -d DBパス名

既存のデータベースのフルパス名をDBパス名に指定します。 groongaがデーモンモードで起動し、指定したポート番号でgroongaの専用プロトコルを用いた通信をすることができます。 (ポート番号を省略した場合は10041が使用されます)

実行例:

    % groonga -d /var/tmp/hoge.db
    12345
    %

デーモンモードで起動後、プロセス番号が表示されます。

### 3.2.1.2. groongaサーバへの接続

書式

    groonga [-p ポート番号] -c [対象ホスト名またはIPアドレス]

対象ホストで動作しているgroongaサーバに接続します。

対象ホスト名を省略した場合はlocalhostに対して接続し、対象ポート番号を省略した場合は10041ポートに対して接続します。

接続に成功すると対話モードに入り、標準入力からコマンドを読み込んで順次実行します。

実行例

    % groonga -c
    > status
    [[0,1294292493.17513,3.4655e-05],{"alloc_count":466,"starttime":1294292404,"uptime":89,"version":"1.0.6-10-gba9df76","n_queries":105,"cache_hit_rate":0.0,"command_version":1,"default_command_version":1,"max_command_version":2}]
    > ctrl-d
    %

### 3.2.1.3. groongaデーモンの終了

groongaデーモンにshutdownコマンドを発行することにより、終了させることができます。

実行例

    % groonga -c
    > shutdown
    %

## 3.2.2. HTTPによる通信

groongaをHTTP経由で利用したい場合には、HTTPプロトコルモードで起動します。

書式

    groonga [-p ポート番号] -d --protocol http DBパス名

protocolオプションで、groongaが受け付けるプロトコルを指定できます。httpを指定すると、groongaはHTTPプロトコルでの通信を受け付けます。

### 3.2.2.1. HTML管理ツール

コマンド実行後、http://[IPアドレスまたはホスト名]:[ポート番号]/ というURLにブラウザからアクセスすると、HTML管理ツールが表示されます。ブラウザは、JavaScriptの実行が有効になっている必要があります。

### 3.2.2.2. HTTPでのコマンド実行

groongaがHTTPプロトコルモードで起動されているとき、「/d/コマンド名」というURLにアクセスすると、コマンドを実行することが出来ます。

コマンドのオプションは、HTTPのGETパラメータで渡します。つまり、「?オプション=値&オプション=値 …」という書式になります。

実行例

    http://[IPまたはホスト名]:[ポート番号]/d/status
    実行される処理：
    > status
    [[0,1294292493.37913,2.8547e-05],{"alloc_count":466,"starttime":1294292404,"uptime":89,"version":"1.0.6-10-gba9df76","n_queries":105,"cache_hit_rate":0.0,"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,1294292493.58185,6.4853e-05],[[[1],[["_id","UInt32"],["_key","ShortText"],["title","ShortText"]],[1,"http://example.org/","This is test record 1!"]]]]

## 3.2.3. セキュリティ

groongaのネットワークサービスにはは認証機能がありません。誰でもデータベースの内容を閲覧・修正することができます。iptablesなどを用いて、アクセス元IPアドレスを制限することを薦めます。

### Navigation

- index
- next |
- previous |
- groonga v1.1.0 documentation »
- 3. チュートリアル »