Minggu, 22 Februari 2015

Database Postgresql

Memulai Menggunakan Database PostgreSQL
Dalam artikel ini diasumsikan postgres telah terinstall di komputer anda, baik lewat rpm atau source, diasumsikan PostgreSQL telah berjalan di komputer anda.
Pertanyaannya bagaimana memulai menggunakan postgres ? dengan artikel ini mudah-mudahan terjawab
Menjalankan dan Mematikan PostgreSQL
Sebagai root jalankan perintah berikut :
Script Menjalankan PostgreSQL
root]#/etc/rc.d/init.d/postgresql start

Script Mematikan PostgreSQL
root]#/etc/rc.d/init.d/postgresql stop

Script Mematikan dan Menjalankan (Restart) PostgreSQL
root]#/etc/rc.d/init.d/postgresql restart
Password Security dan TCP/IP Connection
Masih sebagai root, login sebagai user postgres (user sytem) dan login ke database postgres (template1)

root]#su - postgres
-bash-2.05b$psql template1                
Sekarang anda telah login ke database system template1

Welcome to psql 7.4.1, the PostgreSQL interactive terminal.
 
Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help on internal slash commands
       \g or terminate with semicolon to execute query
       \q to quit
                              
template1=# 
Dari konsole database template1, jalankan perintah SQL untuk mengubah password user postgres.
Kemudian keluar dari user terminal interactive PostgreSQL
template1=# ALTER USER postgres with password 'passwordku';
template1=# \q
Masih login sebagai user system postgres, dimana home direktory user postgres biasanya jika anda install PostgreSQL
lewat distro linux berada di /var/lib/pgsql (Penulis menggunakan distro Mandrake 10)
Masih sebagai root Jalankan perintah-perintah berikut untuk security akses PostgreSQL anda

  1. Edit file var/lib/pgsql/data/pg_hba.conf pada 10 baris terakhir file ini, menjadi :
    # TYPE  DATABASE   USER   IP-ADDRESS   IP-MASK       METHOD
    local   all        all      password
    
    # IPv4-style local connections:
    host    all        all    192.168.1.0  255.255.255.0         password
    host    all        all    127.0.0.1    255.255.255.255         password
    
    
    # IPv6-style local connections:
    #host    all         all  ::1          ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff  trust
    # Using sockets credentials for improved security. Not available everywhere,
    # but works on Linux, *BSD (and probably some others)
    
    #local  all     all     ident   sameuser
    

    Penjelasan :

    # TYPE  DATABASE   USER        IP-ADDRESS        IP-MASK           METHOD
    local   all        all        password
    Script ini berarti :
    Allow any user on the local system to connect to any database under
    any user name using Unix-domain sockets (the default for local
    connections).
    
    host    all        all          127.0.0.1       255.255.255.255   password
    Script ini berarti :
    The same using local loopback TCP/IP connections.
    
    host    all        all          192.168.1.0     255.255.255.0   password
    Script ini berarti :
    Allow any user from any host with IP address 192.168.1.x to connect
    to database "template1" as the same user name that ident reports for
    the connection (typically the Unix user name).
    

  2. Edit file /var/lib/pgsql/data/postgresql.conf untuk TCP/IP connection, dengan cukup mengubah bagian berikut
    atau tepatnya mengaktifkan property berikut
            listen_addreses="localhost"
        
Setelah Selesai restart service PostgreSQL anda
root]#/etc/rc.d/init.d/postgresql restart
Buat User database PostgreSQL
Untuk membuat user baru pada database PostgreSQL haruslah yang membuat user postgres
Jalankan perintah berikut untuk buat user database PostgreSQL ( anda tidak harus sebagai root )
Misalkan user baru = rosa
    ]$ createuser rosa -p -U postgres 

option -p pada command diatas untuk sekaligus membuat password user baru,
sedangkan option -U postgres berarti hanya user postgres yang berhak membuat user baru
Selanjutnya anda diminta untuk memasukan password user_baru kemudian
apakah user_baru boleh membuat database ? ya
apakah user_baru boleh create user baru ? tentu saja tidak
Setelah itu masukan password dari user postgres pada database PostgreSQL
    Enter password for new user:
    Enter it again:
    Shall the new user be allowed to create databases? (y/n) y
    Shall the new user be allowed to create more new users? (y/n) n
    Password:
    CREATE USER
Membuat database
Berikut perintah user database untuk create database baru
    ]$ createdb latihan -U rosa
Perintah diatas berarti membuat database latihan dimana pemilik database tersebut adalah user database rosa
Login ke database dengan PostgreSQL
Untuk login ke database PostgreSQL jalankan perintah berikut ini
  1. Login ke database latihan dalam komputer yang sama
        ]$ psql latihan -U rosa 
    

  2. Login ke database latihan dalam komputer lain / server lain
        ]$ psql latihan -U rosa -h 192.168.1.193
    
Masukan Password user rosa dan kemudian akan muncul terminal PostgreSQL yang langsung ke database latihan
Welcome to psql 7.4.1, the PostgreSQL interactive terminal.  
Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help on internal slash commands
       \g or terminate with semicolon to execute query
       \q to quit    
latihan=>
Dalam terminal PostgreSQL anda bisa menjalan perintah-perintah SQL
Menghapus Database
Berikut perintah user database untuk menghapus/drop database
    ]$ dropdb latihan -U rosa
Perintah diatas berarti menghapus database latihan. Dimana pemilik database latihan yang bisa menghapus atau super user database (postgres

Tidak ada komentar:

Posting Komentar