Subscribe:

Main Menu

Jumat, Mei 30, 2008

TIPS SETTING POSTGRES

Yach maklum saya sering lupa jadi naruh contekan kecil dari pengalaman otak-atik postgresql, yach sapa tahu besok-besok berguna :D hehehehe...

super user linux : root
super user postgresql : postgres

pada habis install, user "postgres" belum ada password

konfigurasi pgsql:
=======================
#vi /etc/postgresql/8.1/main/pg_hba.conf

$psql -U postgres postgres
postgres# alter role postgres encrypted password 'asdf';

restart daemon
# /etc/init.d/postgresql-8.1 restart

buat PL/PGSQL:
createlang -U postgres plpgsql template1


Create dbLink
psql -U postgres template1 < /usr/share/postgresql/8.1/contrib/dblink.sql

Data base default
postgres (database default)
tempalate1(baceman: ketika kita membuat sebuah database baru,berarti dia menduplikat database template1)

help
\?
\h

Menjalankan postgres pertama kali
pada saat pertama postgres di install belum ada password untuk user utama(postgres)
edit file pg_hba.conf
ada beberapa tipe
ident -> server kaya irc dll
md5 -> pake password encrypt
trust -> ga pake password
password -> pake password tanpa encrypt
ganti semua tipe menjadi trust
restart daemon postgree
# /etc/init.d/postgresql-8.1 restart
masuk pgsql
#psql – U postgres postgres
edit tabel pg_user
contoh isi tabel pg_user
usename | usesysid | usecreatedb | usesuper | usecatupd | passwd | valuntil | useconfig
----------+----------+-------------+----------+-----------+----------+----------+-----------
postgres | 10 | t | t | t | ******** | |
(1 rows)
kita tidak tahu password dari user postgres untuk itu kita ganti passwordnya
postgres=# alter role postgres encrypted password 'asdf'
kembalikan tipe di pg_hba.conf menjadi seperti semula (yaitu md5)
postgree sudah siap dipakai ....

User
untuk mengetahui siapa saja user yang ada :
postgres=#select * from pg_user;
untuk menambah user baru
Syntax:
CREATE ROLE name [ [ WITH ] option [ ... ] ]

where option can be:

SUPERUSER | NOSUPERUSER
| CREATEDB | NOCREATEDB
| CREATEROLE | NOCREATEROLE
| CREATEUSER | NOCREATEUSER
| INHERIT | NOINHERIT
| LOGIN | NOLOGIN
| CONNECTION LIMIT connlimit
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| VALID UNTIL 'timestamp'
| IN ROLE rolename [, ...]
| IN GROUP rolename [, ...]
| ROLE rolename [, ...]
| ADMIN rolename [, ...]
| USER rolename [, ...]
| SYSID uid
untuk menghapus user
Syntax:
DROP ROLE name [, ...]
DataBase
untuk membuat database baru
Syntax:
CREATE DATABASE name
[ [ WITH ] [ OWNER [=] dbowner ]
[ TEMPLATE [=] template ]
[ ENCODING [=] encoding ]
[ TABLESPACE [=] tablespace ]
[ CONNECTION LIMIT [=] connlimit ] ]
menghapus database
Syntax:
DROP DATABASE name

BACKUP
Sintaks
#pg_dump -U user1 -f /tmp/backup.sql tesdb

RESUME
ada dua cara
1.dari command prompt langsung
sintaks : psql -U user1 tesdb < /tmp/backup.sql 2.dari psql sintaks : \i /tmp/backup.sql

DBLINK
menampilkan tabel dari database lain
select t1.* from dblink('dbname=aktest user=itats password=123','select mhsid from mhs',false) t1(mhsid varchar);

0 komentar: