これはPGroonga 1.X用のドキュメントです。新しいPGroongaを使っているならPGroonga 2.xのドキュメントを見てください。
これらはPGroonga 4.0.0で削除されました。PGroonga 4.0.0以降では利用できません。
GRANT USAGE ON SCHEME pgroongaPGroongaはpgroongaスキーマに関数・演算子・演算子クラスなどを定義します。デフォルトではスーパーユーザーしかpgroongaスキーマの機能を使えません。スーパーユーザーはPGroongaを使いたいすべての一般ユーザーにpgroongaスキーマのUSAGE権限を与えなければいけません。
このドキュメントは一般ユーザーにpgroongaスキーマのUSAGE権限を与える方法を説明します。
最初にCREATE USERで一般ユーザーaliceを作成します。<
CREATE USER alice;
この時点では、一般ユーザーaliceはpgroongaスキーマのどのオブジェクトにもアクセスできません。例えば、aliceはpgroonga.snippet_html関数を使うことができません。
SELECT pgroonga.snippet_html('PGroonga is fast', Array['fast']);
-- ERROR: permission denied for schema pgroonga
-- LINE 1: SELECT pgroonga.snippet_html('PGroonga is fast', Array['fast...
-- ^
aliceにpgroongaスキーマのUSAGE権限を与える必要があります。
pgroongaスキーマのUSAGE権限を与えるGRANTを使って一般ユーザーaliceにpgroongaスキーマのUSAGE権限を与えることができます。
GRANT USAGE ON SCHEMA pgroonga TO alice;
これでaliceはpgroongaスキーマのすべての機能を使えるようになりました。例えば、aliceはpgroonga.snippet_html関数を使うことができます。
SELECT pgroonga.snippet_html('PGroonga is fast', Array['fast']);
-- snippet_html
-- -----------------------------------------------------
-- {"PGroonga is <span class=\"keyword\">fast</span>"}
-- (1 row)