Disusun Oleh :
DATA
DAN TABLESPACES
NIM : 2022573010097
NILAI :
i
DAFTAR ISI
B. Tujuan .............................................................................................................. 1
ii
BAB I
PENDAHULUAN
A. Latar Belakang
Era teknologi menjadikan informasi menyebar dengan sangat cepat. Melalui
internet kita dapat mengakses begitu banyak data dan informasi yang diperlukan.
Dalam kemudahan mengakses data dan informasi, kita dituntut untuk
mengembangkan data atau informasi tersebut menjadi lebih menarik dan mudah untuk
dibaca. Banyaknya data yang diperoleh terkadang perlu untuk diolah agar dapat lebih
mudah dan menarik dalam membacanya. Data yang diperoleh kemudian diolah
dengan sedemikian rupa lalu ditampilkan dalam bentuk grafik itulah yang disebut
dengan visualisasi data.
Database merupakan sebuah kumpulan-kumpulan data yang terstruktur dan
teroganisir yang tersimpan di dalam sebuah server, database dapat menyimpan,
mengelola dan mencari informasi dalam berbagai hal, semua jenis data tersimpan di
dalam suatu koleksi agar pengelolaan data menjadi lebih efisien, database dapat di
atur dalam Database Management System (DBMS) untuk menghindari data
ganda/duplikat. Database juga berguna dalam keamanan data, data yang tersimpan di
dalam database dapat dibuat menggunakan password sehingga tidak dapat di akses
oleh pihak luar. Salah satu perangkat dalam penunjang database ini adalah postgresql.
Postgresql muncul pada tahun 1986 merupakan sebuah perangkat lunak open
source yang melakukan sebuah Object Relational Database Management Systems
(ORDBMS), Postgresql memiliki fitur unggulan seperti Asynchronous Replication,
Locking Mechanism, Savepoints dan JSON. Postgresql banyak di gunakan di
kalangan saat ini karena fitur-fitur nya yang terbilang canggih dan terus di
kembangkan serta mudah di pahami oleh pemula.
B. Tujuan
1. Dapat memahami fungsi Database!
2. Dapat memahami penggunaan Postgresql serta Koneksi ke Server!
3. Dapat memahami cara Managing Database, Schemas dan Tablespaces pada
Postgresql!
C. Dasar Teori
Postgresql merupakan sebuah sistem manajemen database relasional yang
dapat digunakan dan dikembangkan secara open-source dan gratis. Software ini dapat
berjalan pada sistem operasi berbasis windows dan Linux seperti Debian, Ubuntu,
Fedora, dan lain-lain. Salah satu kegunaan PostgreSQL adalah untuk mengelola data
dalam tabel yang berelasi satu sama lain dan juga memiliki fitur yang sangat kuat.
Fitur-fitur dapat digunakan untuk menyimpan dan mengelola berbagai jenis data,
mulai dari data sederhana hingga data yang sangat kompleks. PostgreSQL adalah
sistem manajemen basis data relasional objek (RDBMS) yang menggunakan dan
memperluas bahasa SQL. RDBMS memungkinkan pengguna untuk berinteraksi
dengan data dalam database seperti melihat, menghapus, menambahkan, dan mencari
data.
Dalam postgresSQL kita dapat melakukan beberapa tindakan tugas
administrasi yang penting tetapi pada laporan ini kita akan membahas 3 administrasi
penting diantara lain managing database, managing schemas dan managing
tablespaces. Managing database merupakan cara mengelola database dengan beberapa
perintah yaitu seperti membuat(create), memodifikasi fitur database yang ada (alter),
menghapus database(drop) hingga mencopy database. Begitu juga pada managing
schema dan managing tablespace.
2
BAB II
PEMBAHASAN PRAKTIKUM
- Pada bagian selanjutnya silahkan pilih version yang diinginkan dan pilih windows
versi 64 atau 32 bit susai dengan OS masing-masing.
3
Installasi Postgresql dan Dbeaver
- Lakukan Installasi pada aplikasi Postgresql dengan mengklik kanan run
administrator atau double klik.
- Setelah muncul tampilan installasi klik next untuk melanjutkan
- Pada halaman selanjutnya saat installation directory pilih next saja, dan pada select
component anda juga bisa next saja, begitu juga pada data directory.
4
- Selanjutnya pada halaman port klik next saja jika tidak ada masalah, dan halaman
selanjutnya juga next hingga pada pre installation kita next saja.
- Setelah proses installasi selesai lakukan pengecekan uji koneksi postgres dengan
cari sql shell di kolom pencarian lalu cek dengan seperti gambar berikut! Pada
bagian password silahkan masukkan password yang dibuat pada proses installasi.
5
- setuju dengan klik ‘I agree’ pada licensi dari DBeaver, dan pada tampilan
selanjutnya anda bisa pilih untuk sendiri atau all users, dsini saya pilih untuk
penggunaan laptop saya sendiri.
- klik install dan tunggu hingga selesai, centang pada box create dekstop untuk
membuat shortcut dekstop nya dan finish.
6
Koneksi Database
1. Koneksi database PostgresSQL ke DBeaver
- Open Aplikasi DBeaver dan pada tampilan awal pilih menu dropdown sebelah kiri
- Pada bagian setup ini semuanya masih secara default saat kita installasi tadi,
masukkan password sesuai dengan proses installasi tadi dan klik test connection.
- Karena pertama kali install maka kita akan disuruh untuk mendownload terlebih
dahulu persyaratan version yang di inginkan, klik download dan tunggu hingga
selesai sampai terkonek.
7
- Jika sudah terhubung maka tampilan database dari PostgresSQL akan muncul
- Cek database yang tersedia, setiap server baru yang dibuat memiliki database
bawaan yaitu postgres yang otomatis sudah aktif tersedia.
8
3. Koneksi Database dengan PgAdmin 4
- Open PgAdmin 4 dengan mengetik di menu pencarian di windows
- Pada tampilan awal PgAdmin 4 klik kanan pada Servers > Register > Server,
perhatikan gambar berikut!
- Pada Tab General dari layar Register masukkan name server buat contoh “Local”
- Selanjutnya masuk ke bagian Tab Connection, buat host name adress menjadi
“localhost” dan berikan bagian Password = Password saat installasi postgres lalu
klik save untuk membuat server.
- Maka hasil Server telah terhubung dan memiliki database Postgres dan Cek version
melalui Query Tool
9
Load Sample Database
1. Load Sample melalui psql command
- Open command prompt masuk ke server psql -U postgres, setelah masuk ketikkan
perintah “CREATE DATABASE dvdrental” untuk membuat database baru.
- Cek database dengan menggunakan perintah \l lalu exit untuk keluar dari server.
- Setelah keluar open kembali cmd dan ketikkan “pg_restore -U postgres -d dvdrental
nama direktori” sesuai terlihat pada gambar.
Pg_restore merupakan perintah untuk menambahkan file
-U postgres merupakan database tujuan
-d dvdrental merupakan spesifik nama file yang ingin di upload
Terakhir berikan nama direktori dengan cara copy melalui file folder yang
disimpan.
10
2. Load Sample melalui PgAdmin 4
- Open PgAdmin 4 pilih Create > Database
- Masukkan file name yang di tuju sesuai alamat penyimpanan folder dvdrental.tar,
lalu klik restore.
11
Managing Database, Schema, Tablespace
1. Managing Database
a. Create Database
- Open cmd masuk ke dalam psql -U postgres dan ketiikkan perintah “CREATE
DATABASE sales” maka ini akan membuat database baru berupa sales.
- Membuat database dengan PgAdmin 4, klik kanan pada database pilih create dan
database
- Pada tampilan page General buat nama database baru “sampledb” dan owner
“Postgres” lalu anda bisa mengecek sql yang dibuat untuk membuat database
dengan mengklik tab SQL lalu save.
12
b. Alter Database
- Alter database merupakan cara untuk merubah/merename struktur atau properti
yang ada pada database contoh pada atribut, owner, default tablespace hingga
session default ke tika runtime.
- Masuk ke dalam server lalu buat database baru “testdb2” dan lakukan perintah Alter
database dan Rename untuk mengubah nama database testdb2 menjadi testhrdb.
- Selanjutnya tes Alter database pada Owner testhrdb ke Postgres hr, jika role dari hr
belum tersedia maka kita bisa membuat dulu seperti perintah berikut!
- Jika sudah terbuat maka role tersebut telah ada pada seperti gambar berikut!
- Selanjutnya alter table bisa digunakan sebagai mengganti default dari tablespace
dari database testhrdb, anda bisa melihat gambar berikut, pada gambar tablespace
hr_default belum ada maka dari itu kita buat terlebih dahulu tablespace nya.
- Tablespace dari hr_default telah dibuat dan masukkan kembali perintah alter yang
di atas tadi untuk menjadikan tablespace hr_default sebagai defaultnya.
13
c. Rename Database
- Rename database merupakan satu statement yang digunakan bareng dengan alter
table biasa digunakan untuk mengubah suatu nama database. Pada contoh ini
database testdb2 diubah menjadi testhrdb
d. Drop Database
- Drop database merupakan statement yang digunakan untuk menghapus suatu
database, pada drop database anda bisa menggunakan opsi IF EXIST yang
berfungsi sebagai pencegah kesalahan dan ada bisa menggunakan opsi FORCE
sebagai opsi yang mengakhiri semua koneksi yang ada ke database target.
- Kita ingin menghapus database hr yang telah ada maka kita gunakan perintah
berikut,matikan/disconnect terlebih dahulu agar database tidak dalam keadaan aktif
lalu ketikkan di cmd drop database maka jika sudah berhasil muncul pesan drop
database yang tandanya berhasil, perhatikan gambar!
14
e. Copy Database
- Terdapat 2 opsi dalam copy database yaitu anda bisa menyalin database dengan
nama server yang sama dan dapat menyalin database dari satu server ke lainnya.
- Contoh menyalin database dengan nama server yang sama
- Jika pesan di atas muncul itu berarti database dalam keadaan aktif, anda bisa
menggunakan query berikut jika database tersebut dalam keadaan aktif dan ulangi
perintah yang tadi maka database berhasil dibuat.
- Selanjutnya anda dapat menyalin database dari satu server ke lainnya. Ini digunakan
saat ukuran database terlalu besar dan koneksi antar server terlambat maka dapat
membuang database sumber ke file, menyalin file ke server jauh, dan
memulihkannya
15
- Gunakan perintah pg_relation_size() untuk mengambil ukuran dari table actor yang
ada pada database dvdrental
- Anda juga bisa menggunakan fungsi pg_size_pretty() untuk yang lebih mudah di
baca, karena pg_size_pretty() menggunakan format byte, Kb, Mb, Gb atau Tb.
- pg_relation_size() hanya menghitung ukuran tabel saja, tidak termasuk indeks atau
objek tambahan. Untuk mendapatkan total semua ukuran anda bisa menggunakan
pg_total_relation_size()
16
- pada gambar berikut merupakan contoh mencari ukuran tabel beserta indeks
terbesar yang ada pada database dvdrental.
- Contoh mengambil ukuran database, anda bisa menggunakan fungsi
pg_database_size untuk mengambil ukuran dari database dvdrental
- Ada juga perintah jika ingin melihat ukuran seluruh database yang ada pada server,
yaitu menggunakan perintah berikut.
17
- Contoh untuk mengambil ukuran dari value maka menggunakan fungsi
pg_column_size() dengan implementasi sebagai berikut.
2. Managing Schemas
a. Schema
- Database Schema adalah framework atau blueprint yang digunakan oleh para
programmer untuk membangun dan menulis kode database. Schema bisa membantu
user database memahami informasi yang disimpan. kerangka kerja yang
menentukan struktur logis dari database termasuk tabel, kolom, jenis data, dan
hubungan antar tabel. Schema adalah panduan bagi database untuk mengatur dan
memvalidasi data yang dimasukkan. Tanpa schema, penyimpanan data akan
menjadi tidak teratur dan sulit dikelola. Di PostgreSQL, schema dapat berupa
kumpulan objek database bernama, termasuk tabel, tampilan, indeks, tipe data,
fungsi, prosedur tersimpan, dan operator. setiap database memiliki setidaknya satu
schema, yaitu schema bawaan yang "public". Schema ini secara default adalah
tempat di mana objek-objek baru akan dibuat jika tidak ditentukan secara eksplisit
oleh pengguna.
- Untuk mengakses objek dalam skema, yang pertama adalah mengkualifikasi objek
tersebut dengan menggunakan sintaks berikut :
- Sebagai contoh Sebuah database mungkin berisi satu atau lebih skema. Namun,
suatu skema hanya dimiliki oleh satu database. Selain itu, dua skema dapat
memiliki objek berbeda yang memiliki nama yang sama. Misalnya, jika memiliki
skema sales yang memiliki tabel staf dan skema publik yang juga memiliki tabel
staf. Ketika mengacu pada tabel staf, maka anda harus memenuhi syarat sebagai
berikut:
18
- Public schema merupakan schema otomatis yang dibuat oleh postgresSQL untuk
setiap database baru, Apapun objek baru yang dibuat tanpa menentukan nama
skema, maka PostgreSQL akan menempatkannya ke dalam skema publik. Oleh
karena itu cara penggunaan nya dapat seperti ini!
- Contoh penggunaan schema pada database postgres, Pertama jika akan merujuk ke
tabel tanpa nama skemanya, misalnya tabel staf, bukan nama yang sepenuhnya
memenuhi syarat seperti tabel staf schemas. PostgreSQL mencari tabel tersebut
menggunakan jalur pencarian skema, yang merupakan daftar skema untuk dicari.
PostgreSQL akan mengakses tabel pertama yang cocok di jalur pencarian skema.
Jika tidak ada kecocokan, ia akan mengembalikan kesalahan, meskipun nama
tersebut ada dalam skema lain di database. Schema pertama dalam jalur pencarian
disebut skema saat ini. Anda dapat menggunakan Fungsi current_schema() untuk
mengembalikan skema saat ini:
- Show search_path digunakan sebagai perintah untuk mencari jalur schema yang
digunakan saat ini pada database postgres.
- Untuk membuat schema baru anda bisa menggunakan fungsi berikut. Dalam hal ini
maka SCHEMA sales telah terbuat
19
- Membuat tabel baru bernama staff tanpa menentukan nama skema, PostgreSQL
akan memasukkan tabel staff ini ke dalam schema sales bukan schema public
karena kita telah mengset sebelumnya untuk tujuan ke schema sales:
- Maka tabel staff pada schema sales telah terbuat, untuk melihat isi dari table staff
yang telah dibuat pada schema sales gunakan perintah berikut.
- Contoh lain pengguna juga bisa membuat hanya dapat mengakses objek dalam
skema yang mereka miliki(privileges). Artinya tidak ada yang dapat mengakses
objek apa pun dalam skema yang bukan miliknya. Untuk mengizinkan pengguna
mengakses objek dalam skema yang bukan miliknya, maka harus memberikan hak
istimewa USAGE skema kepada pengguna, pada contoh kita memberikan pada
schema sales ke role hr.
- Untuk mengizinkan pengguna membuat objek dalam skema yang bukan miliknya,
maka menggunakan CREATE skema untuk membuatnya dengan cara masukkan
tujuan ke user/pengguna database.
20
b. Create Schema
- Contoh membuat schema baru anda bisa menggunakan perintah CREATE, disini
membuat schema baru yaitu marketing.
- Query berikut ini melihat schema yang ada pada server yang digunakan.
- Contoh membuat schema baru untuk pengguna baru, dengan cara membuat role
baru terlebih dahulu.
- Selanjutnya cara membuat schema baru untuk role john, dengan perintah berikut.
- Buat schema baru bernama doe yang akan dimiliki oleh john:
21
- Pada contoh diatas kita membuat schema scm dengan object yang beserta table
deliveris dan view.
c. Alter Schema
- Alter schema berfungsi untu mengubah definisi dari schema seperti mengubah
nama schema, contohnya merename schema doe yang dibuat tadi menjadi finance
dan john menjadi accounting.
- Selanjutnya anda juga bisa mengubah pemilik schema finance dari role john ke
pengguna postgres dengan perintah berikut, masuk terlebih dahulu ke schema yang
di inginkan beserta pemilik penggunanya.
22
- Maka saat ini skema finance sekarang dimiliki oleh pemilik dengan id 10, yaitu
postgres.
- Selanjutnya anda dapat juga merubah pemilik dari schema acoounting, dengan
perintah barikut, lalu makan acoounting menjadi milik pengguna postgres dengan id
10 juga.
d. Drop Schema
- Dop schema merupakan perintah untuk menghapus skema dan semua objeknya dari
database. Contohnya ingin menghapus schema accounting, perhatikan gambar
berikut.
- Anda juga dapat menghapus beberapa schema sekaligus dengan perintah berikut
- Untuk menghapus contoh skema yang tidak kosong terdapat perintah tambahan
yaitu cascade, contoh perhatikan gambar berikut. Schema scm memiliki isi data jika
ingin mengahpusnya maka gunakan perintah cascade jika tidak maka dia akan eror.
23
3. Managing Tablespaces
a. Creating Tablespaces
- Tablespace adalah lokasi disk tempat PostgreSQL menyimpan file data yang berisi
objek database seperti indeks dan tabel. PostgreSQL memiliki dua tablespace
default yaitu pg_default sebagai menyimpan data user dan pg_global sebagai
menyimpan data global.
- Tablespace berfungsi sebagai mengontrol tata letak disk PostgreSQL. Ada dua
keuntungan utama menggunakan tablespace. Pertama, jika partisi tempat cluster
diinisialisasi kehabisan ruang, maka dapat membuat tablespace baru di partisi
berbeda dan menggunakannya hingga anda mengkonfigurasi ulang sistem. Kedua,
dapat menggunakan statistik untuk mengoptimalkan kinerja database. Misalnya,
menempatkan indeks atau tabel yang sering diakses pada perangkat berperforma
cepat seperti ssd, dan menyimpan data arsip yang jarang diakses pada perangkat
yang lebih lambat.
- Contoh penggunaan Create Tablespace yang pertama perlu membuat sebuah
direktori terlebih dahulu sebagai path yang dituju. Contoh membuat folder primary
di local disk C, maka query nya seperti berikut ini membuat sebuah tablespace.
- Maka tablespace ts_primary telah dibuat dan berlokasi di folder primary, masukkan
perintah \db untuk melihat.
- Untuk melihat lengkap dengan ukuran data yang ada pada tablespace anda juga bisa
menggunakan perintah \db+
24
- Selanjutnya anda dapat membuat database yang menggunakan/di dalam tablespace
ts_primary tadi dengan menggunakan perintah berikut.
- Maka database logistik berada pada tablespace dari ts_primary, selanjutnya anda
juga dapat membuat sebuah tabel beserta isiannya.
- Cek data tabelspace menggunakan perintah berikut atau cek data melalui pgadmin
b. Changing Tablespaces
- Changing Tablespaces merupakan cara untuk mengganti/mengubah nama, pemilik
atau parameter yang ada pada tablespace menggunakan perintah Alter Tablespace.
- Contoh penggunaan ingin merubah nama tablespace ts_primary menjadi dvdrental
maka gunakan perintah berikut
25
c. Delete Tablespaces
- Deleter tablespace merupakan fungsi untuk menghapus tablespaces yang ada
menggunakan perintah Drop Tablespace, disini kita akan menghapus tablespace
dari dvdrental maka gunakan perintah berikut
- Ketika ingin di drop tetapi eror ternyata tablespace dalam keadaan tidak kosong
maka gunakan query berikut masuk dulu ke dalam pemilik dengan perintah \c lalu
ulangin perintah drop nya.
- Maka dalam perintah diatas akan membuat sebuah role useradmin, selanjutnya
untuk mengambil/menggunakan peran di server PostgreSQL saat ini, dapat
melakukan kueri dari katalog sistem pg_role sebagai berikut dengan outputnya:
26
- Dan untuk melihat role yang ada dibuat dapat menggunakan perintah \du
- Selanjutnya atribut peran / role attribut, Atribut peran menentukan hak istimewa
untuk peran tersebut, termasuk login, status pengguna super, pembuatan basis data,
pembuatan peran, manajemen kata sandi, dan sebagainya. Perhatikan perintah
membuat role atribut berikut bernama alice yang memiliki hak akses masuk dan
kata sandi awal:
Sekarang, Anda dapat menggunakan role alice untuk masuk ke server basis data
PostgreSQL menggunakan alat klien seperti dibawah ini dan memasukkan sandi
create role tadi
- Anda juga dapat membuat role dengan memiliki masa yang berlaku
- Anda juga bisa membuat role dengan memiliki connection limit atau batas koneksi
pada role tersebut.
b. Grant
- Grant merupakan pemberian hak istimewa pada objek basis data ke suatu role,
Setelah membuat role dengan atribut LOGIN, role dapat masuk ke server database
PostgreSQL. Namun, role tidak dapat melakukan apa pun pada objek database
27
seperti tabel, tampilan, fungsi, dll. Sebagai contoh, role tidak dapat memilih data
dari tabel atau menjalankan fungsi tertentu.
- Untuk mengizinkan role berinteraksi dengan objek database, Anda perlu
memberikan hak istimewa pada objek database kepada role menggunakan
pernyataan GRANT. Dengan membuat dulu role lalu membuat table isi dari role.
- Kita tadi telah membuat role john dan buat table seperti berikut.
- Masuke ke dalam role john deengan perintah psql -U john dan data dari tabel
kandidiat dengan perintah berikut.
- Maka akan muncul pemberitahuan bahwa role john tidak memiliki hak istimewa,
berikan hak istimewa dengan perintah berikut.
- Memberikan semua hak istimewa pada semua tabel dalam skema kepada suatu
peran, Pernyataan berikut ini memberikan semua hak istimewa pada semua tabel
dalam skema publik database sampel dvdrental kepada role john:
- Memberikan role readonly yang hanya dapat memilih data dari semua tabel dalam
skema tertentu. Untuk melakukannya, Anda dapat memberikan hak istimewa
SELECT pada semua tabel dalam skema publik seperti ini
28
c. Revoke
- Revoke merupakan perintah untuk menghapus hak istimewa dari suatu role.
Pernyataan revoke mencabut hak istimewa yang diberikan sebelumnya pada objek
basis data dari suatu peran. Berikut cara penggunaannya.
- Masuk ke dalam user postgres dan database dari dvdrental yang telah ada
- Buat role baru dengan menggunakan login password
d. Alter role
- Alter role berfungsi sebagai untuk memodifikasi atribut peran. Berikut adalah
perintah dari pernyataan
- Jika Anda menggunakan role untuk masuk ke server basis data PostgreSQL dan
mengganti nama role tersebut dalam sesi saat ini(active), maka pesan kesalahan
akan muncul.
- Anda juga dapat mengubah default sesi peran untuk variable konfigurasi dengan
menggunakan perintah berikut
e. Drop role
- Drop role berfungsi sebagai perintah menghapus atribut role, berikut cara
penggunaan nya
- Membuat role dan dan database baru
29
- Berikan hak istimewa bernama creatdb pada role alice
- Berikan juga semua hak istimewa pada database sales ke role alice
- Selanjutnya gunakan role baru tadi untuk membuat database object, dengan perintah
berikut
30
- Selanjutnya jika muncul pesan seperti ini tandanya Role alice tidak dapat dibatalkan
karena memiliki objek yang bergantung.
- Selanjutnya lakukan drop yang dimiliki object oleh role dengan perintah berikut dan
lakukan perintah drop role kembali.
f. Role Membership
- Role membership adalah peran yang berfungsi sebagai wadah untuk peran individu
lainnya. Tidak seperti peran individu, yang biasanya mewakili pengguna, peran
grup digunakan untuk mengelola koleksi peran. Biasanya, Anda membuat peran
untuk mewakili grup dan kemudian memberikan keanggotaan dalam peran grup
kepada peran individu. Anda dapat mengelompokkan peran-peran ini ke dalam
sebuah grup, memberikan hak istimewa kepada peran grup, dan semua anggota
peran grup tersebut akan mewarisi hak istimewa tersebut.
- Peran grup dapat memiliki peran individu atau peran grup lain sebagai anggotanya.
Hal ini memungkinkan Anda untuk membuat struktur hierarki di mana Anda dapat
mengelola hak istimewa pada tingkat yang berbeda.
- Peran individu dapat menjadi anggota beberapa peran grup. Hal ini memungkinkan
penetapan izin dan peran yang fleksibel di dalam database.
- Membuat peran grup dapat menggunakan perintah berikut, for example groupu role
bernama alice
31
- Maka role alice akan secara otomatis mewarisi semua hak istimewa dari role grup
penjualan jika role alice memiliki atribut INHERIT.
- Selanjutnya berikan hak akses pada tabel rental dari database sales
- Jika sudah silahkan exit dan masuk kembali ke role alice database dvdrental
- Tampilkan data yang ada pada dvdrental dan liat hasil data grouping nya
g. Set Role
- Set Role digunakan untuk mengubah peran saat ini secara sementara dalam sesi
database
- Contoh penggunaannya
32
- Buat role lily baru di dalam role marketing sebagai member
- Pada saat di dalam menggunakan role anda bisa mengganti sesi role saat ini
menggunakan perintah berikut
h. Current_user
- Current_user adalah fungsi yang mengembalikan nama pengguna database yang
sedang login. Berikut cara penggunaannya
- Perintah Tampilkan sesi saat ini yang sedang login
i. List Roles
- List roles berfungsi sebagai perintah menampilkan seluruh user account di server
database PostgreSQL saat ini, perintah menampilkannya dapat \du atau \du+
j. Superuser
- Superuser adalah peran khusus dengan hak istimewa tertinggi. Superuser memiliki
akses penuh ke semua database dan tabel. Selain itu, superuser dapat melakukan
tugas-tugas administratif seperti membuat basis data, menghapus basis data,
mengelola peran pengguna, memodifikasi konfigurasi basis data, dan sebagainya.
- Secara default, PostgreSQL memiliki peran superuser yang disebut postgres.
Biasanya, Anda menggunakan peran pengguna postgres untuk melakukan tugas-
tugas administratif dan tidak perlu membuat pengguna tambahan dengan hak
superuser.
33
- Namun, jika Anda membutuhkan peran superuser tambahan, Anda dapat
membuatnya menggunakan pernyataan Create role atau mengubah pengguna biasa
menjadi superuser menggunakan pernyataan Alter role. Berikut perintah untuk
memberikan superuser
- Selanjutnya buat table baru row level security menggunakan create policy
- Perhatikan bahwa pengguna super dan peran dengan atribut BYPASSRLS dapat
melewati sistem keamanan baris saat mengakses tabel. Untuk memberlakukan
keamanan tingkat baris kepada pemilik tabel, Anda dapat memodifikasi tabel
menggunakan opsi FORCE ROW LEVEL SECURITY:
34
- Masukan data
- Berikan hak istimewa SELECT dari semua tabel dalam skema publik kepada
manajer role grup
- Buat tiga role baru alice, bob, peter dan tetapkan mereka sebagai anggota role grup
manajer
- Buat kebijakan bahwa pengguna saat ini dapat mengakses baris yang nilainya di
kolom manajer pada tabel departemen sesuai dengan nama role saat ini
35
- Sambungkan ke database hr menggunakan role alice dalam sesi terpisah
36
- Selanjutnya cara menggunakan pg_dumpall yaitu
- Perintah ini akan meminta Anda memasukkan kata sandi untuk setiap basis data
dalam server PostgreSQL. Untuk menyembunyikan prompt kata sandi, Anda dapat
menggunakan opsi -w
- Terakhir anda juga bisa mencadangkan objek basis data menggunakan utilitas
pg_dumpall. Terkadang, Anda hanya ingin mencadangkan definisi objek database,
bukan datanya. Hal ini sangat membantu dalam tahap pengujian, di mana Anda
tidak ingin memindahkan data pengujian ke sistem live. Untuk mencadangkan
objek di semua basis data, termasuk peran, ruang tabel, basis data, skema, tabel,
indeks, pemicu, fungsi, batasan, tampilan, kepemilikan, dan hak istimewa
perhatikan perintah berikut.
- Jika Anda ingin mencadangkan definisi roles saja, gunakan perintah berikut
Analisa :
Pada praktikum ini pembahasan langkah kerja pengenalan postgresSQL dirincikan
dengan lengkap mulai saat proses donwload file hingga pengenalan adiministrasi penting
yang ada pada postgresql, setiap langkah-langkah pengerjaan dilakukan secara terurut untuk
memahami pengenalan postgresSQL bagi pemula.
Dalam membangun sebuah server dibutuhkan 2 aplikasi yaitu PostgreSQL sebagai
database servernya dan DBeaver sebagai klien Tools DBMS untuk mengelola berbagai jenis
data rasional maupun non-rasional pada PostgresSQL. Kita dapat mengubungkan server
postgres melalui PgAdmin 4 tools DBMS bawaan postgres atau dengan DBeaver, dengan
mempelajari cara managing database, managing schema, managing tablespace, managing
roles & privileges serta backup kita dapat mengetahui fungsi-fungsi dari apa itu sebuah
administrasi dalam database server.
37
BAB III
PENUTUP
A. KESIMPULAN
Mempelajari pengenalan penggunaan PostgresSQL merupakan sebagai
seorang yang ahli ingin menjadi Administrasi Basis Data untuk mengelola sebuah
suatu server. PostgresSQL memudahkan para administrasi karena memiliki fitur-fitur
yang kuat dalam pengelolaan, diantara lain kita dapat mengetahui dan memahami
bagaimana cara mengelola sebuah database, schemas dan tablespace pada sebuah
server.
38
BAB IV
DAFTAR PUSTAKA
39