30 Okt 2013

Worksheet 1 - PostgreSQL


Di Worksheet ini, diminta membuat database serta table-table didalamnya, membuat hak akses dan memberikan hak akses kepada user lainnya.

yuuuu, simak bareng-bareng perintahnya ..... :)

1. Buat Database & Tabel                                                         

mysql> create database dbkaryawan;
Query OK, 1 row affected (0.04 sec)

mysql> use dbkaryawan;
Database changed

mysql> create table departemen (
    -> id integer auto_increment primary key,
    -> kode varchar(10),
    -> nama varchar(45),
    -> alamat varchar(45),
    -> budget double,
    -> nipmanager varchar(10)
    -> );
Query OK, 0 rows affected (0.17 sec)

mysql> create table pegawai (
    -> nip varchar(10) primary key,
    -> nama varchar(45),
    -> tmp_lahir varchar(45),
    -> tgl_lahir date,
    -> cv text,
    -> anak integer,
    -> gaji_pokok double,
    -> tunjangan double,
    -> departemen_id int,
    -> foreign key (departemen_id) references departemen(id)
    -> );
Query OK, 0 rows affected (0.17 sec)

------------

2. Untuk simulasi testing akses data, isi record departemen dengan 5 record dan pegawai 10 record                                                                 

mysql> insert into departemen values (default, 'FA', 'Finance Accounting', 'Jl. Margonda Raya No. 522', 100000000, '99901123');
Query OK, 1 row affected (0.05 sec)

mysql> insert into pegawai values ('88210291', 'Achmad Ilham', 'Jakarta', '1985-09-02', 'Software Engineer', 1, 2000000, 300000, 1);
Query OK, 1 row affected (0.05 sec)

------------

3. Database karyawan dan isinya hanya dapat diakses oleh user satpamdb dari server database saja 

mysql> grant all privileges on dbkaryawan.* to satpamdb@localhost identified by 'satpamdb';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

------------

4. Database karyawan dan isinya dapat diakses melalui jaringan dari komputer managerhrd yang berada diruang manager HRD

mysql> grant all privileges on dbkaryawan.* to managerhrd@192.168.1.8 identified by 'managerhrd';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

------------

5. Terdapat beberapa staff HRD yang dapat mengakses database dari komputer masing   -masing melalui jaringan komputer, dengan rincian tugas:

- staff1 yang bertugas memaintain data pegawai dan tidak bisa mengakses data departemen :

mysql> grant all privileges on dbkaryawan.pegawai to staff1@192.168.1.2 identified by 'staff1';
Query OK, 0 rows affected (0.00 sec)

- staff2 yang bertugas memaintain data departemen dan tidak bisa mengakses data pegawai :
    
mysql> grant all privileges on dbkaryawan.departemen to staff2@192.168.1.3 identified by 'staff2';
Query OK, 0 rows affected (0.00 sec)

- staff3 hanya dapat melihat isi data pegawai : nip,nama,tgl_lahir,tmp_lahir dan data departemen : nama,alamat,nipmanager

mysql> grant select(nip,nama,tgl_lahir,tmp_lahir) on dbkaryawan.pegawai to staff3@192.168.1.4 identified by 'staff3';
Query OK, 0 rows affected (0.00 sec)

mysql> grant select(nama,alamat,nipmanager) on dbkaryawan.departemen to staff3@192.168.1.4 identified by 'staff3';
Query OK, 0 rows affected (0.00 sec)

- staff4  mendapat tugas untuk menambah data, mengubah data, melihat seluruh data pegawai dan tidak bisa menghapus data pegawai

mysql> grant insert,update,select on dbkaryawan.pegawai to staff4@192.168.1.5 identified by 'staff4';
Query OK, 0 rows affected (0.00 sec)


Alhamdulillah selesai ^_^

0 komentar:

Posting Komentar