Pilih Laman

sumber : https://www.hostinger.co.id/tutorial/cara-membuat-hak-akses-user-di-mysql/

Cara Membuat Hak Akses User di MySQL

Pengenalan

Jika Anda telah memahami pengembangan web atau pengembangan applikasi secara umum, Anda pasti pernah mendengar tentang database. Database adalah penyimpanan data virtual yang diperlukan untuk pembuatan aplikasi web. Database berfungsi untuk menyimpan informasi user, seperti username, password, alamat email, dan lain-lain. Pada dasarnya, informasi apa pun yang ingin Anda simpan untuk digunakan nantinya dapat disimpan di database.

Tentu saja, data harus disimpan sesuai urutan. Dan di sinilah sistem manajemen database memainkan perannya. Sistem ini digunakan sebagai penghubung database dan mempermudah developer untuk menyusun, menyimpan, menghapus, dan memodifikasi data.

MySQL merupakan salah satu sistem manajemen database yang popular karena mudah digunakan dan memiliki community support. Bahkan kepopulerannya menarik perhatian pemain besar di dunia internet, seperti Facebook dan Twitter yang menggunakan sistem MySQL pada titik tertentu.

Pada tutorial kali ini, kami akan membahas informasi dasar mengenai MySQL dan bersama-sama mempelajari cara membuat user pada MySQL. Kita juga akan membahas cara membuat hak akses user di MySQL. Untuk tutorial kali ini, kami akan menggunakan baris perintah.

Apa yang Anda Butuhkan

Sebelum memulai tutorial cara membuat hak akses user di MySQL, Anda membutuhkan:

  • MySQL yang telah diinstal di komputer Anda. Tutorial mengenai cara menginstall MySQL di CentOS VPS dapat Anda temukan di sini.

Langkah 1 – Membuat User pada MySQL dan Memberikan Hak Akses User MySQL

Sebelum mulai menggunakan MySQL, Anda akan diberikan username dan password. Informasi penting ini merupakan langkah awal untuk melakukan ‘root access’. Root user memiliki akses penuh ke semua database dan table dalam database tersebut.

Hanya saja, sering kali Anda memberikan akses database ke pengguna lain tanpa memberikan hak penuh untuk mengontrolnya. Sebagai contoh, perusahaan yang menyewa developer untuk mengelola database, tetapi tidak mengizinkan mereka untuk menghapus atau bahkan memodifikasi informasi penting apa pun, terkadang memperbolehkan mereka mengakses hanya sebagai non-root user. Dengan demikian, perusahaan mampu mengontrol apa yang boleh dan tidak boleh dilakukan developer terhadap data.

Di MySQL, membuat user baru tidak terlalu sulit. Kami akan tunjukkan pada Anda cara membuat user baru pada MySQL serta cara memberikan pengguna hak akses penuh terhadap database Anda. Memang langkah ini tidak bisa disebut bijak karena Anda akan memberikan akses penuh kepada non-root user. Akan tetapi, keputusan ini baik guna memahami hak akses pengguna. Untuk membuat user baru, ikutilah langkah-langkah di bawah ini:

  1. Akses baris perintah dan masuk ke MySQL server:
    mysql

    Jika ingin mencoba perintah ini di VPS server, maka Anda perlu membuat sambungan SSH terlebih dulu.

  2. Masukkan perintah di bawah ini:
    CREATE USER 'non-root'@'localhost' IDENTIFIED
    

    Pada perintah ini, ‘non-root’ merupakan nama yang kami berikan kepada user baru kami. Dan ‘123’ adalah password untuk user. Anda dapat mengganti username dan password tersebut, tentunya di dalam tanda kutip.

  3. Tidak cukup dengan hanya membuat user baru. Anda harus memberikan hak akses user MySQL. Untuk memberikan user baru hak akses penuh ke database, masukkan perintah di bawah ini:
    GRANT ALL PRIVILEGES ON * . * TO 'non-root'@'l
  4. Ketikkan perintah di bawah ini agar hak akses penuh dapat langsung digunakan:
    FLUSH PRIVILEGES

Selesai! User baru kini sudah menjadi root user yang memiliki hak akses sama seperti Anda terhadap database.

Langkah 2 – Cara Membuat Hak Akses User MySQL Tertentu

Seperti yang telah Anda ketahui, memberikan akses database setingkat root user kepada non-root user bukanlah tindakan cerdas. Sebagian besar orang pasti ingin memberikan akses dengan tingkat atau level berbeda ke berbagai macam user. MySQL dapat mengabulkan keinginan Anda. Ikutilah perintah sederhana di bawah ini:

GRANT [permission type] ON [database name].[table name] TO 'non-root'@'localhost';

Anda hanya harus mengganti ‘permission type’ value dengan semacam permisson yang hendak Anda berikan kepada user baru. Anda pun harus menentukan nama database dan table. Kedua hal ini mempermudah root user melakukan kontrol yang tepat terhadap pemberian hak akses. Sama seperti contoh di atas, ‘non-root’ adalah username, jadi Anda bebas menggantinya dengan pilihan Anda sendiri.

MySQL memiliki beberapa jenis permission, di antaranya sebagai berikut:

  • CREATE – Memperbolehkan user membuat database/table
  • SELECT – Memperbolehkan user menerima data
  • INSERT – Memperbolehkan user menambahkan entry baru pada tabel
  • UPDATE – Memperbolehkan user memodifikasi entry yang sudah ada di tabel
  • DELETE – Memperbolehkan user menghapus entry tabel
  • DROP – Memperbolehkan user menghapus seluruh database/tabel

Untuk menggunakan salah satu pilihan di atas, ganti [permission type] dengan keyword yang tepat. Untuk menerapkan banyak hak akses, pisahkan dengan sebuah perintah. Misalnya, kita bisa melakukan CREATE dan SELECT hak akses untuk non-root user MySQL dengan perintah seperti ini:

GRANT CREATE, SELECT ON * . * TO 'non-root'@'localhost';
code>

Suatu saat akan ada keadaan ketika Anda ingin membatalkan pemberian hak akses user MySQL. Anda bisa melakukannya dengan menggunakan perintah di bawah ini:

REVOKE [permission type] ON [database_name].[table name] FROM 'non-root'@'localhost';

Misalnya, untuk mencabut seluruh hak akses dari non-root user, kami akan menggunakan perintah:

REVOKE ALL PRIVILEGES ON *.* FROM 'non-root'@'localhost';

Langkah terakhir, ikuti perintah di bawah ini untuk menghapus user yang sudah ada:

DROP USER 'non-root'@'localhost';

Ingat, untuk menjalakan perintah-perintah di atas, Anda harus memiliki akses penuh sebagai root user. Pun pastikan untuk melakukan FLUSH PRIVILEGES setelah perubahan akses apa pun.

Kesimpulan

Di tutorial cara membuat hak akses user di MySQL ini, Anda telah mempelajari informasi dasar tentang hak akses MySQL dan cara membuat user baru di MySQL. Secara spesifik, Anda mempelajari:

  • Pembuatan user baru dan pemberian hak akses penuh
  • Pemberian hak akses user MySQL tertentu, juga pembatalan hak akses penuh serta menghapus user

Pemberian hak akses sepertinya memang menjadi sebuah tugas ketika Anda sedang mengembangkan aplikasi web. Namun, pemberian hak akses tersebut sebenarnya bersifat vital karena berhubungan dengan manajemen database dan maintenance. Hampir setiap aplikasi web modern bergantung pada database sehingga sangat penting bagi developer untuk mempelajari pemberian/pembatalan hak akses database MySQL.