ماي إس كيو إل يمكن وصفه بأنه نظام إدارة قواعد بيانات (مفتوح المصدر)، يتم تثبيته بشكل عام كجزء من النظام الشهير خروف مكدس (Linux وApache وMySQL وPerl/PHP/Python). وهي تطبق لغة الاستعلام الهيكلية (اختصار لـ SQL) وتقوم بتشغيل النموذج العلائقي لإدارة بياناتها.
إنها التكنولوجيا الأكثر شهرة في أحدث النظام البيئي للبيانات الضخمة. تُعرف غالبًا بأنها قاعدة البيانات الأكثر شهرة حاليًا والاستخدام الفعال والواسع الانتشار بغض النظر عن الإنتاج. من الواضح أن أي شخص مهتم بتكنولوجيا المعلومات العامة أو بيانات المؤسسة يجب أن يهدف على الأقل إلى الإلمام بـ MySQL بشكل عام.
يمكن لأي شخص جديد أو غير معتاد على الأنظمة العلائقية إنشاء أنظمة تخزين بيانات قوية وآمنة وسريعة باستخدام ماي إس كيو إل . الواجهات البرمجية وبناء الجملة ماي إس كيو إل تعد أيضًا بوابات مثالية إلى العالم الضخم من مخازن البيانات المنظمة ولغات الاستعلام الشهيرة الأخرى.
نظرة عامة على MySQL
ماي إس كيو إل هو مكتوب في سي ++ و ج . تمت كتابة محلل SQL الخاص بـ MySQL yacc ومع ذلك، فإنه يستخدم محلل معجمي محلي الصنع. يتم تنفيذ MySQL على منصات أنظمة مختلفة، بما في ذلك Tru64، وSanos، وSCO UnixWare، وSCO OpenServer، وSunOS، وSymbian، وOracle Solaris، وQNX، وOS/2 Warp، وOpenSolaris، وOpenBSD، وNovell NetWare، وNetBSD، وMicrosoft Windows، وmacOS، وLinux، وIRIX، IBM i، وeComStation، وArcaOS، وHP-UX، وFreeBSD، وBSDi، وAIX. يتوفر أيضًا منفذ MySQL لـ OpenVMS.
تستخدم مكتبات العملاء وبرنامج الخادم نفسه في MySQL توزيع الترخيص المزدوج. يتم توفيرها بموجب الإصدار الثاني من GPL أو ترخيص الملكية. يمكن الحصول على الدعم باستخدام الدليل الرسمي. بالإضافة إلى ذلك، يتوفر الدعم المجاني في نماذج وقنوات IRC المميزة. تسهل Oracle الدعم المدفوع من خلال منتجات MySQL للمؤسسات . كما أنها تختلف في نطاق الخدمات والسعر. يوجد أيضًا رقم منظمات الطرف الثالث لتقديم الخدمات والدعم.
لقد اكتسبت MySQL العديد من المراجعات الإيجابية ولاحظ هؤلاء المراجعون أنها 'تنفذ بشكل جيد للغاية ضمن الحالة المتوسطة' وأن 'واجهات المطورين والوثائق موجودة'. أيضًا، تم فحصه ليكون خادم قاعدة بيانات SQL متعدد المستخدمين ومستقرًا وسريعًا ومتعدد الخيوط.
مواصفات MySQL
MySQL علائقية
العامل الرئيسي هو التمييز بين قواعد البيانات العلائقية من خلال نطاقات التخزين الرقمية الأخرى في كيفية إدارة البيانات على مستوى عالٍ. تتضمن العديد من قواعد البيانات مثل MySQL سجلات في جداول مرمزة ومنفصلة ومتعددة بدرجة عالية، بدلاً من مجموعة واحدة شاملة أو مستودعات للمستندات غير المنظمة أو شبه المنظمة.
- فهو يسمح لأنظمة قواعد البيانات العلائقية بالاستفادة بشكل أفضل من الإجراءات مثل تحديث المعلومات أو استرجاع البيانات أو الإجراءات الأكثر تعقيدًا مثل التجميعات.
- يتم تحديد نموذج منطقي على كل محتوى قاعدة البيانات، مع تحديد على سبيل المثال القيم المسموح بها في عمود واحد، أو خصائص طرق العرض والجداول، أو كيفية ربط المؤشرات من جدولين مختلفين.
- العديد من النماذج العلائقية مشهورة لأسباب مختلفة.
- إنهم يشجعون المستخدمين الذين لديهم لغات برمجة تعريفية وبديهية، ويوجهون قاعدة البيانات بشكل أساسي إلى النتيجة المطلوبة في اللغة.
- فهو ينقل العمل إلى محركات SQL وRDBMS من أجل توفير أفضل وإنفاذ القواعد المنطقية للقوى العاملة والموارد القيمة.
مفتوح المصدر
يجوز لأي مؤسسة أو فرد توسيع قاعدة أكواد MySQL مفتوحة المصدر الخاصة بشركة Oracle ونشرها وتعديلها واستخدامها بحرية. يتم نشر البرنامج على GNU GPL (الرخصة العامة) .
- بالنسبة لتعليمات MySQL البرمجية التي تتطلب تضمينها أو دمجها في تطبيق تجاري (أو عندما لا تكون البرامج مفتوحة المصدر أولوية)، يمكن للعديد من المؤسسات شراء إصدار مرخص تجاريًا من Oracle.
- توفر هذه البدائل للمؤسسات مرونة إضافية إذا قررت التنفيذ معها ماي إس كيو إل .
- تعمل الطبيعة المجتمعية والعامة للإصدارات مفتوحة المصدر على إثراء الدعم عبر الإنترنت وثقافة التوثيق الخاصة بـ MySQL، مع التأكد أيضًا من أن الإمكانات المطورة حديثًا أو المستدامة لا تتباعد أبدًا عن متطلبات المستخدم.
MySQL متوافق
تم تطوير MySQL ليكون متوافقًا مع البنى والتقنيات الأخرى على الرغم من أنه غالبًا ما يتعاون مع خدمات الويب أو تطبيقات الإنترنت. يعمل نظام إدارة قواعد البيانات العلائقية على كل بيئة حوسبة رئيسية، بما في ذلك نظام التشغيل المستند إلى Unix، مثل عدد لا يحصى من توزيعات لينكس، ويندوز ، و ماك .
ال بنية خادم العميل ل ماي إس كيو إل يحدد أنه يمكنه دعم مجموعة من الواجهات الخلفية والواجهات المختلفة للبرمجة أيضًا. يمكن ترحيل البيانات باستخدام MySQL إلى شوكاتها ( ماريا دي بي ) ومعظم أنظمة إدارة قواعد البيانات العلائقية الأخرى أيضًا بسبب التشابه اللغوي والمعماري.
- تتيح أدوات ترحيل الطرف الثالث وأدوات Oracle لـ MySQL أيضًا نقل البيانات إلى ومن خلال مجموعة ضخمة من أنظمة التخزين المشتركة، ومع ذلك، فقد تم تطويرها لتكون مستندة إلى السحابة أو محلية.
- يمكن استخدام MySQL في بيئات افتراضية مركزية أو موزعة، كما أنها متاحة كمكتبات لتعلم تطبيقات الأغراض الصغيرة والاختبارية.
- التوافق الواسع لـ MySQL مع كل البرامج والأنظمة الأخرى يجعله على وجه التحديد الاختيار العملي لأنظمة إدارة قواعد البيانات العلائقية في معظم الحالات.
سهل الاستخدام
ربما يكون نموذج الجدول هو الأكثر بديهية ويسمح بسهولة أكبر للاستخدام، على الرغم من الطبيعة العلائقية له ماي إس كيو إل وقد تبدو هياكل التخزين الصلبة مقيدة. في الحقيقة، ماي إس كيو إل يقدم العديد من الإقرارات لدعم النطاق الضخم المحتمل من هياكل البيانات، من خلال أنواع الوقت القياسية ولكن الغنية، والتاريخ، والأبجدية الرقمية، والرقمية، والمنطقية للبيانات الجغرافية المكانية أو بيانات JSON الأكثر تقدمًا.
- بالإضافة إلى مجموعة الميزات المدمجة باهظة الثمن وأنواع البيانات البسيطة، يحتوي النظام البيئي لـ MySQL أيضًا على مجموعة من الأدوات التي تسهل كل شيء بدءًا من إدارة الخادم وحتى تحليل البيانات وإعداد التقارير.
- بغض النظر عن البنية الشاملة لنظام إدارة قواعد البيانات العلائقية، يمكن للمستخدمين العثور على جانب MySQL الذي يسمح لهم بتدوين البيانات ووضع نماذج لها بالطريقة التي يريدونها.
- تظل MySQL تقنية قواعد البيانات الأكثر بساطة للاستخدام والتعلم.
مميزات MySQL
ماي إس كيو إل يتم توفيره في نسختين متميزتين: خادم المؤسسة الخاص و خادم مجتمع MySQL مفتوح المصدر. خادم المؤسسة MySQL مفصولة بسلسلة ملحقات خاصة يتم تثبيتها مثل المكونات الإضافية للخادم، ولكنها توزع نظام ترقيم الإصدار ويتم تطويرها باستخدام قاعدة تعليمات برمجية مماثلة.
بعض الميزات الرئيسية للإصدار 5.6 من MySQL موضحة أدناه:
- دعم عبر الأنظمة الأساسية
- ان أنسي SQL 99 مجموعة فرعية واسعة وملحقات كذلك.
- الإجراءات المخزنة باللغات الإجرائية التي تلتزم تقريبًا بـ PSM/SQL.
- وجهات النظر القابلة للتحديث
- المؤشرات
- محفزات
- مخطط المعلومات
- متصل لغة تعريف البيانات (باختصار ل دي دي ال ) في حالة تطبيق InnoDB محرك التخزين.
- مخطط الأداء الذي يجمع ويجمع الإحصائيات حول أداء الاستعلام وتنفيذ الخادم لمراقبة الأغراض.
- مجموعة من خيارات وضع SQL للتحكم في سلوك وقت التشغيل مثل الوضع الصارم للالتزام بمعايير SQL.
- Savepoints مع المعاملات في حالة تطبيق InnoDB محرك التخزين (افتراضي). كما يدعم محرك التخزين NDB Cluster المعاملات.
- التخزين المؤقت للاستعلام
- دعم طبقة المقابس الآمنة
- التحديدات الفرعية (على سبيل المثال، التحديدات المتداخلة )
- دعم مدمج للنسخ المتماثل
متزامن الظاهري: يمكن تنفيذ مجموعات خادم MySQL ذاتية الإدارة مع دعم متعدد الأقسام باستخدام البرنامج الإضافي المدمج لـ Group Replication أو مجموعة جالي .
قيود MySQL
عند استخدام عدد قليل من محركات التخزين بخلاف إينو دي بي (افتراضي) ، فإن MySQL لا يتوافق مع معيار SQL الكامل لعدد قليل من الوظائف المنفذة مثل مراجع المفاتيح الخارجية. كما يمكن تحليل قيود التحقق ولكن يمكن تجنبها بواسطة كل محرك تخزين قبل الإصدار 8.0.15 من MySQL.
تقتصر المشغلات على مشغل واحد لكل توقيت/إجراء حتى الإصدار 5.7 من MySQL، مما يعني أنه يمكن تحديد مشغل واحد على الأكثر ليتم تشغيله بعد العملية، أي، إدراج ، وواحدة قبل ذلك إدراج على طاولة مماثلة. لا يمكن تحديد أي مشغلات في طرق العرض.
في 19 يناير 2038، تم إضافة الوظائف المدمجة في قاعدة بيانات MySQL مثل UNIX_TIMESTAMP العودة 0 بعد 03:14:07 بالتوقيت العالمي . كانت هناك مؤخرًا محاولة لحل المشكلة التي تم تعيينها في قائمة الانتظار الداخلية.
نشر MySQL
ماي إس كيو إل يمكن تثبيته وإنشاؤه يدويًا باستخدام التعليمات البرمجية المصدر، ولكن يتم تثبيته بشكل أساسي باستخدام حزمة ثنائية ما لم تكن هناك حاجة إلى تخصيصات فريدة. يمكن لنظام إدارة الحزم الحصول على MySQL وتثبيته بأقل جهد ممكن، وغالبًا ما تكون هناك حاجة إلى مزيد من التكوينات لضبط إعدادات التحسين والأمان في معظم توزيعات Linux.
تطبيق عالي التوفر
أوراكل ماي إس كيو إل يوفر تطبيقات عالية التوفر مع مزيج من الأدوات بما في ذلك قذيفة ماي إس كيو إل و ال جهاز التوجيه ماي إس كيو إل . وهي تعتمد على أدوات مفتوحة المصدر والنسخ المتماثل للمجموعة. يقدم MariaDB نفس العرض على عكس المنتجات.
كيفية إعادة تشغيل خادم MySQL؟
يمكننا استخدام الأمر، أي، ' خدمة' لتنفيذ العمليات الشائعة مثل بدء خادم MySQL وإيقافه وإعادة تشغيله في Ubuntu. أولاً، نحتاج إلى تسجيل الدخول إلى خادم الويب الخاص بنا وإدخال أحد الأوامر التالية.
يمكننا إدخال الأمر أدناه لبدء خادم MySQL في Ubuntu:
$ sudo systemctl start mysql.service $ sudo systemctl status mysql.service
يمكننا إدخال الأمر أدناه لإيقاف خادم MySQL في Ubuntu:
$ sudo systemctl stop mysql.service $ sudo systemctl status mysql.service
يمكننا إدخال الأمر أدناه لإعادة تشغيل خادم MySQL في Ubuntu:
$ sudo systemctl restart mysql.service
يمكننا إدخال الأمر أدناه للتحقق من حالة خادم MySQL في Ubuntu (سواء كان يعمل أم لا):
$ sudo systemctl status mysql.service