Archive for the ‘postgresql’ Category
-
Buat User dan Database PostgreSql
Pertama-tama kita harus menjadi PostreSQL user postgres, kemudian jalankan create user untuk membuat user :
freddy@evangelion:~$ su – postgres
Password:
postgres@evangelion:~$ createuser freddy
Shall the new role be a superuser? (y/n) y
CREATE ROLE
Untuk membuat database test dengan pemilik freddy kita bisa menjalan perintah di bawah ini :
postgres@evangelion:~$ createdb –o freddy test
CREATE DATABASE
Untuk memulai psql untuk database test bisa dilakukan dengan cara :
freddy@evangelion:~$ psql test
Welcome to psql 8.2.7, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
test=#
Setelah itu kita bisa menjalankan perintah SQL dari sini.
-
Konfigurasi awal postgresql di ubuntu
Instalasi
Untuk menginstal postgresql dapat dilakukan dengan cara ini :
freddy@evangelion:~$ sudo apt-get install postgresql-8.2
freddy@evangelion:~$ sudo apt-get install pgadmin3Anda dapat juga menggunakan synaptic package manager dari Menu System>>Administration untuk menginstal package ini
Memberi/mengubah password
Pertama kali setelah kita berhasil install postgresql di ubuntu kita harus memberi paswword untuk user postgresql agar kita dapat mengakses database, hal ini dapat dilakukan dengan cara :
freddy@evangelion:~$ sudo -u postgres psql postgres
Welcome to psql 8.2.7, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
postgres=# alter user postgres with encrypted password 'freddy';
ALTER ROLEBuat direktori database
freddy@evangelion:~$ sudo mkdir /usr/lib/postgresql/8.2/data
freddy@evangelion:~$ sudo chown postgres /usr/lib/postgresql/8.2/data/
Anda bebas untuk menyimpan data di tempat lainInisialisasi database
Anda dapat menginisialisasi PostgreSQL database dengan menggunakan perintah initdb-
Masuk ke dalam terminal dan ketik su untuk menjadi user root
- Kemudian masuk menjadi user postgres, Sebagai user biasa, anda tidak memiliki hak/ijin untuk menjadi user lain jadi anda harus menjadi superuser terlebih dahulu
freddy@evangelion:~$ su
root@evangelion:/home/freddy# su - postgres - Menginisialisasi database dengan initdb
postgres@evangelion:~$ /usr/lib/postgresql/8.2/bin/initdb -D /usr/lib/postgresql/8.2/data The files belonging to this database system will be owned by user "postgres".WARNING: enabling “trust” authentication for local connections
This user must also own the server process.
The database cluster will be initialized with locale en_US.UTF-8.
The default database encoding has accordingly been set to UTF8.
fixing permissions on existing directory /usr/lib/postgresql/8.2/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers/max_fsm_pages ... 24MB/153600
creating configuration files ... ok
creating template1 database in /usr/lib/postgresql/8.2/data/base/1 ... ok
initializing pg_authid ... ok
initializing dependencies ... ok
creating system views ... ok
loading system objects' descriptions ... ok
creating conversions ... ok
setting privileges on built-in objects ... ok
creating information schema ... ok
vacuuming database template1 ... ok
copying template1 to template0 ... ok
copying template1 to postgres ... ok
You can change this by editing pg_hba.conf or using the -A option the
next time you run initdb.
Success. You can now start the database server using:/usr/lib/postgresql/8.2/bin/postgres -D /usr/lib/postgresql/8.2/data
or
/usr/lib/postgresql/8.2/bin/pg_ctl -D /usr/lib/postgresql/8.2/data -l logfile start
Memberikan Hak Akses Koneksi
Secara default PostgreSQL tidak mengijinkan general remote access. Untuk memberikan ijin untuk terhubung ke dalam database, anda harus mengedit file konfigurasi pg_hba.conf dalam contoh ini ada di dalam /usr/lib/postgresql/8.2/data Dalam file pg_hba.conf sebetulnya sudah ada dokumentasi yang cukup lengkap.. tapi saya akan bahas dengan menggunakan contoh-contoh sederhana :
Saya membuat user Freddy pada komputer dengan ip 192.168.0.1 untuk dapat terhubung dengan database akademik, md5 adalah METHOD yang digunakan untuk menghubungkan semua database yang memerlukan authentikasi password :host akademik freddy 192.168.0.1/32 md5Saya membuat semua user pada komputer dengan ip 192.168.x.x untuk dapat terhubung dengan semua database, trust adalah METHOD yang digunakan jika kita mempercayai semua user yang ada dalam jaringan 192.168.x.x :
host all all 192.168.0.0/16 trustreferensi : -