ฐานข้อมูล MySql เป็นตัวเลือกแรกสำหรับฐานข้อมูลส่วนหลังของเว็บไซต์ขนาดเล็กและขนาดกลาง เนื่องจากเป็นฐานข้อมูลฟรีสำหรับแอปพลิเคชันที่ไม่ใช่เชิงพาณิชย์ นักพัฒนาเว็บไซต์สามารถสร้างแพลตฟอร์ม "Linux+Apache+PHP+MySql" ซึ่งคุ้มค่าที่สุด และแพลตฟอร์มที่มีประสิทธิภาพ เมื่อใช้ เมื่อพัฒนา MySql เอกสารที่มาพร้อมกับ MySql จะเป็นข้อมูลอ้างอิงที่ดีสำหรับมือใหม่ ฐานข้อมูล MySql เป็นตัวเลือกแรกสำหรับฐานข้อมูลส่วนหลังของเว็บไซต์ขนาดเล็กและขนาดกลาง เนื่องจากเป็นฐานข้อมูลฟรีสำหรับแอปพลิเคชันที่ไม่ใช่เชิงพาณิชย์ นักพัฒนาเว็บไซต์สามารถสร้างแพลตฟอร์ม "Linux+Apache+PHP+MySql" ซึ่งคุ้มค่าที่สุด และแพลตฟอร์มที่มีประสิทธิภาพ เมื่อใช้ เมื่อพัฒนา MySql เอกสารที่มาพร้อมกับ MySql จะเป็นข้อมูลอ้างอิงที่ดีสำหรับมือใหม่
ปัจจุบันสภาพแวดล้อมการพัฒนาของผู้ใช้ทั่วไปส่วนใหญ่เป็น Windows หรือ Linux ใน Windows มี MySql เป็นบริการ คุณควรตรวจสอบให้แน่ใจว่าได้เริ่มบริการแล้วก่อนใช้งาน หากยังไม่เริ่มใช้งาน คุณสามารถใช้ net start ได้ คำสั่ง mysql เพื่อเริ่มการทำงาน เมื่อเริ่มต้นใน Linux คุณสามารถใช้คำสั่ง "/etc/rc.d/init.d/mysqld start" โปรดทราบว่าตัวเริ่มต้นควรมีสิทธิ์ของผู้ดูแลระบบ
MySql ที่ติดตั้งใหม่มีบัญชีรูทที่มีรหัสผ่านว่างเปล่าและบัญชีที่ไม่ระบุชื่อ นี่เป็นความเสี่ยงด้านความปลอดภัยอย่างมาก สำหรับแอปพลิเคชันที่สำคัญบางอย่าง เราควรปรับปรุงความปลอดภัยให้มากที่สุดที่นี่ เราควรลบบัญชีที่ไม่ระบุชื่อและบัญชีรูท หากต้องการตั้งรหัสผ่านให้ใช้คำสั่งต่อไปนี้:
ใช้ mysql;
ลบออกจากผู้ใช้โดยที่ User = "";
อัปเดตชุดผู้ใช้ รหัสผ่าน=รหัสผ่าน('รหัสผ่านใหม่') โดยที่ผู้ใช้='รูท';
หากคุณต้องการจำกัดเทอร์มินัลการเข้าสู่ระบบที่ผู้ใช้ใช้ คุณสามารถอัปเดตฟิลด์โฮสต์ของผู้ใช้ที่เกี่ยวข้องในตารางผู้ใช้ได้ หลังจากทำการเปลี่ยนแปลงข้างต้น คุณควรเริ่มบริการฐานข้อมูลใหม่ ในขณะนี้ คุณสามารถใช้สิ่งต่อไปนี้ คำสั่งที่คล้ายกันเมื่อเข้าสู่ระบบ:
mysql -uroot -p;
mysql -uroot -pnewpassword;
mysql mydb -uroot -p;
mysql mydb -uroot -pnewpassword;
พารามิเตอร์คำสั่งข้างต้นเป็นส่วนหนึ่งของพารามิเตอร์ที่ใช้กันทั่วไป สำหรับรายละเอียด โปรดดูที่เอกสารประกอบ Mydb นี่คือชื่อของฐานข้อมูลที่จะเข้าสู่ระบบ
ในการพัฒนาและการใช้งานจริง ผู้ใช้ไม่ควรใช้เพียงผู้ใช้รูทเพื่อเชื่อมต่อกับฐานข้อมูล แม้ว่าจะสะดวกในการใช้ผู้ใช้รูทในการทดสอบ แต่ก็จะนำความเสี่ยงด้านความปลอดภัยที่สำคัญมาสู่ระบบ และไม่เอื้อต่อการปรับปรุงการจัดการ เทคโนโลยี. เราให้สิทธิ์ฐานข้อมูลที่เหมาะสมที่สุดแก่ผู้ใช้ที่ใช้ในแอปพลิเคชัน ตัวอย่างเช่น ผู้ใช้ที่แทรกเฉพาะข้อมูลไม่ควรได้รับอนุญาตให้ลบข้อมูล การจัดการผู้ใช้ MySql ดำเนินการผ่านตารางผู้ใช้ มีสองวิธีทั่วไปในการเพิ่มผู้ใช้ใหม่ วิธีหนึ่งคือการแทรกแถวข้อมูลที่เกี่ยวข้องในตารางผู้ใช้และตั้งค่าการอนุญาตที่เกี่ยวข้อง วิธีที่สองคือการสร้างผู้ใช้ที่มีสิทธิ์บางอย่างผ่าน คำสั่ง GRANT การใช้งานทั่วไปของ GRANT มีดังนี้:
ให้สิทธิ์ทั้งหมดบน mydb.* แก่ NewUserName@HostName ที่ระบุโดย "รหัสผ่าน" ;
ให้สิทธิ์การใช้งานบน *.* แก่ NewUserName@HostName ที่ระบุด้วย "รหัสผ่าน";
ให้สิทธิ์เลือก, แทรก, อัปเดตบน mydb.* ให้กับ NewUserName@HostName ที่ระบุโดย "รหัสผ่าน";
ให้สิทธิ์อัปเดต ลบบน mydb.TestTable ไปยัง NewUserName@HostName ที่ระบุโดย "รหัสผ่าน";
เพื่อให้ผู้ใช้สามารถจัดการสิทธิ์ของเขาในออบเจ็กต์ที่เกี่ยวข้องได้ ให้เพิ่มตัวเลือก WITH GRANT OPTION หลัง GRANT สำหรับผู้ใช้ที่เพิ่มโดยการแทรกลงในตาราง User ควรอัปเดตและเข้ารหัสช่องรหัสผ่านโดยใช้ฟังก์ชัน PASSWORD เพื่อป้องกันไม่ให้ผู้ไร้ยางอายแอบดูรหัสผ่าน ผู้ใช้ที่ไม่ได้ใช้งานอีกต่อไปควรถูกล้าง และผู้ใช้ที่มีสิทธิ์เกินขีดจำกัดควรได้รับการเรียกคืนทันที สามารถเรียกคืนสิทธิ์ได้โดยการอัปเดตฟิลด์ที่เกี่ยวข้องในตารางผู้ใช้ หรือใช้การดำเนินการ REVOKE
สิทธิ์การจัดการทั่วโลก:
ไฟล์: อ่านและเขียนไฟล์บนเซิร์ฟเวอร์ MySQL
กระบวนการ: แสดงหรือปิดเธรดบริการที่เป็นของผู้ใช้รายอื่น
โหลดซ้ำ: โหลดรายการควบคุมการเข้าถึง รีเฟรชบันทึก ฯลฯ
ปิดระบบ: ปิดบริการ MySQL
สิทธิ์ฐานข้อมูล/ตารางข้อมูล/คอลัมน์ข้อมูล:
แก้ไข: แก้ไขตารางข้อมูลที่มีอยู่ (เช่น การเพิ่ม/ลบคอลัมน์) และดัชนี
สร้าง: สร้างฐานข้อมูลหรือตารางข้อมูลใหม่
DELETE: ลบบันทึกออกจากตาราง
DROP: ลบตารางข้อมูลหรือฐานข้อมูล
INDEX: สร้างหรือลบดัชนี
INSERT: เพิ่มบันทึกลงในตาราง
SELECT: แสดง/ค้นหาบันทึกของตาราง
UPDATE: แก้ไขบันทึกที่มีอยู่ในตาราง
สิทธิ์พิเศษ:
ทั้งหมด: อนุญาตให้ทำอะไรก็ได้ (เหมือนกับรูท)
การใช้งาน: อนุญาตให้เข้าสู่ระบบเท่านั้น - ไม่อนุญาตให้มีอย่างอื่นอีก
สุดท้ายนี้ ฉันจะสาธิตการทำงานของ MySql ภายใต้ RedHat9.0:
เลือกผู้ใช้รูทของฐานข้อมูลเพื่อเข้าสู่ระบบ
[weiwen@weiwenlinux]$mysql -uroot -p
ใส่รหัสผ่าน:MyPassword
mysql>สร้างฐานข้อมูล mydb;
แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.02 วินาที)
mysql>ใช้ mydb;
ฐานข้อมูลมีการเปลี่ยนแปลง
mysql> สร้างตาราง TestTable (รหัสหลัก int aut_increation,
ชื่อผู้ใช้ varchar(16) ไม่เป็นโมฆะ
ที่อยู่ varchar(255));
แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.02 วินาที)
mysql>ให้สิทธิ์ทั้งหมดบน mydb.* เพื่อ test@localhost ที่ระบุโดย "test";
แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.01 วินาที)
mysql>ออก
ลาก่อน
[weiwen@weiwenlinux]$mysql mydb -utest -ptest
หนึ่งในนั้น test.sql เป็นสคริปต์ SQL ที่แก้ไขด้วย vi และมีเนื้อหาดังนี้:
แทรกลงในค่า TestTable (ชื่อผู้ใช้, ที่อยู่) ('ทอม', 'เซี่ยงไฮ้');
แทรกลงในค่า TestTable(ชื่อผู้ใช้,ที่อยู่)('John','ปักกิ่ง');
เลือก * จาก TestTable;
หากต้องการเรียกใช้สคริปต์ SQL ที่แก้ไข คุณสามารถใช้ชื่อไฟล์ต้นฉบับหรือชื่อไฟล์ .
ข้างต้นเป็นเพียงแบบฝึกหัดง่ายๆ สำหรับมือใหม่ ในการเป็นผู้เชี่ยวชาญด้านฐานข้อมูล คุณควรแสวงหาความรู้อย่างไม่เหน็ดเหนื่อย และคิด พยายาม และคิดใหม่อยู่เสมอ