استخدام MySQL
MySQL قاعدة بيانات علائقية تستخدمها مواقع وتطبيقات كثيرة. يسهل تثبيتها، وتتوفر لها أدوات متنوعة، وتدعم SQL القياسي مع امتدادات خاصة بها. تشرح هذه المقالة التثبيت، وإنشاء قاعدة بيانات ومستخدم، وإنشاء جدول، والنسخ الاحتياطي باستخدام `mysqldump`.
ملاحظة اختبار: الحاسوب الذي كُتبت عليه هذه المقالة لا يحتوي على خادم MySQL، لذلك لم تُشغَّل الأوامر هنا. وSQL المستخدم هو نفس SQL القياسي الذي اختُبر باستخدام SQLite في مقالة SQL. شغّله بنفسك على جهاز ثُبِّت عليه MySQL.
ما الذي تحتاجه
- MySQL 8.0 أو أحدث من dev.mysql.com، أو MariaDB التي تستخدم معظم الأوامر نفسها
- كلمة مرور root التي حددتها أثناء التثبيت
كيف يتصل العملاء
الخطوة 1: الاتصال
mysql -u root -p
الخطوة 2: إنشاء قاعدة بيانات ومستخدم
CREATE DATABASE school CHARACTER SET utf8mb4;
CREATE USER 'teacher'@'localhost' IDENTIFIED BY 'change-me';
GRANT SELECT, INSERT, UPDATE, DELETE ON school.* TO 'teacher'@'localhost';
FLUSH PRIVILEGES;
يتيح `CHARACTER SET utf8mb4` تخزين النص التايلاندي والرموز التعبيرية بشكل صحيح. استبدل كلمة المرور التجريبية بكلمة قوية.
الخطوة 3: إنشاء جدول وإضافة بيانات
USE school;
CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
score INT
);
INSERT INTO students (name, score) VALUES ('สมชาย', 85), ('สมหญิง', 72);
SELECT name, score FROM students WHERE score >= 80;
يُنشئ `AUTO_INCREMENT` الأرقام تلقائيًا، ويحدد `VARCHAR(100)` الحد الأقصى لطول النص.
الخطوة 4: النسخ الاحتياطي والاستعادة
mysqldump -u root -p school > school_backup.sql
mysql -u root -p school < school_backup.sql
أخطاء شائعة
- **ظهور النص التايلاندي كعلامات استفهام:** تأكد من أن قاعدة البيانات والاتصال يستخدمان `utf8mb4`.
- **إعطاء حساب root للتطبيق:** أنشئ مستخدمًا منفصلًا بالصلاحيات اللازمة فقط.
- **عدم أخذ نسخة احتياطية قبل التغيير:** شغّل `mysqldump` قبل كل تعديل على بنية الجدول.
الخطوات التالية
تعلّم الفهارس لتسريع الاستعلامات، واستخدم `EXPLAIN` لمعرفة خطة تنفيذ الاستعلام، وأعدّ نسخًا احتياطية تلقائية.
الخلاصة
يعمل MySQL كخادم يفصل بين قواعد البيانات وصلاحيات المستخدمين. إعداد `utf8mb4` منذ البداية، وإنشاء مستخدمين منفصلين، والنسخ الاحتياطي المنتظم، هي أسس الاستخدام الفعلي.