كما اخذنا سابقًا قاعدة البيانات هي مجرد مجموعة منظمة من البيانات المنظمة لسهولة الاستخدام
والاسترجاع يمكنك الرجوع الى المقال السابق هنا
- MySQL هو نظام إدارة قواعد البيانات العلائقية (RDBMS) مفتوح المصدر والمدعوم من اوراكل استنادًا إلى لغة الاستعلام الهيكلية Structured Query Language (SQL).
- تعمل MySQL على جميع الأنظمة الأساسية تقريبًا، بما في ذلك توزيعة لينكس نظام ويندوز. على الرغم من أنه يمكن استخدامه في مجموعة واسعة من التطبيقات، إلا أنه غالبًا ما يرتبط MySQL بتطبيقات الويب والنشر عبر الإنترنت.
- تعد MySQL مكونًا مهمًا من مكدس مؤسسة مفتوح المصدر يسمى LAMP. وهو نظام أساسي لتطوير الويب يستخدم لينوكس كنظام تشغيل، و سيرفر اباتشي Apache كخادم ويب، و MySQL كنظام إدارة قاعدة البيانات العلائقية و PHP كلغة برمجة نصية موجهة للكائنات.(في بعض الأحيان يتم استخدام لغة Perl أو Python بمكاتب عدة مثل sqlite3 او يمكنك استخدام مكاتب تعمل مع الدوال بدل من الاوامر مثل kvsqlite بدلاً من PHP.)
- تم تصميم MySQL في الأصل من قبل شركة MySQL AB السويدية، وتم الحصول على MySQL من قبل Sun Microsystems في عام 2008 ثم من قبل Oracle عندما اشترت Sun في عام 2010.
- يمكن للمطورين استخدام MySQl بموجب رخصة جنو العمومية العامة (GPL)، ولكن يجب على المؤسسات الحصول على ترخيص تجاري من Oracle.
- اليوم، MySQL هي نظام إدارة قواعد البيانات الذي يقبع وراء العديد من أفضل مواقع الويب في العالم وعدد لا يحصى من التطبيقات القائمة على الويب للشركات والمستهلكين، بما في ذلك فيسبوك وتويتر ويوتيوب.
- تستند MySQL على نموذج خادم العميل. جوهر MySQL هو خادم MySQL، والذي يتعامل مع جميع تعليمات قاعدة البيانات (أو الأوامر).
- يتوفر خادم MySQL كبرنامج منفصل للاستخدام في بيئة شبكية لخادم العميل وكمكتبة يمكن تضمينها (أو ربطها) في تطبيقات منفصلة.
- كما تعمل MySQL جنبًا إلى جنب مع العديد من برامج المرافق التي تدعم إدارة قواعد بيانات MySQL. تُرسل الأوامر إلى MySQLServer عبر عميل MySQL المثبت على جهاز كمبيوتر. كما تم تطوير MySQL في الأصل للتعامل مع قواعد البيانات الكبيرة بسرعة.
- على الرغم من أن MySQL يتم تثبيتها عادةً على جهاز واحد فقط، إلا أنها قادرة على إرسال قاعدة البيانات إلى مواقع متعددة، حيث يمكن للمستخدمين الوصول إليها عبر واجهات عميل MySQL مختلفة. ترسل هذه الواجهات عبارات SQL إلى الخادم ثم تعرض النتائج.
- تتيح MySQL تخزين البيانات والوصول إليها عبر محركات تخزين متعددة، بما في ذلك InnoDB و CSV و NDB.
- MySQL قادرة أيضًا على نسخ البيانات وتقسيم الجداول للحصول على أداء ومتانة أفضل. لا يُطلب من مستخدمي MySQL تعلم أوامر جديدة؛ يمكنهم الوصول إلى بياناتهم باستخدام أوامر SQL القياسية.
- تمت كتابة MySQL بلغة C و C ++ ويمكن الوصول إليها ومتاح عبر أكثر من 20 نظامًا أساسيًا، بما في ذلك نظام ماك وويندوز ولينوكس ويونكس.
- يدعم نظام RDBMS قواعد البيانات الكبيرة التي تحتوي على ملايين السجلات ويدعم العديد من أنواع البيانات بما في ذلك الأعداد الصحيحة الموقعة أو غير الموقعة بطول 1 و 2 و 3 و 4 و 8 بايت. أنواع السلاسل ذات الطول الثابت والمتغير مدعومة أيضًا.
- بالنسبة للأمان، تستخدم MySQL امتياز الوصول ونظام كلمة المرور المشفر الذي يتيح التحقق المستند إلى المضيف. يمكن لعملاء MySQL الاتصال بخادم MySQL باستخدام عدة بروتوكولات، بما في ذلك بروتوكول TCP / IP على أي منصة.
- كما تدعم MySQL عددًا من برامج العميل والمرافق وبرامج سطر الأوامر وأدوات الإدارة مثل MySQL Workbench.
- تشمل فروع MySQL، والمعروفة أيضًا باسم forks، ما يلي:
- Drizzle ، نظام إدارة قواعد بيانات مفتوح المصدر خفيف الوزن قيد التطوير يعتمد على MySQL 6.0.
- MariaDB ، بديل “مباشر” مطور من قبل المجتمع لـ MySQL يستخدم أوامر MySQL API.
- خادم Percona مع XtraDB ، نسخة محسنة من MySQL معروفة بقابلية التوسع الأفقي.
- قبل عام 2016، كان الاختلاف الرئيسي بين MySQL و SQL هو أنه يمكن استخدام الأول على منصات متعددة، في حين أن الأخير لا يمكن استخدامه إلا على نظام ويندوز. قامت مايكروسوفت منذ ذلك الحين بتوسيع SQL لدعم توزيعة لينكس، وهو تغيير دخل حيز التنفيذ في عام 2017.
- عندما يتم تثبيت MySQL عبر توزيعة لينكس، يتطلب نظام إدارة الحزم الخاص بها تكوينًا مخصصًا لضبط إعدادات الأمان والتحسين.
- كما تتيح MySQL للمستخدمين اختيار محرك التخزين الأكثر فعالية لأي جدول معين، حيث أن البرنامج قادر على استخدام محركات تخزين متعددة للجداول الفردية.
- أحد محركات MySQL هو InnoDB. تم تصميم InnoDB من أجل التوافر العالي. لهذا السبب، فهي ليست سريعة مثل المحركات الأخرى.
- تستخدم SQL نظام التخزين الخاص بها، لكنها تحتفظ بوسائل حماية متعددة ضد فقدان البيانات. كلا النظامين قادران على العمل في مجموعات من أجل التوافر العالي.
- يقدم SQL Server مجموعة متنوعة من أدوات تحليل البيانات وإعداد التقارير. SQL Server Reporting Services هي الأكثر شيوعًا وهي متاحة للتنزيل مجانًا.
- هناك أدوات تحليل مماثلة لـ MySQL متاحة من شركات برمجيات تابعة لجهات خارجية، مثل Crystal Reports XI و Actuate BIRT.
- تم تصميم MySQL ليكون متوافقًا مع الأنظمة الأخرى. وهو يدعم النشر في البيئات الافتراضية، مثل Amazon RDS لـ MySQL و Amazon RDS لـ MariaDB و Amazon Aurora لـ MySQL.
- يمكن للمستخدمين نقل بياناتهم إلى قاعدة بيانات SQL Server باستخدام أدوات ترحيل قاعدة البيانات مثل AWS Schema Conversion Tool و AWS Database Migration Service.
- دلالات كائن قاعدة البيانات بين SQL Server و MySQL متشابهة، لكنها ليست متطابقة. هناك اختلافات معمارية يجب أخذها في الاعتبار عند الترحيل من SQL Server إلى MySQL.
- في MySQL، لا يوجد فرق بين قاعدة البيانات Database والمخطط Schema، بينما يتعامل SQL Server مع الاثنين ككيانين منفصلين.
- إمكانية تخزين كبيرة للبيانات
- إمكانية الإضافة والتعديل والحذف على البيانات المخزنة
- إمكانية الوصول للبيانات المطلوبة من أي مكان مرتبط بالقاعدة الأساسية
- سرعة عالية في التخزين واسترجاع البيانات
- إمكانية نقل القاعدة من مكان لآخر
- إمكانية عمل نسخة إحطياطية واسترجاعها في حال وجود أي خلل في القاعدة
- تكلفتها العالية من حيث الأدوات المستخدمة فيها
- تتطلب مساحة تخزين كبيرة وممكن تطلب مساحة أكبر من وقت لآخر حسب البيانات المخزنة فيها
- يمكن أن تتأثر بأي عوامل خارجية مثل الهاكرز او الفيروسات
- في حال وجود أي خلل في أي من مكوناتها يمكن ان يؤدي الى عطلها بالكامل