PostgreSQL - Instalasi dan Konfigurasi
Entah kenapa, saya lebih familiar mySQL dibanding dengan postgresql, mungkin karena faktor "kemudahan" dan pengguna yang relatif banyak, sehingga ketika stuck dengan masalah, kita dapat dengan mudah browsing referensi di internet atau phone a friend, hehehe..
Cari baris
Ganti dengan
Simpan, kemudian restart service. Sekarang sistem auth postgresql menggunakan sistem username/passwd.
Langkah kedua adalah membuat user. User postgresql default adalah postgres dengan status sebagai superadmin (semua bisa dilakukan, no restrictions), namun setelah mengubah ke md5, kita dapat dengan menambahkan user melalui postgresql shell prompt.
Masuk ke postgresql prompt
Kemudian buat user
*PS: postgres ini nama user default di linux, kalau di mac, install postgres pakai homebrew, maka default-nya adalah username dari komputer/laptop.
Exit ke bash prompt lagi, sekarang mari kita buat dbase dengan menggunakan user yang sudah dibuat sebelumnya.
Masukkan password
Atau jika ingin drop postgresql database,
Berikut ini konfigurasi tambahan untuk postgresql dari django:
Sekian....
Sekilas PostgreSQL
Ada hal mendasar yang seringkali membuat bingung bagi pengguna pemula database postgresql, yakni sistem autentikasi. Kalau di mysql lazimnya kita mengenal auth dengan username dan password, jika keduanya cocok, kita dapat dengan mudah memulai proses manajemen dan manipulasi database.Install
sudo apt install postgresql postgresql-contribPeer Authentication
Di postgresql, sistem authentikasi secara default adalah menggunakan peer. Saya juga tidak terlalu paham dengan istilah peer auth ini, tapi yang jelas bukan sistem username/passwd seperti yang kita kenal selama ini. Untungnya postgresql juga menyediakan sistem auth dengan username/passwd seperti di mysql. Caranya adalah dengan mengubah file config (pg_hba.conf), yang jika di OS Ubuntu berada di /etc/postgresql/9.5/main/pg_hba.conf.Cari baris
local all all peer
Ganti dengan
local all all md5
Simpan, kemudian restart service. Sekarang sistem auth postgresql menggunakan sistem username/passwd.
Langkah kedua adalah membuat user. User postgresql default adalah postgres dengan status sebagai superadmin (semua bisa dilakukan, no restrictions), namun setelah mengubah ke md5, kita dapat dengan menambahkan user melalui postgresql shell prompt.
Masuk ke postgresql prompt
sudo su - postgres
Kemudian buat user
createuser -U postgres -d -e -E -l -P -r -s namauser
*PS: postgres ini nama user default di linux, kalau di mac, install postgres pakai homebrew, maka default-nya adalah username dari komputer/laptop.
Exit ke bash prompt lagi, sekarang mari kita buat dbase dengan menggunakan user yang sudah dibuat sebelumnya.
createdb -O kholidfu -U kholidfu namadbase -W
Masukkan password
Atau jika ingin drop postgresql database,
dropdb -U kholidfu namadbase -W
Django dan PostgreSQL
Di dokumentasi resmi django, ada beberapa hal yang dilakukan oleh USER untuk meningkatkan kinerja database di django. Seperti dari tulisan digitalocean berikut:Berikut ini konfigurasi tambahan untuk postgresql dari django:
ALTER ROLE myprojectuser SET client_encoding TO 'utf8'; ALTER ROLE myprojectuser SET default_transaction_isolation TO 'read committed'; ALTER ROLE myprojectuser SET timezone TO 'UTC';
Command Yang Sering Dipakai
Login ke postgresql prompt sebagai user postgres
sudo su - postgres
Login ke postgresql repl sebagai user postgres
sudo -u postgres psql
Melihat list database
sudo -u postgres psql -c '\l;'
Mengetahui semua user di postgresql
sudo -u postgres psql -c "SELECT * FROM pg_shadow;"
Sekian....
Comments
Post a Comment