Tutorial Database Oracle Chapter2 Pembuatan User dan Kontrol Hak Akses Oleh: Ardie Jocong
Pada Tutorial kedua ini saya akan menjelaskan Bagaimana Membuat Schema atau User di SQL Plus .. ini dia langkah -langkahnya... MASUK KE SYSTEM dengan USERNAME : system ,PASSWORD : ORACLE; connect / as sysdba Connected. SQL setelah masuk ke dalam system kemudian kita...
Pada Tutorial sebelumnya saya telah mencoba menjelaskan bagaimana Langkah-langkah Instalasi Database Oracle 11g Release 2..bisa dilihat disini.... nah pada tutorial Chapter2 ini saya akan memberikan sedikit ilmu bagaimana Membuat User dan Kontrol Hak akses di SQL*Plus..
1. Pembuatan USER Untuk membuat sebuah user/schema baru , statement yang harus digunakan adalah : CREATE USER user EDINTIFIED BY password; Schema yang berhak untuk bisa membuat user adalah SYS atau SYSTEM atau schema yang sudah diberi privilage untuk CREATE USER. untuk membuat user baru caranya login dulu di editor SQL*Plus dengan melakukan perintah /as sysdba seperti terlihat pada gambar berikut
atau jika sudah masuk pada SQL*Plus .. tinggal masukan statement berikut , SQL> connect / as sysdba jika meminta password isikan password sesuai dengan password yang diisi pada awal penginstalan .. password yang saya gunakan adalah ORACLE. untuk mengetahui nama user yang telah terkoneksi gunakan perintah berikut : SQL> SHOW USER; setelah masuk ke dalam system kemudian buatlah sebuah skema baru ... dengan perintah SQL> create user hrd -- hrd adalah username identified by oracle -- oracle adalah sebuah password default tablespace users
quota 10M on users; untuk mengubah password dari suatu user, maka gunakan perintah ALTER USER username IDENTIFIED by new_password; contoh password HRD yang semula oracle diubah menjadi orcl SQL> ALTER USER hrd IDENTIFIED BY orcl; untuk menampilkan seluruh user yang terdapat di dalam database , gunakan perintah berikut SQL> select * from all_users; untuk menghapus user maka gunakan perintah DROP USER nama_user , misalkan kita akan menghapus user HRD, maka tinggal lakukan perintah : SQL> DROP USER hrd; Untuk mengubah password maupun menghapus user dilakukan oleh user SYS atau SYSTEM, tapi jika user sudah mempunyai objek, akan dihapus maka harus ditambahkan perintah CASCADE . Misalkan user HRD sudah memiliki Objek maka maka tambahkan perintah CASCADE, perintah nya menjadi : SQL> DROP USER hrd CASCADE;
2. Privileges Privileges sama dengan Hak akses..di dalam Database Oracle, DBA bisa memberikan system privileges kepada user lain. Privileges dibagi 2 jenis yaitu system privileges dan object privileges. System Privileges adalah hak akses terhadap database. sedangkan Object Privileges adalah hak untuk memanipulasi isi dari record database. 2.1. USER SYSTEM PRIVILEGES user system privileges yang bisa diberikan DBA ke suatu user diantaranya sebagai berikut : ● ● ● ● ●
CREATE CREATE CREATE CREATE CREATE
SESSION : privileges agar user dapat berhubungan / login ke database TABLE : privileges agar user dapat membuat tabel dalam skema user SEQUENCE : privileges agar user dapat membuat sequence dalam skema user VIEW : privileges agar user dapat membuat view dalam skema user PROCEDURE : privilgese agar user dapat membuat stored procedure dalam skema user
Untuk mengetahui Semua Jenis Privilege yang ada, gunakan perintah berikut : SQL> SELECT distinct privilege FROM dba_sys_privs; langsung aja ke contoh penggunaannya ... misalkan DBA akan memberikan system privileges ke user hrd dengan system privileges antara lain untuk bisa berhubungan dengan database / login ke database , lalu user hrd bisa melakukan pembuatan table dan pembuatan index....
lakukan perintah berikut : SQL> grant create session, create table, create indextype to hrd; kemudian kita akan memberikan hak akses kepada user hrd agar bisa membuat table employees, departments , dan locations yang dimiliki oleh user HR, dengan melakukan perintah berikut : SQL> GRANT select on hr.employees to hrd; perintah diatas adalah memberikan hak akses untuk pembuatan table dengan nama empoloyees yang dimiliki oleh user HR. 2.2. User Object Privileges Objek privilege dapat diberikan ke user atau role. setelah user diberi system privilege , user tersebut hanya bisa melakukan Data Definition Language, namun belum bisa melakukan Retrieval maupun Data Manipulation Language (INSERT, UPDATE, DELETE) ke suatu tabel. agar user bisa melakukan DML, maka berilah object privileges. ● ● ● ● ● ● ● ●
ALTER : privilege untuk mengubah struktur tabel atau ijin DELETE : privilege untuk menghapus data EXECUTE : privilege untuk mengeksekusi stored procedure, function, package INDEX : privilege untuk membuat index berdasarkan kolom-kolom yang ada di tabel INSERT : privilege untuk melakukan INSERT REFERENCES : privilege untuk membuat foreign key suatu kolom di tabel SELECT : privilege untuk melihat data UPDATE : privilege untuk melakukan perubahan data
contoh penggunaan, misalkan SYSTEM akan memberikan Hak Akses terhadap User HRD, agar bisa melakukan manipulasi terhadap tabel employees.. gunakan perintah berikut : SQL> GRANT SELECT,INSERT,UPDATE,DELETE ON hr.employees TO hrd;
3. Login Sebagai User Untuk melakukan login sebagai skema yang telah dibuat sebelumnya , lakukan logout terlebih dulu dari user sys atau system,. dengan statement berikut .. SQL> disconnect; setelah itu kita login dengan user hrd , gunakan perintah berikut : SQL> connect hrd;
jika meminta password , isikan dengan oracle (sesuikan dengan password pada saat pembuatan user baru).. setelah itu kita akan membuat beberapa tabel baru dengan mengambil dari tabel yang dimiliki oleh Skema HR berikut perintahnya : SQL> create table employees as select * from hr.employees; perintah diatas adalah bagaimana membuat tabel dgn nama employees yg di ambil dari tabel employees milik HR, lakukan perintah yang sama untuk melakukan pembuatan tabel DEPARTMENT , dan LOCATIONS. dengan mengganti nama tabel employeesnya. kemudian setelah itu tampilkan struktur tabel yang dimiliki oleh table tertentu misalnya tabel employees, gunakan perintah berikut : SQL> DESC employees; atau gunakan perintah berikut : SQL> DESCRIBE employees; untuk melihat keseluruhan isi record atau data yang dimiliki oleh suatu tabel gunakan perintah berikut : SQL> select * from employees; untuk menampilkan nama tabel yang dimiliki oleh suatu user bisa menggunakan perintah : SQL> select table_name from user_tables; jika ingin menghapus sebuah tabel gunakan perintah berikut : contoh dibawah ini adalah untuk menghapus tabel locations SQL> drop table locations; Untuk tutorial Mengenai Database Oracle Chapter2 ini, saya rasa cukup..Saya akan membahas materi lebih lanjutnya pada tutorial-tutorial berikutnya... jika ada pertanyaan, kritik atau saran , Silahkan komen... dibutuhkan sekali kritik atau saran yang bersifat membangun.. untuk perbaikan terhadap tutorial-tutorial yang saya buat... Thanks. :)
Tentang Penulis Ardie Jocong let's we learn coding together ,.. Learning by doing.. cause the best way of learning about anything is by doing. explore your brain ..