Kamis, 26 Desember 2019

Oracle pembuatan user

Tutorial Database Oracle Chapter2 Pembuatan User dan Kontrol Hak Akses

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 : 
1
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 
sql_awal
atau jika sudah masuk pada SQL*Plus .. tinggal masukan statement berikut ,
1
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 : 
1
SQL> SHOW USER;
setelah masuk ke dalam system kemudian buatlah sebuah skema baru ...
dengan perintah 
1
2
3
4
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 
1
SQL> ALTER USER hrd IDENTIFIED BY orcl;
untuk menampilkan seluruh user yang terdapat di dalam database , gunakan perintah berikut 
1
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 :
1
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 : 
1
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 SESSION : privileges agar user dapat berhubungan / login ke database 
  • CREATE TABLE : privileges agar user dapat membuat tabel dalam skema user 
  • CREATE SEQUENCE :  privileges agar user dapat membuat sequence dalam skema user
  • CREATE VIEW : privileges agar user dapat membuat view dalam skema user 
  • CREATE PROCEDURE : privilgese agar user dapat membuat stored procedure dalam skema user  
Untuk mengetahui Semua Jenis Privilege yang ada, gunakan perintah berikut : 
1
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 : 
1
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 : 
1
2
3
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 : 
1
2
3
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 ..
1
SQL> disconnect;
 setelah itu kita login dengan user hrd , gunakan perintah berikut :
1
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 :
1
2
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 :
1
SQL> DESC employees;
atau gunakan perintah berikut :  
1
SQL> DESCRIBE employees;
untuk melihat keseluruhan isi record atau data yang dimiliki oleh suatu tabel gunakan perintah berikut : 
1
SQL> select * from employees;
untuk menampilkan nama tabel yang dimiliki oleh suatu user bisa menggunakan perintah : 
1
SQL> select table_name from user_tables;
jika ingin menghapus sebuah tabel gunakan perintah berikut : contoh dibawah ini adalah untuk menghapus tabel locations
1
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

Tidak ada komentar:

Posting Komentar