Tutorial
-
Upload
fikri-akabar -
Category
Documents
-
view
212 -
download
0
description
Transcript of Tutorial
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
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
1234
SQL> create user hrd -- hrd adalah usernameidentified by oracle -- oracle adalah sebuah passworddefault tablespace usersquota 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 SYSatau 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 yaitusystem 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 :
123
SQL> GRANT selecton hr.employeesto 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 :
123
SQL> GRANT SELECT,INSERT,UPDATE,DELETEON hr.employeesTO 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 :
12
SQL> create table employeesas 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;