Har bir foydalanuvchi ma’lumotlar bazasiga o‘zi uchun yaratib berilgan foydalanuvchi nomi va paroli bilan ulanishi lozim, bu orqali u o‘zini bazaga tanishtirgan va faqat bu foydalanuvchiga berilgan ruxsatlardan foydalanib, ma’lumotlar bazasidan foydalangan bo‘ladi. Demak, ma’lumotlar bazasi administratori(root), iloji boricha har bir ma’lumotlar bazasi foydalanuvchisi uchun, alohida ruxsatlarga ega foydalanuvchi nomi va parolini yaratib berishi lozim.

Bu maqolamiz, MySQL MBBTda foydalanuvchi yaratish va unga ruxsatlar berishga bag‘ishlanadi. Yangi foydalanuvchi «root» foydalanuvchisi  yoki «GRANT» xuquqiga ega foydalanuvchi tomonidan yaratilishi mumkin. Demak, MySQLga «root» foydalanuvchisi bilan ulanamiz va quyidagi buyruq orqali yangi foydalanuvchi yaratamiz:

mysql> CREATE USER 'akmx'@'localhost' IDENTIFIED BY 'akmx';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'akmx'@'localhost' WITH GRANT OPTION;

Dastlabki kodda «akmx» nomli foydalanuvchi va bu foydalanuvchiga «akmx» nomli parol yaratilmoqda, xost nomi «localhost«. Undan so‘ng, ikkinchi qatorga o‘tilmoqda va bu kodda «akmx» foydalanuvchiga barcha ruxsatlar(prava) berilmoqda(ruxsatlar haqida). Agar «localhost«dan boshqa xostlar uchun ham ulanish kerak bo‘lsa, «%» belgisi ishlatiladi.

mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%' WITH GRANT OPTION;

Barcha ruxsatlarni emas, ma’lum birlarini berish ham mumkin. Misol uchun,

mysql> CREATE USER 'admin'@'localhost';
mysql> GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';

Parolsiz «admin» nomli foydalanuvchi yaratilmoqda va unga «reload«, «process» nomli administrator ruxsatlari berilmoqda, bu foydalanuvchi jadval ustida hech qanday amal bajara olmaydi.

mysql> CREATE USER 'dummy'@'localhost';

Ma’lum bir foydalanuvchiga qanday ruxsatlar berilganini ko‘rish uchun, quyidagi buyruqni berish lozim:

mysql> SHOW GRANTS FOR 'akmx'@'localhost';

Agar, ma’lum bir ma’lumotlar bazasi uchun foydalanuvchilarga ruxsat kerak bo‘lsa, quyidagicha kod yoziladi.

mysql> CREATE USER 'test'@'localhost' IDENTIFIED BY 'test11';
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON akmx.* TO 'test'@'localhost';

yuqoridagi kodda, «test» nomli foydalanuvchi yaratilmoqda va unga parol berilmoqda. Keyin, bu foydalanuvchiga «select«, «insert«, «update«, «delete«, «create» va «drop» ruxsatlar berilmoqda, lekin faqat «akmx» ma’lumotlar bazasi bilan ishlash uchun.

Berilgan ruxsatlarni olib qo‘yish ham mumkin, bunda bizga «Revoke» yordam beradi,

mysql> revoke drop on akmx from test;

«test» nomli foydalanuvchidan, «akmx» jadvalini o‘chirish(drop) xuquqi olib qo‘yilmoqda.

Yaratilgan barcha foydalanuvchi nomlarini ko‘rish uchun «user» jadvalidan foydalaniladi.

mysql>use mysql;
mysql>select user from user;

Yana bir narsa, har safar «use» komandasini ishlatmasdan, nuqta(.) orqali kerakli baza jadvaliga o‘tish mumkin, yuqoridagi kodni  o‘zgartiramiz.

mysql> select user from mysql.user;

«mysql» baza nomi, «user» jadval nomi.