info-b

Tutorial Belajar MySQL Part 30: Cara Membuat dan Menghapus User MySQL (CREATE USER)

Posted on

Setelah memahami pengertian Superuser root dan Privileges dalam MySQL, serta pentingnya membatasi hak akses user, pada panduan kali ini kita akan mempelajari cara membuat user MySQL, membatasinya dengan password, membatasi hak akses dari domisili IP, serta menghapus user pada MySQL.

Penyusunan user baru pada MySQL, hanya dapat dilakukan menggunakan user root, atau user yang diberikan hak akses GRANT OPTION (pembahasan mengenai GRANT OPTION akan kita bahas pada artikel lainnya).

Di karenakan kita akan sering keluar masuk mysql mengunakan beberapa user, karenanya bagi mengikuti panduan ini disarankan menggakses MySQL secara manual dari DOS, seperti di Tutorial Belajar MySQL: Menjalankan MySQL Client.


Menyiapkan Database Sampel: universitas

Selaku database contoh yang akan digunakan bagi belajar merancang user baru MySQL, kita akan merancang sebuah database universitas. Silahkan masuk dengan user root ke pada MySQL Server.

Database ini akan mempunyai 2 buah tabel, yakni tabel mahasiswa_ilkom, dan tabel mahasiswa_ekonomi. Masing-masing tabel berisi mengenai data mahasiswa. Pada query berikut, kita merancang kedua tabel tersebut dan menyiapkan data sampel selaku contoh.


Cara Merancang User Baru pada MySQL

Bagi merancang user baru, MySQL menyediakan query CREATE USER, berikut format mendasar petunjuk:

  • nama_user yaitu nama dari user yang akan dikerjakan, maksimal 16 karakter.

Bagi database universitas, kita akan merancang user ilkom_admin, berikut contoh querynya:

Dengan query CREATE USER tersebut, sebuah user baru telah dikerjakan di pada MySQL Server. Bagi mencoba menggunakan user tersebut, kita mesti keluar dari user root yang digunakan dikala ini, dan login selaku ilkom_admin.

Agar dapat keluar dari user root dan masuk selaku user lainnya, mesti mengakses MySQL Client dari CMD Windows. Bagi penjelasan lebih lanjut dapat dipelajari pada artikel Tutorial Belajar MySQL: Menjalankan MySQL Client.

Di contoh diatas, pertama-tama kita menggunakan petunjuk exit bagi keluar dari root. Setelah itu kita log in menggunakan user yang baru saja dikerjakan, yakni ilkom_admin.

Jikalau sahabat memeriksa database bagi user ini, user ilkom_admin belum mempunyai hak akses bagi database apapun. Kita akan mem
bahasnya di panduan berikutnya.

Terlihat bahwa hasil SHOW DATABASES dari user ilkom_admin hanya berisi database information_schema. Database information_schema sendiri bukan adalah database ‘asli’. information_schema akan ada bagi setiap user MySQL dan hanya database ‘virtual’ yang digunakan bagi menyimpan metadata (data keterangan) mengenai database. Kita hanya dapat menggunakan query SELECT bagi database ini, tetapi tak bagi query DELETE, INSERT, maupun UPDATE.


Cara Merancang User pada MySQL dengan Password

User ilkom_admin yang baru saja dikerjakan, dapat diakses oleh siapapun sepanjang ia mengetahui username yang digunakan, yakni ilkom_admin.

Bagi menambah keamanan, kita seharusnya menambahkan password yang mesti diinputkan oleh user di dikala login. Format mendasar querynya:

  • nama_user yaitu nama dari user yang akan dikerjakan, maksimal 16 karakter.
  • password yaitu password yang mesti dituliskan di dikala nama_user mengakses MySQL server.

Misalkan kita ingin merancang user ilkom_admin2 dengan password ‘r4hasia’, karenanya querynya:

Jikalau sahabat masih menggunakan user ilkom_admin, keluarlah terlebih dahulu dan masuk kembali selaku root.

Dan jikalau sahabat ingin mengakses user tersebut, haruslah menggunakan password:

Terlihat dari contoh query pertama-tama jikalau tanpa password, MySQL akan mengeluarkan pesan error.


Cara Merancang User MySQL dengan batasan IP address

Pada merancang user, MySQL menyediakan alternatif bagi membatasi hak akses user tersebut dari lokasi tempat user mengakses MySQL server.

Seperti yang telah kita bahas di Tutorial Belajar MySQL: Menjalankan MySQL Server, bahwa pengaksesan MySQL Server dapat dilakukan dari komputer mana saja sepanjang kita mempunyai program MySQL Client dan terhubung via jaringan dengan MySQL Server. MySQL menggunakan domisili IP address bagi mengetahui darimana MySQL Server diakses.

Misalkan sebuah kantor mempunyai 6 komputer yang terhubung pada jaringan. MySQL Server berada di komputer yang berada di domisili IP 192.168.0.1., sedangkan komputer lainnya mempunyai domisili IP 192.168.0.2 hingga dengan 192.168.0.6. Kebijakan perusahaan yaitu bagi mengakses tabel yang bersifat rahasia hanya dapat diakses dari komputer dengan IP 192.168.0.4. Bagi kebutuhan ini MySQL menyediakan cara agar sebuah user hanya dapat diakses dari domisili IP tertentu saja.

Format mendasar query:

  • nama_user yaitu nama dari user yang akan dikerjakan, maksimal 16 karakter.
  • lokasi_user yaitu lokasi tempat user yang diperbolehkan mengakses. Jikalau berada di komputer yang sama dengan MySQL Server, lokasi_user ditulis selaku ‘localhost’, namun jikalau berada di komputer tertentu, kita dapat mengisinya dengan domisili IP seperti ‘192.168.0.2’, atau domisili host domain seperti user.duniailkom
  • password yaitu password yang mesti dituliskan di dikala nama_user mengakses MySQL server.

Selaku contoh query, misalkan kita ingin merancang user ilkom_admin3 dengan password r4hasia dan hanya dapat diakses dari IP 192.168.0.4, karenanya querynya:

Jikalau kita menggunakan user ilkom_admin3 dari komputer dengan IP address selain ‘192.168.0.4’, MySQL akan menghasilkan error.

MySQL pun mempunyai fitur bagi merancang domisili IP menggunakan wildcard ‘%’ yang maksudnya yaitu segala domisili IP. Contohnya :

Petunjuk tersebut akan merancang user ilkom_admin4 dapat diakses dari seluruh domisili mulai dari 192.168.0.1 hingga dengan 192.168.0.255, namun tak bagi IP 192.168.1.0.

Malah sesungguhnya petunjuk:

Ialah sama dengan

Yang berarti user ilkom_admin dapat diakses dari mana saja.

Tempat tinggal yang sering digunakan selaku domisili IP yaitu localhost, yang berarti domisili IP komputer tempat dimana MySQL Server berada. Karena di pada tahap belajar ini kita menggunakan MySQL Client di komputer yang sama dengan MySQL server, karenanya pada panduan berikutnya saya hanya akan memakai lokasi localhost, seperti:


Cara menghapus User MySQL

Bagi menghapus user, MySQL menyediakan query DROP USER. Berikut format mendasar pemakaian:

  • nama_user yaitu nama dari user yang akan dihapus.

Selaku contoh, jikalau sahabat mengikuti seluruh query pada panduan ini, karenanya akan tercipta 3 user, yakni ilkom_admin, ilkom_admin2 dan ilkom_admin3. Kita akan menghapus ketiganya:

Bagi user ilkom_admin3, MySQL akan mengeluarkan pesan error. Hal ini dikarenakan di dikala kita merancang user ilkom_admin3, kita membatasi user ini dengan hanya dapat diakses dari IP 192.168.0.4, sehingga bagi menghapusnya mesti mencantumkan domisili komplit IP:


Hingga tahap ini kita telah mempelajari cara merancang user MySQL, membatasinya dengan password dan domisili IP, serta menghapus user MySQL. Namun user tersebut belum dapat mengerjakan apa-apa, karena kita belum memberikan hak akses. Pada panduan berikutnya, kita akan membahas cara memberikan hak akses dengan query GRANT.


Sumber https://www.duniailkom.com/