PostgreSQL vs MySQL - الفرق بينهما
الفرق الرئيسي بين PostgreSQL و MySQL
- PostgreSQL هو نظام إدارة قواعد البيانات العلائقية (ORDBMS)، في حين MySQL هو نظام إدارة قواعد البيانات DBMS الموجه للمجتمع.
- PostgreSQL يدعم ميزات التطبيقات الحديثة مثل JSON وXML وما إلى ذلك MySQL يدعم JSON فقط.
- مقارنة PostgreSQL vs MySQL الأداء، PostgreSQL يعمل بشكل جيد عند تنفيذ الاستعلامات المعقدة، في حين MySQL يعمل بشكل جيد في أنظمة OLAP وOLTP.
- PostgreSQL متوافق تمامًا مع ACID، بينما MySQL متوافق مع ACID فقط عند استخدامه مع InnoDB وNDB.
- PostgreSQL يدعم وجهات النظر المادية، في حين MySQL لا يدعم وجهات النظر المادية.

ما هي تفاصيل PostgreSQL?
Postgre هو نظام إدارة قواعد بيانات كائنية-علائقية (ORDBMS). تم تطويره في قسم علوم الكمبيوتر في جامعة كاليفورنيا. كان Postgre رائدًا في العديد من المفاهيم.
Postgre هو نظام قاعدة بيانات علائقية من فئة المؤسسات. إنه سهل الإعداد و تثبيت. إنه يوفر الدعم لـ SQL وNoSQL. لديه مجتمع رائع يسعد بخدمتك عندما تواجه مشكلات أثناء استخدام PostgreSQL.
ما هي تفاصيل MySQL?
MYSQL هو نظام إدارة قواعد بيانات شائع الاستخدام على نطاق واسع. الاسم مأخوذ من اسم الفتاة My وهي ابنة المؤسس المشارك Michael Widenius. الكود المصدري لـ MYSQL متاح بموجب ترخيص GNU GPL. المشروع مملوك ومدار بواسطة Oracle مؤسسة.
إنه نظام إدارة قواعد البيانات العلائقية (RDBMS) ويعمل بشكل أساسي على نموذج قاعدة البيانات العلائقية. فهو يجعل إدارة قاعدة البيانات أسهل وأكثر مرونة.
الفرق بين MySQL و PostgreSQL
أدناه هو الفرق الرئيسي بين PostgreSQL و MySQL:
| معامل | MYSQL | PostgreSQL |
|---|---|---|
| مفتوحة المصدر | استخدم MySQL لقد جعل المشروع كود المصدر الخاص به متاحًا بموجب شروط رخصة جنو العامة. | PostgreSQL يتم إصداره تحت PostgreSQL الترخيص وهو ترخيص مجاني مفتوح المصدر. وهذا مشابه لتراخيص BSD وMIT. |
| الامتثال الحمضي | MySQL متوافق مع ACID فقط عند استخدامه مع InnoDB وNDB Cluster محركات التخزين. | PostgreSQL متوافق تمامًا مع ACID. |
| متوافق مع SQL | MySQL متوافق جزئيًا مع SQL. على سبيل المثال، لا يدعم قيد التحقق. | PostgreSQL متوافق إلى حد كبير مع SQL. |
| دعم المجتمع | يحتوي على مجتمع كبير من المساهمين الذين يركزون بشكل أساسي على صيانة الميزات الموجودة مع ظهور ميزات جديدة من حين لآخر. | يعمل المجتمع النشط باستمرار على تحسين ميزاته الحالية بينما يسعى مجتمعه المبتكر إلى ضمان بقائه قاعدة البيانات الأكثر تقدمًا. يتم إصدار ميزات متطورة جديدة وتحسينات أمنية بانتظام. |
| هاملت | يتم استخدامه في الغالب للمشاريع المستندة إلى الويب التي تحتاج إلى قاعدة بيانات لمعاملات البيانات المباشرة. | يتم استخدامه بشكل كبير في الأنظمة الكبيرة حيث تكون سرعات القراءة والكتابة مهمة |
| افضل مناسب | MySQL يعمل بشكل جيد في أنظمة OLAP وOLTP عندما تكون هناك حاجة لسرعات القراءة فقط. | PostgreSQL يؤدي أداءً جيدًا عند تنفيذ الاستعلامات المعقدة. |
| دعم JSON | MySQL لديه دعم لنوع بيانات JSON ولكنه لا يدعم أي ميزة NoSQL أخرى. | دعم JSON وميزات NoSQL الأخرى مثل دعم XML الأصلي. كما يسمح بفهرسة بيانات JSON للوصول إليها بشكل أسرع. |
| دعم وجهات النظر المحققة | يدعم الجداول المؤقتة ولكنه لا يقدم وجهات نظر مادية. | يدعم وجهات النظر المادية والجداول المؤقتة. |
| النظام الإيكولوجي | MySQL لديه نظام بيئي ديناميكي مع متغيرات مثل MariaDB، بيركونا، جاليرا، الخ. | كان لدى Postgres خيارات محدودة محدودة. ومع ذلك، فإنه يتغير مع الميزات الجديدة المقدمة في الإصدار الأحدث. |
| قيم افتراضية | يمكن استبدال القيم الافتراضية على مستوى الجلسة ومستوى البيان | يمكن تغيير القيم الافتراضية على مستوى النظام فقط |
| فهارس شجرة B | يمكن استخدام فهرسين أو أكثر من فهارس B-tree عندما يكون ذلك مناسبًا. | فهارس B-tree المدمجة في وقت التشغيل للتقييم هي مسندات محولة ديناميكيًا. |
| إحصائيات الكائن | إحصائيات كائن جيدة إلى حد ما | إحصائيات كائن جيدة جدًا |
| أسئلة Stack Overflow | 532K | 89.3K |
| الانضمام إلى القدرات | الحد من إمكانيات الانضمام | قدرات الانضمام جيدة |
| نجوم جيثب | 3.34k | 5.6k |
| فوركس | 1.6k | 2.4k |
| الشركات البارزة التي تستخدم المنتج | إير بي إن بي، أوبر، تويتر | Netflix، انستجرام، جروبون |
تاريخ MySQL
- MySQL تم إنشاؤه من قبل شركة سويدية تدعى MySQL AB 1995
- اكتسبت الشمس MySQL AB بمبلغ 1 مليار دولار في عام 2008
- Oracle اشترت شركة Sun في عام 2010 وبالتالي اكتسبت MySQL
- في 2012، MySQL كان متشعبا في MariaDB من قبل المؤسس مايكل Widenius في إطار شركة Monty Program Ab
- MariaDB يستبدل MySQL لمعظم التوزيعات في عام 2013
- تم دمج برنامج مونتي أب مع SkySQL-2013
- تمت إعادة تسمية SkySQL Ab إلى MariaDB الشركة- 2014
تاريخ PostgreSQL
- تم تطوير INGRES عام 1977
- قام مايكل ستونبراكر وزملاؤه بتطوير Postgres-1986
- دعم ACID الحقيقي وPL/pgSQL – 1990
- تم إصداره باسم Postgres95 في عام 1995
- إعادة إصدار Postgres95 باسم PostgreSQL ٢٠٢٤/٢٠٢٣
- تمت إضافة MVCC وGUC وعناصر التحكم في بناء الجملة ومحمل اللغة الإجرائية - 1998-2001
- الإصدار 7.2 إلى 8.2: ميزات مضمنة مثل دعم المخطط، وفراغ غير محظور، والأدوار، وdblink - 2002-2006
- PostgreSQL 8.4 صدر في 2009
- PostgreSQL 9.0 صدر في 2010
- NYCPUG (مدينة نيويورك PostgreSQL مجموعة المستخدمين) تنضم إلى PgUS (الولايات المتحدة PostgreSQL الجمعية)- 2013
- نظمت PGconf-2014
لماذا استخدام MySQL?
فيما يلي بعض الأسباب المهمة لاستخدام MYSQL:
- يدعم ميزات مثل النسخ المتماثل Master-Slave وScale-Out
- وهو يدعم تقارير التفريغ، وتوزيع البيانات الجغرافية، وما إلى ذلك.
- حمل منخفض جدًا مع محرك التخزين MyISAM عند استخدامه لتطبيقات القراءة في الغالب
- دعم محرك تخزين الذاكرة للجداول المستخدمة بشكل متكرر
- الاستعلام عن ذاكرة التخزين المؤقت للبيانات المستخدمة بشكل متكرر
- يمكنك بسهولة التعلم واستكشاف الأخطاء وإصلاحها MySQL من مصادر مختلفة مثل المدونات والأوراق البيضاء والكتب
لماذا استخدام PostgreSQL?
الأسباب الرئيسية لاستخدام PostgreSQL هي:
- يقدم ميزات مفيدة مثل تقسيم الجدول، واسترداد النقاط في الوقت، وDDL للمعاملات، وما إلى ذلك.
- القدرة على الاستفادة من المتاجر الرئيسية التابعة لجهات خارجية في بنية أساسية كاملة لـ PKI
- يمكن للمطورين تعديل التعليمات البرمجية مفتوحة المصدر لأنها مرخصة بموجب BSD دون الحاجة إلى المساهمة في التحسينات
- يمكن لبائعي البرمجيات المستقلين إعادة توزيعها دون الخوف من "الإصابة" بترخيص مفتوح المصدر
- يمكن تعيين المستخدمين والأدوار امتيازات على مستوى الكائن
- يدعم AES و3DES وخوارزميات تشفير البيانات الأخرى.

ميزات MySQL
- MySQL يحركها المجتمع نظام إدارة قواعد البيانات (DBMS).
- متوافق مع منصات مختلفة باستخدام جميع اللغات الرئيسية والبرامج الوسيطة
- ويقدم الدعم للتحكم في التزامن متعدد الإصدارات
- متوافق مع معيار ANSI SQL
- يسمح بنسخ SSL المستند إلى السجل والمستند إلى المشغل
- موجه للكائنات ومتوافق مع ANSI-SQL2008
- تصميم متعدد الطبقات مع وحدات مستقلة
- متعدد الخيوط بالكامل، باستخدام خيوط Kernel
- الخادم متاح في قاعدة البيانات المضمنة أو نموذج خادم العميل
- يقدم أدوات مدمجة لتحليل الاستعلام وتحليل المساحة
- يمكنه التعامل مع أي كمية من البيانات، بما يصل إلى 50 مليون صف أو أكثر
- MySQL يعمل على العديد من أنواع UNIX، وكذلك على أنظمة أخرى غير UNIX مثل Windows و نظام التشغيل/2
ميزات PostgreSQL
- مجتمع نشط يتسارع في تطوره
- البديل الأكثر شيوعا ل OracleوDB2 وSQL Server
- يعمل على جميع منصات نظام التشغيل الرئيسية التي قد تكون لديك
- يدعم MVCC أعدادًا كبيرة من المستخدمين المتزامنين
- فهرسة واسعة النطاق لإعداد التقارير عالية الأداء
- دعم التطبيقات الحديثة (XML وJSON)
- دعم ANSI SQL للمهارات/ التعليمات البرمجية القابلة للنقل
- دعم المفاتيح الخارجية للتخزين الفعال للبيانات
- انضمام الجدول وطرق عرضه لاسترجاع البيانات بشكل مرن
- المشغلات/الإجراءات المخزنة للبرامج والمعاملات المعقدة
- النسخ المتماثل للنسخ الاحتياطي للبيانات وقراءة قابلية التوسع
عيوب الاستخدام MySQL
- المعاملات المتعلقة بكتالوج النظام ليست كذلك حمض متوافقة
- قد يؤدي تعطل الخادم في بعض الأحيان إلى إتلاف كتالوج النظام
- لا توجد وحدة مصادقة قابلة للتوصيل تمنع الحساب المُدار مركزيًا
- لا يوجد دعم للأدوار لذلك يصعب الحفاظ على الامتيازات للعديد من المستخدمين
- الإجراءات المخزنة غير قابلة للتخزين المؤقت
- تكون الجداول المستخدمة للإجراء أو المشغل مقفلة مسبقًا دائمًا
عيوب الاستخدام PostgreSQL
- تتطلب الحلول الخارجية الحالية منحنى تعليمي عالي
- لا توجد إمكانية ترقية للإصدارات الرئيسية
- يجب تصدير البيانات أو نسخها إلى الإصدار الجديد
- Double هناك حاجة إلى التخزين أثناء عملية الترقية
- لا يمكن استخدام الفهارس لإرجاع نتائج الاستعلام مباشرة
- لا يتم تخزين خطط تنفيذ الاستعلام مؤقتًا
- قد تصبح عمليات التحميل المجمعة مقيدة بوحدة المعالجة المركزية
- دعم بائعي البرامج المستقلة المتفرقة
ايهما افضل MySQL or PostgreSQL?
وبعد المقارنة بين الاثنين يمكننا أن نقول ذلك MySQL لقد قامت بعمل رائع في تحسين نفسها لتظل ذات صلة، ولكن على الجانب الآخر PostgreSQL، لا تحتاج إلى أي ترخيص. كما يوفر أيضًا وراثة الجدول وأنظمة القواعد وأنواع البيانات المخصصة وأحداث قاعدة البيانات. لذلك، فإنه بالتأكيد حواف أعلاه MySQL.
ملخص
- MYSQL هو نظام إدارة قواعد بيانات شائع الاستخدام على نطاق واسع. وهو نظام إدارة قواعد البيانات العلائقية (RDBMS) ويعمل بشكل أساسي على نموذج قاعدة البيانات العلائقية. وهو يجعل إدارة قواعد البيانات أسهل وأكثر مرونة.
- Postgre هو نظام إدارة قواعد بيانات كائنية-علائقية (ORDBMS). تم تطويره في قسم علوم الكمبيوتر في جامعة كاليفورنيا. كان Postgre رائدًا في العديد من المفاهيم.
- MySQL تم إنشاؤه من قبل شركة سويدية تدعى MySQL أ ب 1995.
- PostgreSQL تم إصداره باسم Postgres95 في عام 1995
- MySQL هو نظام إدارة قواعد البيانات DBMS الموجه للمجتمع.
- PostgreSQL لديها مجتمع نشط يعمل على تسريع عملية تطويرها.
