1. SETTING LANGUAGE C di POSTGRES

    Pernah anda mengalami error ketika melakukan perintah GRANT .. LANGUAGE C … di PostgreSQL ? kemungkinan pasti ada, saya pernah mengalami hal ini beberapa hari yang lalu. Awalnya membuat database yang hak aksesnya untuk user tertentu, dimana user tersebut harus bisa membuat fungsi yang LANGUAGE nya adalah C.

    Saya ilustrasikan seperti ini.

    Login sebagi superuser postgres ( = postgres )untuk membuat user baru:

    >psql -Upostgres template1
    template1=# create user milis with createdb nocreateuser encrypted password ‘milispwd’;
    CREATE ROLE
    template1=#

    Buat database baru( yang membuat adalah user yang baru ditambahkan = milis):

    >createdb –encoding=UTF8 -Umilis -W milis2

    Sebagai superuser berikan perintah grant agar user milis memiliki akses ke LANGUAGE C:

    template1=# grant all privileges on language c to milis with grant option;

    jika anda beruntung maka tidka akan muncul pesan error apapun, tapi jika menjumpai error seperti ini

    ERROR: language “c” is not trusted
    HINT: Only superusers may use untrusted languages.

    maka anda harus mengatur tabel pg_language,

    template1=# update pg_language set lanpltrusted=true where lanname=’c';

    kemudian berikan perintah GRANT seperti diatas

    template1=# grant all privileges on language c to milis with grant option;

    Sekarang user “milis” siap untuk membuat FUNCTION dengan LANGUAGE C.

    Login sebagai user “milis” ke database “milis2″ yang sudah dibuat diatas,kemudian coba buat FUNCTION dengan LANGUAGE C.

    >psql -Umilis milis2
    milis2=> create function my_func_encrypt (bytea, bytea, text) returns bytea as
    milis2-> ‘$libdir/pgcrypto’, ‘pg_encrypt’
    milis2-> language ‘c’;
    CREATE FUNCTION
    milis2=> select my_func_encrypt(‘rahasia’, ‘hashRahasia’, ‘bf’);
    my_func_encrypt
    —————————-
    \031\267\301\242\254\307-+
    (1 row)

    milis2=>


    Semoga bermanfaat.

1 Comment(s)

  1. pandu, 20.Feb.2008 9:53 pm

    Sangat bermanfaat :) thx


Add Comment

Recent Post

Recent Comment

Archive