บทนำ

MySQL เป็นระบบจัดการฐานข้อมูลโอเพ่นซอร์สที่ใช้ Structured Query Language (SQL) เพื่อเพิ่มเข้าถึงและจัดการเนื้อหาในฐานข้อมูล.


MySQL ทำงานบนแทบทุกแพลตฟอร์มและส่วนใหญ่เกี่ยวข้องกับการเผยแพร่ออนไลน์และเว็บแอปพลิเคชัน SQL นั้นมีชื่อเสียงในด้านความน่าเชื่อถือการประมวลผลที่รวดเร็วและความยืดหยุ่นที่เลียนแบบไม่ได้รวมถึงความสะดวกในการใช้งาน.

เป็นหนึ่งในระบบฐานข้อมูลที่ดีที่สุด MySQL เสนอตัวเลือกมากมายเพื่อให้สิทธิ์ผู้ใช้ใหม่ในการจัดเก็บจัดระเบียบหรือดึงข้อมูล บทช่วยสอนนี้จะแสดงวิธีสร้างผู้ใช้ใหม่ใน MySQL และกำหนดสิทธิ์ MySQL เฉพาะผู้ใช้.

ก่อนที่คุณจะเริ่ม

เพื่อให้บทช่วยสอนนี้ราบรื่นต่อเนื่องคุณต้องการสิ่งต่อไปนี้:

  • MySQL ติดตั้งบนเซิร์ฟเวอร์ผ่านบริการโฮสติ้งที่รองรับ MySQL โฮสติ้ง หรือคุณควรปรับใช้ MariaDB บนเซิร์ฟเวอร์ของคุณ.

ขั้นตอนที่ 1 – สร้างผู้ใช้ใหม่

หากคุณคุ้นเคยกับ MySQL คุณจะรู้วิธีการแก้ไขพื้นฐานในฐานข้อมูล MySQL ในฐานะผู้ใช้รูทที่เข้าถึงฐานข้อมูลได้ไม่ จำกัด อย่างไรก็ตามในบางกรณีคุณอาจต้องการสร้างบัญชีผู้ใช้ที่มีข้อ จำกัด เพิ่มเติมและนี่คือจุดที่การสอนนี้มีประโยชน์.

ขั้นแรกให้ดำเนินการคำสั่งด้านล่างเพื่อเข้าสู่บรรทัดคำสั่ง MySQL.

$ sudo mysql -u root -p

พิมพ์ข้อมูลประจำตัว MySQL ของคุณแล้วกด ENTER เพื่อเข้าสู่ระบบ.

บันทึก: หากยังไม่ได้กำหนดรหัสผ่านสำหรับผู้ใช้รูทฐานข้อมูล MySQL ให้ลบรหัสผ่าน -พี ตั้งค่าสถานะจากคำสั่งด้านบน.

เพื่อสร้างผู้ใช้ใหม่ใน MySQL ดำเนินการคำสั่งด้านล่าง:

MySQL>

CREATEUSER’hostuser ‘@’ localhost’IDENTIFIEDBY’user_password ‘;

บันทึก: จำไว้ว่าให้เปลี่ยน hostuser ด้วยชื่อผู้ใช้ในอุดมคติของคุณและ user_password ด้วยรหัสผ่านที่แข็งแกร่งเพียงพอ แต่จำได้ง่าย.

hostuser ‘@’ localhost‘ในคำสั่งนี้หมายถึง localhost เป็นโฮสต์สำหรับผู้ใช้ใหม่ไม่ใช่ที่อยู่ IP สำหรับเซิร์ฟเวอร์ของคุณ จากนี้ก็สามารถอนุมานได้ว่าผู้ใช้ใหม่จะเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ของคุณจากโฮสต์ของคุณ.

หากคุณต้องการให้ผู้ใช้เชื่อมต่อกับเซิร์ฟเวอร์ฐานข้อมูลของคุณจากโฮสต์อื่นคุณสามารถแทนที่ ‘localhost’ กับเซิร์ฟเวอร์ของคุณ’ที่อยู่ IP ตัวอย่างเช่นหากคุณต้องการให้การเข้าถึงจากเซิร์ฟเวอร์ของคุณด้วยที่อยู่ IP 127.8.0.5 จากนั้นคุณจะรันคำสั่ง:

MySQL>

CREATEUSER’hostuser ‘@’ % ‘IDENTIFIEDBY’user_password’;

นอกจากนี้หากคุณต้องการให้สิทธิ์การเข้าถึงจากโฮสต์อื่นให้แทนที่ ‘localhost’ กับ ‘%’ สัญลักษณ์แทนคำสั่ง:

MySQL>

CREATEUSER’hostuser ‘@’ % ‘IDENTIFIEDBY’user_password’;

ถึงตอนนี้คุณมีผู้ใช้ใหม่ที่เรียกว่า hostuser, แต่คุณไม่อนุญาตให้ผู้ใช้รายนี้ หากผู้ให้บริการพยายามเข้าสู่ระบบพวกเขาไม่สามารถเข้าถึงบรรทัดคำสั่ง MySQL ได้.

ขั้นตอนที่ 2 – การให้สิทธิ์ผู้ใช้ใหม่

ดังที่ได้กล่าวมาแล้ว MySQL ให้สิทธิการใช้งานที่คุณสามารถมอบให้กับผู้ใช้ที่สร้างขึ้นใหม่ รายการยาวและคุณสามารถดูตัวเลือกทั้งหมดที่นี่ ในบทช่วยสอนนี้เรา’จะเน้นการอนุญาตที่ใช้บ่อยที่สุด เหล่านี้รวมถึง:

  • สิทธิพิเศษทั้งหมด: ตามชื่อแนะนำคำสั่งนี้ให้ผู้ใช้สามารถเข้าถึงฐานข้อมูลเฉพาะได้ไม่ จำกัด ซึ่งหมายความว่าผู้ใช้ใหม่มีสิทธิ์ทั้งหมดในการดำเนินการและดำเนินการฟังก์ชั่นทั้งหมดภายในฐานข้อมูลที่กำหนด.
  • สร้าง: ผู้ใช้มีสิทธิ์ในการสร้างตารางและฐานข้อมูล.
  • ลบ: ผู้ใช้สามารถลบล้างแถวจากตารางที่กำหนด.
  • DROP: ผู้ใช้สามารถวางตารางและฐานข้อมูล
  • INSERT: ผู้ใช้สามารถเพิ่มแถวลงในตารางเฉพาะ
  • เลือก: ผู้ใช้มีสิทธิ์ในการอ่านฐานข้อมูลที่ระบุ
  • UPDATE: ผู้ใช้สามารถอัปเดตแถวในตาราง.
  • ตัวเลือก GRANT: ผู้ใช้สามารถให้หรือลบสิทธิ์ของผู้ใช้รายอื่น

ไวยากรณ์หรือกรอบพื้นฐานของคำสั่งที่ใช้เพื่อให้สิทธิ์ผู้ใช้ใหม่ด้วยรูปแบบ:

MySQL>

GRANT type_of_permission ON database_name.table_name TO’hostuser ‘@’ localhost ‘;

หากคุณให้สิทธิ์ผู้ใช้หลายครั้งคำสั่งจะอยู่ในรูปแบบ:

MySQL>

GRANT สิทธิ์ 1, permission2 ON database_name.table_name TO’hostuser ‘@’ localhost ‘;

ในทางกลับกันหากคุณให้สิทธิ์ผู้ใช้ใหม่ในการเข้าถึงตารางหรือฐานข้อมูลใด ๆ ให้แทนที่ชื่อตารางหรือฐานข้อมูลด้วยเครื่องหมายดอกจัน (*).

ตัวอย่าง

ที่จะให้ ‘hostuser’ สิทธิ์ทั้งหมดดำเนินการคำสั่ง:

MySQL>

ให้สิทธิ์แก่ฐานข้อมูล PRIVILEGESON ทั้งหมด * TO’hostuser ‘@’ localhost ‘;

ถัดไปที่จะให้ ‘hostuser’ สิทธิพิเศษเหนือฐานข้อมูลทั้งหมดของคุณเรียกใช้คำสั่ง:

MySQL>

ให้สิทธิ์ทั้งหมด *. * TO’hostuser ‘@’ localhost ‘;

หากคุณต้องการที่จะให้ ‘hostuser’ สิทธิพิเศษเหนือตารางที่กำหนดด้วยฐานข้อมูลเฉพาะจากนั้นเรียกใช้คำสั่ง:

MySQL>

ให้สิทธิ์ทั้งหมดแก่ database_name.table_name TO’hostuser ‘@’ localhost ‘;

จากนั้นให้ทำการ ‘hostuser’ สิทธิ์หลายอย่างบนฐานข้อมูลที่กำหนดรันคำสั่ง:

MySQL>

GRANTSELECT, INSERT, DELETEON database_name. * ไปยัง hostuser @ ‘localhost’;

เมื่อคุณให้สิทธิ์ที่จำเป็นทั้งหมดแล้วให้เรียกใช้คำสั่งด้านล่างเพื่อล้างการเปลี่ยนแปลงและเปิดใช้งานการอนุญาตให้มีผล:

MySQL>

FLUSHPRIVILEGES;

ขั้นตอนที่ 3 – การจัดการสิทธิ์ผู้ใช้

กำลังแสดงผู้ใช้’สิทธิพิเศษ

หากคุณต้องการทราบสิทธิ์ที่ได้รับมอบหมาย ‘hostuser’, เรียกใช้คำสั่งด้านล่าง:

MySQL>

SHOWGRANTSFOR’hostuser ‘@’ localhost ‘;

สิ่งนี้จะให้ผลลัพธ์ที่คล้ายกับด้านล่าง:

+—————————————————————————+
| ให้สิทธิ์แก่ hostuser ‘@ localhost |
+—————————————————————————+
| GRANTUSAGEON *. * TO’hostuser ‘@’ localhost ‘|
| ได้รับสิทธิ์ทั้งหมด `ฐานข้อมูล _ ชื่อ ‘. * TO’hostuser’ @ ‘localhost’ |
+—————————————————————————+
2rowsinset (0.00 วินาที)

การเพิกถอนสิทธิ์

คำสั่งที่ใช้ในการเพิกถอนสิทธิ์เดียวหรือหลายสิทธิ์ที่ได้รับ ‘hostuser’ ใช้ไวยากรณ์ต่อไปนี้:

MySQL>

ถอน type_of_permission ON database_name.table_name FROM’hostuser ‘@’ localhost ‘;

ตัวอย่างเช่นเพื่อลบล้างสิทธิ์ทั้งหมดที่มอบให้แก่ ‘hostuser’ บนฐานข้อมูลที่กำหนดดำเนินการคำสั่งด้านล่าง:

MySQL>

เพิกถอนสิทธิ์ทั้งหมด database_name. * TO’database_user ‘@’ localhost ‘;

การถอด ‘hostuser’

หากคุณต้องการลบผู้ใช้ใหม่ด้วยเหตุผลใดก็ตามให้เรียกใช้คำสั่งด้านล่าง:

MySQL>

DROPUSER’hostuser ‘@’ localhost’

คำสั่งนี้จะลบ ‘hostuser’ พร้อมกับการอนุญาตทั้งหมด.

ข้อสรุป

อย่างนั้นแหละ! คุณได้เรียนรู้วิธีสร้างบัญชีผู้ใช้ฐานข้อมูล MySQL ใหม่และกำหนดสิทธิ์เฉพาะ บทช่วยสอนครอบคลุมส่วนของสิทธิพิเศษที่คุณสามารถกำหนดให้กับผู้ใช้ที่สร้างขึ้นใหม่ มีตัวเลือกสิทธิพิเศษมากมายที่สามารถกำหนดให้กับผู้ใช้ MySQL สำรวจตัวเลือกเหล่านี้และรู้สึกว่ามีอิสระในการกำหนดตามนั้น.

ลองดูบริการบนเว็บโฮสติ้งที่ดีที่สุด 3 อันดับแรก

FastComet

ราคาเริ่มต้น:
$ 2.95


ความเชื่อถือได้
9.7


การตั้งราคา
9.5


เป็นมิตรกับผู้ใช้
9.7


สนับสนุน
9.7


คุณสมบัติ
9.6

อ่านความคิดเห็น

เยี่ยมชม FastComet

A2 โฮสติ้ง

ราคาเริ่มต้น:
$ 3.92


ความเชื่อถือได้
9.3


การตั้งราคา
9.0


เป็นมิตรกับผู้ใช้
9.3


สนับสนุน
9.3


คุณสมบัติ
9.3

อ่านความคิดเห็น

เยี่ยมชม A2 Hosting

ChemiCloud

ราคาเริ่มต้น:
$ 2.76


ความเชื่อถือได้
10


การตั้งราคา
9.9


เป็นมิตรกับผู้ใช้
9.9


สนับสนุน
10


คุณสมบัติ
9.9

อ่านความคิดเห็น

เยี่ยมชม ChemiCloud

บทความเชิงปฏิบัติที่เกี่ยวข้อง

  • วิธีการติดตั้ง MYSQL 8.0 และสร้างฐานข้อมูลบน Ubuntu 18.04 Linux VPS
    สื่อกลาง
  • วิธีการสร้างความพร้อมใช้งานสูงด้วยการจำลองแบบ MySQL บน Ubuntu 18.04 VPS หรือเซิร์ฟเวอร์เฉพาะ
    สื่อกลาง
  • วิธีการเรียกใช้ ProxySQL กับ MySQL สำหรับการตรวจสอบบน CentOS 7
    สื่อกลาง
  • วิธีการติดตั้งสแต็ค LEMP (Linux, Nginx, MySQL, PHP) บน Ubuntu 18.04 VPS หรือเซิร์ฟเวอร์เฉพาะ
    สื่อกลาง
  • วิธีการติดตั้ง phpMyAdmin บน CentOS 7 VPS หรือเซิร์ฟเวอร์เฉพาะ
    สื่อกลาง
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me