บทนำ
1.1 คุณต้องการเรียนรู้วิธีสร้างผู้ใช้ใน MariaDB หรือไม่?
คุณเคยต้องการสร้างผู้ใช้ใหม่ใน MariaDB และกำหนดสิทธิ์ที่เหมาะสมหรือไม่?
ตัวอย่างเช่น คุณอาจเคยเจอสถานการณ์ต่อไปนี้:
- คุณได้รัน
CREATE USERแต่ไม่สามารถเข้าสู่ระบบได้ - คุณได้ให้สิทธิ์โดยใช้
GRANTแต่สิทธิ์ไม่ได้ถูกนำไปใช้ - คุณไม่แน่ใจว่าจะกำหนดสิทธิ์ที่เหมาะสมในสภาพแวดล้อมการผลิตอย่างไร
- คุณต้องการลบผู้ใช้ที่ไม่จำเป็นอย่างปลอดภัย
หากคุณกำลังเผชิญกับปัญหาเหล่านี้ บทความนี้จะช่วยให้คุณ เข้าใจอย่างเต็มที่ถึงกระบวนการทั้งหมดตั้งแต่การสร้างผู้ใช้ การจัดการสิทธิ์ ไปจนถึงการลบผู้ใช้ใน MariaDB.
1.2 สิ่งที่คุณจะได้เรียนรู้ในบทความนี้
บทความนี้ให้คำอธิบายโดยละเอียดเกี่ยวกับด้านต่อไปนี้ของการจัดการผู้ใช้ใน MariaDB:
- วิธีสร้างและลบผู้ใช้ใน MariaDB
- วิธีให้สิทธิ์และจัดการสิทธิ์ (แนวทางปฏิบัติที่ดีที่สุดสำหรับการตั้งค่าสิทธิ์ที่เหมาะสม)
- ข้อผิดพลาดทั่วไปและวิธีแก้ไข
- แนวทางปฏิบัติการที่ดีที่สุดสำหรับสภาพแวดล้อมการพัฒนาและการผลิต
หัวข้อทั้งหมดอธิบายด้วย ตัวอย่าง SQL ที่เป็นมิตรต่อผู้เริ่มต้น ทำให้คุณสามารถเรียนรู้และฝึกฝนได้พร้อมกัน.
1.3 กลุ่มเป้าหมาย
บทความนี้มีไว้สำหรับ:
- ผู้เริ่มต้น : ผู้ที่เรียนรู้การจัดการผู้ใช้ MariaDB เป็นครั้งแรก
- วิศวกร : ผู้ที่ต้องการกำหนดสิทธิ์ที่เหมาะสมในสภาพแวดล้อมการพัฒนา
- ผู้ดูแลฐานข้อมูล : ผู้ที่มุ่งมั่นเสริมความปลอดภัยในสภาพแวดล้อมการผลิต
แม้ว่าคุณจะใหม่กับ MariaDB คู่มือนี้ก็ให้ข้อมูลเชิงปฏิบัติที่คุณสามารถนำไปใช้ได้อย่างมั่นใจในงานจริง.
การสร้างผู้ใช้ใน MariaDB
2.1 คำสั่งพื้นฐานสำหรับการสร้างผู้ใช้
ใน MariaDB คุณสร้างผู้ใช้ใหม่โดยใช้คำสั่ง CREATE USER.
คุณสามารถระบุชื่อผู้ใช้และรหัสผ่านโดยใช้ไวยากรณ์ต่อไปนี้:
CREATE USER 'username'@'hostname' IDENTIFIED BY 'password';
ตัวอย่างเช่น การสร้างผู้ใช้ชื่อ yamada บน localhost ด้วยรหัสผ่าน password123:
CREATE USER 'yamada'@'localhost' IDENTIFIED BY 'password123';
หลังจากรันคำสั่งนี้ ผู้ใช้ yamada จะถูกสร้างและสามารถเข้าสู่ระบบได้จาก localhost เท่านั้น (การเข้าสู่ระบบอนุญาตเฉพาะบนเซิร์ฟเวอร์เอง).
2.2 ตัวอย่างการสร้างผู้ใช้ตามกรณีการใช้งาน
เมื่อสร้างผู้ใช้ใน MariaDB คุณสามารถระบุแหล่งที่อนุญาตให้เชื่อมต่อได้โดยใช้ฟิลด์ hostname.
สำคัญอย่างยิ่งที่จะกำหนดค่าตามกรณีการใช้งานของคุณ.
| Case | Command Example | Description |
|---|---|---|
| Local Environment (Development) | CREATE USER 'dev_user'@'localhost' IDENTIFIED BY 'password'; | User dedicated to development environment |
| Allow Remote Connections | CREATE USER 'remote_user'@'%' IDENTIFIED BY 'password'; | Allow connections from any host (security caution required) |
| Allow Connection from Specific IP | CREATE USER 'admin'@'192.168.1.100' IDENTIFIED BY 'password'; | Restrict access to a specific IP address only |
| Allow Connection from Specific Subnet | CREATE USER 'network_user'@'192.168.1.%' IDENTIFIED BY 'password'; | Allow only machines with IP addresses in the 192.168.1.x range |
การใช้ '%' จะอนุญาต การเชื่อมต่อจากโฮสต์ทั้งหมด แต่
ซึ่งเป็นความเสี่ยงด้านความปลอดภัยอย่างมากและไม่แนะนำให้ใช้ในสภาพแวดล้อมการผลิต.
ในสภาพแวดล้อมการผลิต ควร ระบุที่อยู่ IP หรือกำหนดการเข้าถึงผ่าน VPN.
2.3 หมายเหตุสำคัญเมื่อสร้างผู้ใช้
มีหลาย ข้อควรพิจารณาที่สำคัญ เมื่อสร้างผู้ใช้.
(1) ตรวจสอบผู้ใช้ที่มีอยู่
ก่อนสร้างผู้ใช้ ควรตรวจสอบให้แน่ใจว่าผู้ใช้เดียวกันยังไม่มีอยู่แล้ว.
คุณสามารถแสดงรายการผู้ใช้ที่ลงทะเบียนอยู่ในปัจจุบันด้วยคำสั่งต่อไปนี้:
SELECT user, host FROM mysql.user;
ตัวอย่างผลลัพธ์:
+---------+-----------+
| user | host |
+---------+-----------+
| root | localhost |
| yamada | localhost |
+---------+-----------+
หากมีผู้ใช้ที่มี username@hostname เดียวกันอยู่แล้ว การรัน CREATE USER จะทำให้เกิดข้อผิดพลาด.
(2) วิธีจัดการเมื่อผู้ใช้มีอยู่แล้ว
ใน MariaDB คุณไม่สามารถเขียนทับผู้ใช้ที่มีอยู่โดยการสร้างใหม่ได้.
หากผู้ใช้เดียวกันมีอยู่แล้ว ให้ใช้วิธีใดวิธีหนึ่งต่อไปนี้:
- เปลี่ยนรหัสผ่านของผู้ใช้ที่มีอยู่
ALTER USER 'yamada'@'localhost' IDENTIFIED BY 'newpassword123';
- ลบผู้ใช้ที่ไม่จำเป็นและสร้างใหม่
DROP USER 'yamada'@'localhost'; CREATE USER 'yamada'@'localhost' IDENTIFIED BY 'password123';
การจัดการสิทธิ์ใน MariaDB
3.1 ให้สิทธิ์
ไวยากรณ์พื้นฐาน
ใน MariaDB คุณสามารถมอบสิทธิ์ให้ผู้ใช้โดยใช้คำสั่ง GRANT
GRANT privilege ON database_name.table_name TO 'username'@'hostname';
ตัวอย่างเช่น เพื่อมอบ สิทธิ์ทั้งหมด บน test_db ให้ผู้ใช้ yamada:
GRANT ALL PRIVILEGES ON test_db.* TO 'yamada'@'localhost';
ความหมายของคำสั่งนี้:
ALL PRIVILEGES: มอบสิทธิ์ทั้งหมดtest_db.*: ใช้กับตารางทั้งหมดในฐานข้อมูลtest_db'yamada'@'localhost': ใช้กับผู้ใช้yamadaที่ล็อกอินจาก localhost
3.2 สิทธิ์ที่ใช้กันทั่วไป
ใน MariaDB คุณสามารถมอบสิทธิ์เช่นต่อไปนี้:
| Privilege | Description |
|---|---|
ALL PRIVILEGES | Grant all privileges |
SELECT | Read data |
INSERT | Insert data |
UPDATE | Update data |
DELETE | Delete data |
CREATE | Create new tables or databases |
DROP | Drop databases or tables |
GRANT OPTION | Grant privileges to other users |
ALTER | Modify table structure |
EXECUTE | Execute stored procedures or functions |
RELOAD | Reload server settings |
หากคุณต้องการอนุญาตเฉพาะการดำเนินการบางอย่าง แนะนำให้มอบสิทธิ์ทีละรายการแทนการมอบทุกอย่าง
3.3 การตั้งค่าสิทธิ์ตามกรณีการใช้งาน
สำคัญที่จะกำหนดสิทธิ์ที่เหมาะสมสำหรับแต่ละสถานการณ์
| Situation | Recommended Privileges | Command Example |
|---|---|---|
| WordPress Operator | SELECT, INSERT, UPDATE, DELETE | GRANT SELECT, INSERT, UPDATE, DELETE ON wp_db.* TO 'wp_user'@'localhost'; |
| Developer (Development Environment) | ALL PRIVILEGES | GRANT ALL PRIVILEGES ON dev_db.* TO 'dev_user'@'%'; |
| Read-Only User | SELECT only | GRANT SELECT ON analytics_db.* TO 'readonly'@'localhost'; |
| Database Administrator (Production Environment) | ALL PRIVILEGES (restricted) | GRANT ALL PRIVILEGES ON production_db.* TO 'admin'@'localhost'; |
ในสภาพแวดล้อมการผลิต หลีกเลี่ยงการมอบ ALL PRIVILEGES อย่างง่ายดาย
3.4 ตรวจสอบสิทธิ์ที่มอบให้
เพื่อตรวจสอบสิทธิ์ที่มอบให้ ใช้คำสั่ง SHOW GRANTS
SHOW GRANTS FOR 'username'@'hostname';
ตัวอย่างเช่น เพื่อตรวจสอบสิทธิ์สำหรับผู้ใช้ yamada:
SHOW GRANTS FOR 'yamada'@'localhost';
ตัวอย่างผลลัพธ์:
+-----------------------------------------------------------------------------------+
| Grants for yamada@localhost |
+-----------------------------------------------------------------------------------+
| GRANT SELECT, INSERT, UPDATE ON test_db.* TO 'yamada'@'localhost' |
+-----------------------------------------------------------------------------------+
นี่แสดงสิทธิ์ที่มอบให้ผู้ใช้ในปัจจุบัน
3.5 ยกเลิกสิทธิ์ (ลบสิทธิ์การเข้าถึง)
เพื่อยกเลิกสิทธิ์เฉพาะจากผู้ใช้ ใช้คำสั่ง REVOKE
ไวยากรณ์พื้นฐาน
REVOKE privilege ON database_name.table_name FROM 'username'@'hostname';
ตัวอย่างเช่น เพื่อยกเลิกสิทธิ์ UPDATE จากผู้ใช้ yamada:
REVOKE UPDATE ON test_db.* FROM 'yamada'@'localhost';
ยกเลิกสิทธิ์ทั้งหมด
REVOKE ALL PRIVILEGES ON *.* FROM 'yamada'@'localhost';
3.6 สิ่งที่ต้องทำเมื่อการเปลี่ยนแปลงสิทธิ์ไม่มีผล
ใน MariaDB การเปลี่ยนแปลงสิทธิ์อาจไม่ถูกนำไปใช้ทันที หากเกิดขึ้น ให้รันคำสั่งต่อไปนี้:
FLUSH PRIVILEGES;
การรันคำสั่งนี้จะบังคับให้ MariaDB โหลดตารางสิทธิ์ใหม่เพื่อให้การเปลี่ยนแปลงของคุณมีผลทันที

การลบผู้ใช้ใน MariaDB
4.1 ลบผู้ใช้
เพื่อลบผู้ใช้ MariaDB ใช้คำสั่ง DROP USER
ไวยากรณ์พื้นฐาน
DROP USER 'username'@'hostname';
ตัวอย่างเช่น เพื่อลบผู้ใช้ yamada จาก localhost:
DROP USER 'yamada'@'localhost';
หลังจากรันคำสั่งนี้ ผู้ใช้ yamada จะถูกลบออกจากระบบ MariaDB อย่างสมบูรณ์
4.2 สิ่งที่ต้องตรวจสอบก่อนลบผู้ใช้
ก่อนลบผู้ใช้ มีการตรวจสอบสำคัญบางอย่างที่คุณควรทำ
ระวังอย่าลบผู้ใช้ที่จำเป็นโดยไม่ได้ตั้งใจ
(1) ตรวจสอบว่าผู้ใช้เป้าหมายมีอยู่หรือไม่
ใน MariaDB การพยายามลบผู้ใช้ที่ไม่มีอยู่จะทำให้เกิดข้อผิดพลาด
รันคำสั่งต่อไปนี้เพื่อยืนยันว่าผู้ใช้เป้าหมายมีอยู่:
SELECT user, host FROM mysql.user;
ตัวอย่างผลลัพธ์:
+---------+-----------+
| user | host |
+---------+-----------+
| root | localhost |
| yamada | localhost |
| admin | 192.168.1.100 |
+---------+-----------+
หากผู้ใช้ yamada ปรากฏในรายการนี้ ผู้ใช้นั้นสามารถถูกลบได้
(2) ตรวจสอบว่าผู้ใช้กำลังเชื่อมต่ออยู่หรือไม่
ใน MariaDB หากผู้ใช้ที่คุณกำลังลบมีเซสชันที่ใช้งานอยู่
การลบอาจ ไม่มีผลทันที สำหรับเซสชันนั้น
ตรวจสอบว่าผู้ใช้กำลังใช้งานโดยใช้คำสั่งต่อไปนี้:
SELECT user, host FROM information_schema.processlist;
ตัวอย่างผลลัพธ์:
+---------+-----------+
| user | host |
+---------+-----------+
| yamada | localhost |
| root | localhost |
+---------+-----------+
ในตัวอย่างนี้ ผู้ใช้ yamada กำลังใช้งานอยู่ ดังนั้นคุณควร ยุติเซสชัน ก่อนทำการลบ.
(3) บังคับยุติเซสชัน
คุณสามารถบังคับยุติเซสชันเฉพาะได้โดยใช้คำสั่ง KILL.
- ขั้นแรก ตรวจสอบหมายเลขกระบวนการ (คอลัมน์
ID):SELECT id, user, host FROM information_schema.processlist;
ตัวอย่างผลลัพธ์:
+----+---------+-----------+
| id | user | host |
+----+---------+-----------+
| 10 | yamada | localhost |
| 11 | root | localhost |
+----+---------+-----------+
- หาก
yamadaมีหมายเลขกระบวนการ10ให้ยุติด้วย:KILL 10;
4.3 การทำความสะอาดหลังการลบ
หลังจากลบผู้ใช้แล้ว ข้อมูลสิทธิ์ที่เหลืออยู่อาจยังคงอยู่ในฐานข้อมูล
ในกรณีเช่นนี้ ให้รัน FLUSH PRIVILEGES เพื่อรีเฟรชตารางสิทธิ์
FLUSH PRIVILEGES;
การดำเนินการนี้ทำให้มั่นใจว่าข้อมูลของผู้ใช้ที่ถูกลบจะถูกลบออกจากระบบฐานข้อมูลอย่างสมบูรณ์
4.4 หมายเหตุสำคัญเมื่อทำการลบผู้ใช้
ควรคำนึงถึงประเด็นต่อไปนี้เมื่อทำการลบผู้ใช้:
- ผู้ใช้ที่ถูกลบไม่สามารถกู้คืนได้
- เมื่อคุณรัน
DROP USERผู้ใช้ที่ถูกลบ ไม่สามารถกู้คืนได้ . - หากลบโดยผิดพลาด คุณต้องสร้างผู้ใช้ใหม่โดยใช้
CREATE USER.
- อาจต้องโอนสิทธิ์
- หากผู้ใช้ที่ถูกลบรับผิดชอบ การดำเนินการฐานข้อมูลที่สำคัญ คุณต้องโอนสิทธิ์ที่จำเป็นไปยังผู้ใช้ที่เหมาะสมคนอื่นล่วงหน้า.
- ระมัดระวังในสภาพแวดล้อมการผลิต
- ในสภาพแวดล้อมการผลิต การลบอย่างกะทันหันอาจทำให้ระบบหยุดทำงานหรือเกิดข้อผิดพลาด.
- แนะนำอย่างยิ่งให้ วิเคราะห์ผลกระทบล่วงหน้าและสร้างสำเนาสำรอง .
ข้อผิดพลาดทั่วไปและวิธีแก้ (FAQ)
เมื่อจัดการผู้ใช้ใน MariaDB คุณอาจเจอข้อผิดพลาดต่าง ๆ
ส่วนนี้อธิบาย ข้อผิดพลาดที่พบบ่อยที่สุด, สาเหตุของมัน, และวิธีแก้ไข.
5.1 คำถามพื้นฐาน (FAQ)
Q1: ความแตกต่างระหว่างการจัดการผู้ใช้ใน MariaDB และ MySQL คืออะไร?
MariaDB และ MySQL โดยทั่วไปใช้ไวยากรณ์เดียวกัน แต่มีความแตกต่างบางอย่างในฟีเจอร์
| Comparison Item | MySQL | MariaDB |
|---|---|---|
CREATE USER | Supported | Supported |
SHOW GRANTS FOR | Supported | Supported |
DROP USER | Supported | Supported |
CREATE ROLE | MySQL 8.0 and later | MariaDB 10.0 and later |
MariaDB รองรับ CREATE ROLE ซึ่งทำให้สามารถจัดการผู้ใช้แบบบทบาท (role-based) ได้.
Q2: ความแตกต่างระหว่าง localhost กับ % คืออะไร?
ในการจัดการผู้ใช้ของ MariaDB การระบุชื่อโฮสต์เป็นสิ่งสำคัญ
localhost: อนุญาตการเชื่อมต่อเฉพาะจาก เครื่องท้องถิ่น%: อนุญาตการเชื่อมต่อจาก โฮสต์ใดก็ได้ (เสี่ยงต่อความปลอดภัย)192.168.1.100: อนุญาตการเชื่อมต่อเฉพาะจาก ที่อยู่ IP เฉพาะ192.168.1.%: อนุญาตการเชื่อมต่อเฉพาะจาก ซับเน็ตเฉพาะ (192.168.1.*)
5.2 การแก้ไขปัญหา
Q3: วิธีแก้ไข “ERROR 1396 (HY000): Operation CREATE USER failed”
สาเหตุ: ผู้ใช้ที่ระบุมีอยู่แล้ว จึงไม่สามารถสร้างผู้ใช้ใหม่ได้.
วิธีแก้: ตรวจสอบว่าผู้ใช้นั้นมีอยู่หรือไม่ และลบหรือแก้ไขหากจำเป็น.
- ตรวจสอบผู้ใช้ที่มีอยู่
SELECT user, host FROM mysql.user WHERE user='yamada';
- ลบหากไม่จำเป็น
DROP USER 'yamada'@'localhost';
- เปลี่ยนรหัสผ่านแทน
ALTER USER 'yamada'@'localhost' IDENTIFIED BY 'newpassword123';
Q4: สิทธิ์ที่ให้ด้วย GRANT ไม่ได้ถูกนำไปใช้
สาเหตุ: แคชสิทธิ์ของ MariaDB ยังไม่ได้รับการรีเฟรช.
วิธีแก้: รัน FLUSH PRIVILEGES เพื่อโหลดสิทธิ์ใหม่
FLUSH PRIVILEGES;
Q5: ไม่สามารถเชื่อมต่อจากระยะไกลได้แม้ใช้ %
สาเหตุ: การเชื่อมต่อระยะไกลอาจถูกจำกัดในไฟล์กำหนดค่า MariaDB.
วิธีแก้:
- แก้ไขไฟล์กำหนดค่า
/etc/mysql/my.cnf(หรือ/etc/mysql/mariadb.conf.d/50-server.cnf) และเปลี่ยนค่าbind-addressเป็น0.0.0.0.bind-address = 0.0.0.0
- รีสตาร์ท MariaDB
sudo systemctl restart mariadb
- ใช้
%ในคำสั่งGRANTเพื่ออนุญาตการเชื่อมต่อGRANT ALL PRIVILEGES ON test_db.* TO 'remote_user'@'%' IDENTIFIED BY 'password';
Q6: เกิดข้อผิดพลาด “Access denied for user ‘user’@’host’” Error
Cause: ผู้ใช้ไม่มีสิทธิ์ที่เหมาะสม หรือรหัสผ่านไม่ถูกต้อง.
วิธีแก้ไข:
- ตรวจสอบสิทธิ์ปัจจุบัน
SHOW GRANTS FOR 'user'@'host';
- มอบสิทธิ์ที่เหมาะสม
GRANT ALL PRIVILEGES ON database_name.* TO 'user'@'host';
- ตรวจสอบว่าคุณเข้าสู่ระบบด้วยรหัสผ่านที่ถูกต้อง
mysql -u user -p
สรุป
การจัดการผู้ใช้ MariaDB มีความสำคัญต่อการปรับปรุงความปลอดภัยของฐานข้อมูลและประสิทธิภาพการดำเนินงาน. ในบทความนี้ เราได้อธิบายอย่างละเอียดเกี่ยวกับ การสร้างผู้ใช้, การจัดการสิทธิ์, การลบผู้ใช้, และข้อผิดพลาดทั่วไปพร้อมวิธีแก้ไข.
6.1 สรุป
① การสร้างผู้ใช้ใน MariaDB
- สร้างผู้ใช้ใหม่โดยใช้คำสั่ง
CREATE USER - จำกัดการเข้าถึงโดยใช้
@'hostname' - ตรวจสอบ ผู้ใช้ที่มีอยู่ ก่อนสร้างใหม่เสมอ
② การจัดการสิทธิ์ใน MariaDB
- ใช้
GRANTเพื่อมอบ สิทธิ์ที่จำเป็นขั้นต่ำ - ใช้
SHOW GRANTSเพื่อ ตรวจสอบสิทธิ์ปัจจุบัน - ใช้
REVOKEเพื่อลบสิทธิ์ที่ไม่จำเป็น - ใช้
FLUSH PRIVILEGESเพื่อบังคับใช้การเปลี่ยนแปลง
③ การลบผู้ใช้ใน MariaDB
- ลบผู้ใช้โดยใช้คำสั่ง
DROP USER - ตรวจสอบ เซสชันที่กำลังทำงานก่อนการลบ
- ล้างแคชสิทธิ์โดยใช้
FLUSH PRIVILEGES
④ ข้อผิดพลาดทั่วไปและวิธีแก้ไข
ERROR 1396 (HY000)→ ตรวจสอบผู้ใช้ที่มีอยู่และลบหากจำเป็น- การเปลี่ยนแปลงสิทธิ์ไม่ถูกนำไปใช้ → รัน
FLUSH PRIVILEGES Access denied for user→ ตรวจสอบสิทธิ์และรหัสผ่าน- ไม่สามารถเชื่อมต่อจากระยะไกลด้วย
%→ ปรับการตั้งค่าbind-address
6.2 แนวทางปฏิบัติที่ดีที่สุดสำหรับการจัดการผู้ใช้ MariaDB
- มอบเฉพาะสิทธิ์ที่จำเป็นขั้นต่ำ
- หลีกเลี่ยงการมอบ
ALL PRIVILEGESอย่างสุ่มสี่สุ่มห้า - จำกัดผู้ใช้ในระบบผลิตให้ใช้
SELECT, INSERT, UPDATE, DELETEเท่าที่เป็นไปได้ - ตรวจสอบการเปลี่ยนแปลงสิทธิ์เสมอ
- ใช้
SHOW GRANTSเพื่อยืนยันการตั้งค่าถูกต้อง - วิเคราะห์ผลกระทบก่อนลบผู้ใช้
- ระมัดระวังในระบบผลิตและสร้างสำรองข้อมูล
- บังคับใช้แนวปฏิบัติความปลอดภัยที่เข้มงวด
- กำหนดข้อจำกัด IP สำหรับการเชื่อมต่อระยะไกล
- ตั้งรหัสผ่านที่แข็งแรงสำหรับผู้ใช้ root
- ลบผู้ใช้และสิทธิ์ที่ไม่จำเป็นเป็นประจำ
6.3 ความคิดสุดท้าย
จากคู่มือนี้ คุณได้เรียนรู้ ทุกอย่างตั้งแต่พื้นฐานจนถึงเทคนิคขั้นสูงของการจัดการผู้ใช้ MariaDB. ใช้ความรู้นี้เพื่อบรรลุ การดูแลฐานข้อมูลที่ปลอดภัยและมีประสิทธิภาพ.
เราจะต่อเนื่องแชร์ข้อมูลเชิงลึกเกี่ยวกับ MariaDB ที่เป็นประโยชน์ต่อไป ดังนั้นอย่าพลาด! 🚀


