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:
NoHakKeterangan
1ALLMemberikan akses penuh kepada seorang user kecuali perintah GRANT
2alterMengizinkan user untuk menggunakan perintah ALTER TABLE
3ALTER ROUTINEMengizinkan user untuk mengubah struktur (schema) dari sebuah fungsi tersimpan dan prosedur tersimpan
4CREATEMengizinkan user untuk membuat fungsi tersimpan perintah CREATE USER,DROP USER,RENAME USER,dan REVOKE ALL PRIVILEGES
5CREATE TEMPORARY TABLESMengizinkan user untuk menggnakan perintah CREATE TEMPORARY TABLES(HEAP)
6CREATE VIEWMengizinkan User Untuk menggunakan perintah CREATE VIEW
7DELETEMengizinkan User Untuk menggunakan perintah DELETE
8DROPMengizinkan User Untuk menggunakan perintah DROP TABLE
9EVENTMengizinkan User Untuk membuat penjadwalan perintah SQL.Hak ini terdapat pada ySQL versi 5.1.6 keatas.
10EXECUTEMengizinkan User Untuk menjalankan fungsi tersimpan dan prosedur tersimpan.
11FILEMengizinkan user untuk menggunakan perintah SELECT….INTO OUTFILE,LOAD DATA INFILE dan proses replikasi.
12INDEXMengizinkan User untuk menggunakan perintah CREATE INDEX dan DROP INDEX.
13INSERTMengizinkan User untuk menngunakan perintah INSERT.
14LOCK TABLESMengizinkan user untuk mengunakan perintah LOCK TABLES
15PROCESSMengizinkan user untuk mengunakan perintah SHOW FULL PROCESSLIST.
16RELOADMengizinkan user untuk menggunakan perintah FLUSH.
17REPLICATION CLIENTMengizinkan user untuk mendapatkan informasi komputer Master atau Slave.
18REPLICATION SLAVEMengizinkan user dari komputer Slave untuk membaca file binary Log pada computer Master untuk proses replikasi.
19SELECTMengizinkan user untuk menggunakan perintah SELECT.
20SHOW DATABASESMengizinkan user untuk menngunakan perintah SHOW DATABASES.
21SHOW VIEWMegizinkan user untuk menggunakan perintah SHOW CREATE VIEW.
22SHUTDOWNMengizinkan user untuk menghentikan server MySQL melalui aplikasi mysqladmin
23SUPERMengizinkan 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.
24TRIGGERMengizinkan user untuk membuat dan menghapus sebuah objek trigger. Hak ini terdapat pada MySQL versi 5.1.6 keatas.
25UPDATEMengizinkan user untuk menggunakan perintah UPDATE
16USAGEMengizinkan user untuk login dalam server MySQL tetapi tanpa hak apapun (hanya login)
27GRANT UPTIONMengizinkan 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:xamppmysqlbin > enter

C:xamppmysqlbin> 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.

You May Also Like

Leave a Reply

Your email address will not be published. Required fields are marked *