Administrasi User

Pada postingan kali ini saya akan membahas tentang administrasi user di Oracle.Pada saat kita membuat database, maka secara otomatis oracle akan membuat user sys dan system. User sys bisa melakukan apa saja, oleh karena itu disebut super user. User system digunakan untuk administrasi database sehari-hari, misalnya membuat user, tablespace dan lain-lain. Untuk keamanan/ security maka dari itulah kita perlu melakukan administrasi user. Daripada kita terus berteori mari kita coba praktekan administrasi user di database oracle. Sebelum kita membuat user kita koneksikan dulu database kita, bagi yang belum tahu caranya silahkan baca postingan saya tentang memulai koneksi ke database, setelah itu mari kita mulai administrasi usernya :

A. CREATE USER (MEMBUAT USER)
  • Pertama kita masuk sebagai user system

    sqlplus system/latihan@latihann
  • Lalu kita coba membuat user paling sederhana ( disini saya membuat user dengan nama COBA dan password COBA )
    CREATE USER COBA IDENTIFIED BY COBA;

  • Karena tidak di-specify, maka atribut-atribut yang lainnya memakai nilai default. Untuk melihatnya lihat di view dba_users :

  • select * from dba_users where username='COBA';

    Hasilnya :

      USERNAME: COBA
      ACCOUNT_STATUS : OPEN
      EXPIRY_DATE :
      DEFAULT_TABLESPACE : USERS
      TEMPORARY_TABLESPACE : TEMP
      PROFILE : DEFAULT
      INITIAL_RSRC_CONSUMER_GROUP : DEFAULT_CONSUMER_GROUP


  • Setelah itu coba kita masuk menggunakan user yang tadi kita buat

    SQL> conn COBA/COBA;
    ERROR:
    ORA-01045: user COBA lacks CREATE SESSION privilege; logon denied

    Error diatas menyatakan bahwa user COBA tidak bisa melakukan koneksi, mari kita beri grant ke user COBA
  • Kita masukan script berikut untuk meberi grant untuk koneksi :

    SQL> grant connect to COBA;
  • Nah sekarang kita coba untuk koneksi ke database

    SQL> conn COBA/COBA;
    connected.
  • Setelah itu kita beri hak untuk membuat tabel

    SQL> grant create table to rohmad;
  • Setelah itu kita coba membuat table dengan user coba

    SQL> create table tabel_testing (no number);
    ERROR at line 1:
    ORA-01950: no privileges on tablespace 'USERS'

    Wah ternyata error. Walaupun default tabelspace untuk user COBA adalah tablespace USERS, ternyata user coba tidak bisa membuat table(menulis) di tablespace USERS. Coba kita beri qouta ke user COBA, bisa specify atau unlimited (disini saya mencontohkan menggunakan unlimited )
  • Sebelum mengubah tablespace user kita harus masuk dahulu sebagai user system untuk bisa mengubah tablespace user, lalu kita tuliskan script berikut untuk mengubah tablespace user

    SQL> alter user COBA quota unlimited on USERS;
  • Lalu kita masuk lagi sebagai user COBA, lalu kita coba buat table lagi :

    SQL> create table tabel_testing (no number);
  • Table created.


  • Berhasilllllll

  • Untuk bisa membuat view, index dll, user COBA harus diberi grant, bisa dibayangkan berapa banyak privileges yang harus kita berikan (grant). Dalam oracle ada sebuah role yang berisi beberapa (banyak) privileges. Contoh role RESOURCE berisi grant untuk membuat table, membuat index, quota unlimited di default tablespace, dan lain-lain. Berilut adalah perintah untuk memberi grant resource :

    SQL> grant RESOURCE to rohmad;
  • Pada umumnya kita tinggal memberikan grant connect dan grant resource kepada user yang baru agar dia bisa melakukan banyak pekerjaan dilingkungan database yang kita buat, tapi kalo saya lebih sering menggunakan script berikut untuk meberi hak kepada user karena menurut saya lebih mudah :

    SQL> GRANT ALL PRIVILEGES, DBA TO COBA;
B. ALTER USER ( MENGUBAH USER )
  • Semua atribut user bisa diubah (alter) kecuali username itu sendiri. Secara umum perintah alter sama dengan create, hanya mengganti kata create menjadi alter. Contoh:

    SQL> alter user COBA identified by COBA2;
C. DROP USER ( MENGHAPUS USER )
  • Untuk menghapus user kita tinggal menuliskan script berikut :

    SQL> drop user COBA;
  • Tetapi jika user tersebut memiliki object ( misalkan tabel ), maka akan muncul pesan berikut :

    ORA-01922: CASCADE must be specified to drop 'COBA'
  • Untuk itu kita perlu menambahkan parameter CASCADE untuk menghapus sekaligus semua object yang dimiliki user tersebut :

    SQL> drop user COBA CASCADE;

Nah sekian dulu postingan administrasi user yang cukup panjang ini, semoga bisa bermanfaat buat anda semua.




Previous
Next Post »

1 komentar:

Write komentar
Unknown
AUTHOR
27 April 2015 at 05:02 delete

Jasa Pembuatan Ijazah
• Bagi yang ingin selesai cepat tapi mengalami masalah dengan nilai yang bobrok !
• Ingin mencari kerja tapi terkendala dengan ijazah !
• Bagi para pejabat yang ingin memiliki kedudukan di legislatif tapi terkendala dengan ijazah !
Kami PT. Marta Dinata hadir di hadapan anda untuk mengulurkan tangan kepada sodar(i) ku agar cita-cita dan harapan bisa terwujud secepatnya, kami siap membantu anda semaksimal mungkin untuk mendapatkan ijazah dari Universitas dan Perguruan Tinggi yang anda inginkan.
Ijazah yang kami buat adalah ijzah asli dari Kampus yang sudah Terakreditasi dan diakui oleh DIKTI (Direktorat Jendral Pendidikan Tinggi). Oleh karena itu bagi yang berminat, khususnya yang ingin cepat-cepat mendapatkan pekerjaan silahkan langsung hubungi kami di no : 021-5035 7999 / 0822 9194 0095 atau kunjungi website resmi kami www.ptmartadinata.com

Reply
avatar