Praktikum Basis Data - Belajar Membuat Hak Akses dan Privileges User Database Mysql

Mysql ialah salah satu aplikasi standar dalam pengembangan website, dengan Web Server Apache, dan bahasa pemrograman PHP. Mysql merupakan salah satu aplikasi RDBMS (Relational Database Management System) yang memiliki keunggulan dengan RDBMS lainnya seperti diantaranya MYSQL memiliki kecepatan dan proses data yang besar dan kompleks, tanpa ada penurunan performa instalisasi.


Hak Akses dan Privileges User Database Mysql

Untuk mengatur hak akses di MYSQL, pada dasarnya kita bisa menggunakan perintah Grant dan Revoke. Bentuk umum perintah GRANT dan REVOKE contoh sederhana:
GRANT priv_type
ON {tabel_nama | * | *.* | db_nama.*}
TO user_name [IDENTIFIED BY 'password'] [WITH GRANT OPTION]
REVOKE priv_type
ON {tabel_name | * | *.* | db_name.*}
FROM pengguna_name2. 
Perintah Grant Dan Revoke digunakan untuk membuat user atau pengguna baru maupun mengatur hak akses user yang sudah ada dengan hak akses (privileges) tertentu. Tingkatan hak akses user dapat dibagi menjadi tingkat global (tersimpan di table mysql.user), database (tersimpan di table mysql.host dan mysql.db) table (tersimpan di table mysql.tables_priv) dan kolom (tersimpan ditable mysql.columns_priv)

Jadi setiap perubahan hak akses di MYSQL, termasuk menambahkan user baru dan, tidak akan berlaku sebelum di akhiri dengan perintah Flush Privileges. Privileges berfungsi supaya MYSQL membaca ulang database mysql dan semua perubahan yang ada di dalamnya tanpa restart ulang server MYSQL.

Berikut adalah hak-hak MYSQL yang dapat diberikan kepada user, yaitu:

No Hak Keterangan
1 ALL Memberikan akses penuh kepada seorang user kecuali perintah GRANT
2 alter Mengizinkan user untuk menggunakan perintah ALTER TABLE
3 ALTER ROUTINE Mengizinkan user untuk mengubah struktur (schema) dari sebuah fungsi tersimpan dan prosedur tersimpan
4 CREATE Mengizinkan user untuk membuat fungsi tersimpan perintah CREATE USER,DROP USER,RENAME USER,dan REVOKE ALL PRIVILEGES
5 CREATE TEMPORARY TABLES Mengizinkan user untuk menggnakan perintah CREATE TEMPORARY TABLES(HEAP)
6 CREATE VIEW Mengizinkan User Untuk menggunakan perintah CREATE VIEW
7 DELETE Mengizinkan User Untuk menggunakan perintah DELETE
8 DROP Mengizinkan User Untuk menggunakan perintah DROP TABLE
9 EVENT Mengizinkan User Untuk membuat penjadwalan perintah SQL.Hak ini terdapat pada ySQL versi 5.1.6 keatas.
10 EXECUTE Mengizinkan User Untuk menjalankan fungsi tersimpan dan prosedur tersimpan.
11 FILE Mengizinkan user untuk menggunakan perintah SELECT….INTO OUTFILE,LOAD DATA INFILE dan proses replikasi.
12 INDEX Mengizinkan User untuk menggunakan perintah CREATE INDEX dan DROP INDEX.
13 INSERT Mengizinkan User untuk menngunakan perintah INSERT.
14 LOCK TABLES Mengizinkan user untuk mengunakan perintah LOCK TABLES
15 PROCESS Mengizinkan user untuk mengunakan perintah SHOW FULL PROCESSLIST.
16 RELOAD Mengizinkan user untuk menggunakan perintah FLUSH.
17 REPLICATION CLIENT Mengizinkan user untuk mendapatkan informasi komputer Master atau Slave.
18 REPLICATION SLAVE Mengizinkan user dari komputer Slave untuk membaca file binary Log pada computer Master untuk proses replikasi.
19 SELECT Mengizinkan user untuk menggunakan perintah SELECT.
20 SHOW DATABASES Mengizinkan user untuk menngunakan perintah SHOW DATABASES.
21 SHOW VIEW Megizinkan user untuk menggunakan perintah SHOW CREATE VIEW.
22 SHUTDOWN Mengizinkan user untuk menghentikan server MySQL melalui aplikasi mysqladmin
23 SUPER Mengizinkan user untuk menggunakan perintah CHANGE MASTER,KILL,PURGE MASTER LOGS,dan SET GLOBAL,perintah dari aplikasi mysqladmin debug,dan mengizinkan untuk melakukan koneksi pada Server MySQL meskipun nilai dari variable max_connections dilampaui.
24 TRIGGER Mengizinkan user untuk membuat dan menghapus sebuah objek trigger. Hak ini terdapat pada MySQL versi 5.1.6 keatas.
25 UPDATE Mengizinkan user untuk menggunakan perintah UPDATE
16 USAGE Mengizinkan user untuk login dalam server MySQL tetapi tanpa hak apapun (hanya login)
27 GRANT UPTION Mengizinkan user untuk menggunakan printah GRANT

Berikut saya berikan contoh cara membuat hak akses user di mysql, silahkan ikuti langkah-langkahnya. Pastikan anda sudah menginstall exampp.


A. Cara Mengakses MYSQL dengan CMD (Command Prompt)

1. Masuk directory pada CMD. Klik Start > Run shortut(win+R) > ketik "cmd" > enter.
2. Ketik perintah :
cd C:\xampp\mysql\bin > enter
C:\xampp\mysql\bin> mysql –u root
maka akan tampil seperti gambar dibawah ini.
mengakses mysql di cmd

3. Perintah keluar dari MYSQL ketik perintah :
mysql> exit atau quit


B. Cara Membuat dan Menghapus User di Mysql

1. Membuat user ketikan perintah ini (misalnya dengan nama user = hardifal, dan password = 12345)
mysql> create user hardifal@localhost identified by'12345';

2. Menampilkan user yang telah dibuat ketik perintah : mysql> select user from mysql.user;
maka akan tampil seperti gambar dibawah ini
Membuat Hak Akses dan Privileges User Database Mysql

3 Untuk Menghapus User yang telah dibuat, ketik perintah :
mysql> drop user hardifal@localhost;

4. Lalu untuk menampilkan user yang telah dihapus, ketik perintah : select user from mysql.user;


C. Hak Akses User

1. Untuk membuat hak akses user, silahkan buat kembali dengan nama user = praktek, password = 12345

2. Untuk membuat hak akses user (Insert, Delete) gunakan perintah:
mysql> grant insert,delete on *.* to praktek identified by '12345';

3. Untuk membuat hak akses user (hak penuh), gunakan perintah:
mysql> grant all on *.* to praktek identified by '12345';

4. Menampilkan hak akses untuk user, gunakan perintah:
mysql> show grants for praktek
Menampilkan hak akses untuk user

5. Untuk menghapus hak akses user, gunakan perintah:
mysql> revoke all on *.* from praktek;
mysql> flush privileges;
cara menghapus hak akses user database mysql


D. Cara Mengganti Password User

5. Untuk menghapus perintah untuk user misalnya ubah password menjadi = "sundulu" ,  ketik perintah:
mysql> set password for 'praktikan'@'localhost'=password (sundulu');
mysql> flush privileges;

Itulah cara membuat hak akses user di mysql sejelas mungkin, apabila ada pertanyaan atau problem bisa anda tanyakan dikolom komentar dibawah.

No comments for "Praktikum Basis Data - Belajar Membuat Hak Akses dan Privileges User Database Mysql"