معلمات الخادم في قاعدة بيانات Azure ل MariaDB
هام
قاعدة بيانات Azure ل MariaDB على مسار التقاعد. نوصي بشدة بالترحيل إلى قاعدة بيانات Azure ل MySQL. لمزيد من المعلومات حول الترحيل إلى قاعدة بيانات Azure ل MySQL، راجع ما يحدث لقاعدة بيانات Azure ل MariaDB؟.
توفر هذه المقالة اعتبارات وإرشادات لتكوين معلمات الخادم في قاعدة بيانات Azure ل MariaDB.
ما هي المعلمات المتعلقة بالخادم؟
يوفر محرك MariaDB العديد من متغيرات/معلمات الخادم المختلفة التي يمكن استخدامها لتكوين سلوك المحرك وضبطه. يمكن تعيين بعض المعلمات ديناميكيًا أثناء وقت التشغيل بينما البعض الآخر "ثابت"، مما يتطلب إعادة تشغيل الخادم من أجل التطبيق.
تعرض قاعدة بيانات Azure ل MariaDB القدرة على تغيير قيمة معلمات خادم MariaDB المختلفة باستخدام مدخل Azure وAzure CLI وPowerShell لمطابقة احتياجات حمل العمل الخاص بك.
معلمات الخادم القابلة للتكوين
قائمة معلمات الخادم المدعومة تتزايد باستمرار. استخدم علامة تبويب معلمات الخادم في مدخل Azure لعرض القائمة الكاملة وتكوين قيم معلمات الخادم.
راجع الأقسام التالية أدناه لمعرفة المزيد حول حدود العديد من معلمات الخادم التي يتم تحديثها بشكل شائع. يتم تحديد الحدود حسب فئة التسعير و vCores للخادم.
log_bin_trust_function_creators
في قاعدة بيانات Azure ل MariaDB، يتم تمكين السجلات الثنائية دائما (أي log_bin
يتم تعيين إلى ON). في حالة رغبتك في استخدام المشغلات، ستحصل على خطأ مشابه لم يكن لديك امتياز SUPER ويتم تمكين التسجيل الثنائي (قد ترغب في استخدام المتغير الأقل أمانا log_bin_trust_function_creators
).
تنسيق التسجيل الثنائي هو دائمًا ROW وتستخدم جميع الاتصالات بالخادم دائمًا التسجيل الثنائي المستند إلى الصف. مع التسجيل الثنائي المستند إلى الصف، مشاكل الأمان غير موجودة ولا يمكن قطع التسجيل الثنائي، حتى تتمكن من تعيين log_bin_trust_function_creators
بأمان إلى TRUE.
innodb_buffer_pool_size
راجع وثائق MariaDB لمعرفة المزيد حول هذه المعلمة.
خوادم تدعم ما يصل إلى 4 ТБ تخزين
مستوى التسعير | الذاكرة (الذاكرات) الأساسية الظاهرية | القيمة الافتراضية (بايت) | قيمة الحد الأدنى (بايت) | أقصى قيمة (بايت) |
---|---|---|---|---|
أساسي | 1 | 872415232 | 134217728 | 872415232 |
أساسي | 2 | 2684354560 | 134217728 | 2684354560 |
General Purpose | 2 | 3758096384 | 134217728 | 3758096384 |
General Purpose | 4 | 8053063680 | 134217728 | 8053063680 |
General Purpose | 8 | 16106127360 | 134217728 | 16106127360 |
General Purpose | 16 | 32749125632 | 134217728 | 32749125632 |
General Purpose | 32 | 66035122176 | 134217728 | 66035122176 |
General Purpose | 64 | 132070244352 | 134217728 | 132070244352 |
مُحسّن للذاكرة | 2 | 7516192768 | 134217728 | 7516192768 |
مُحسّن للذاكرة | 4 | 16106127360 | 134217728 | 16106127360 |
مُحسّن للذاكرة | 8 | 32212254720 | 134217728 | 32212254720 |
مُحسّن للذاكرة | 16 | 65498251264 | 134217728 | 65498251264 |
مُحسّن للذاكرة | 32 | 132070244352 | 134217728 | 132070244352 |
تدعم الخوادم ما يصل إلى 16 ТБ تخزين
مستوى التسعير | الذاكرة (الذاكرات) الأساسية الظاهرية | القيمة الافتراضية (بايت) | قيمة الحد الأدنى (بايت) | أقصى قيمة (بايت) |
---|---|---|---|---|
أساسي | 1 | 872415232 | 134217728 | 872415232 |
أساسي | 2 | 2684354560 | 134217728 | 2684354560 |
General Purpose | 2 | 7516192768 | 134217728 | 7516192768 |
General Purpose | 4 | 16106127360 | 134217728 | 16106127360 |
General Purpose | 8 | 32212254720 | 134217728 | 32212254720 |
General Purpose | 16 | 65498251264 | 134217728 | 65498251264 |
General Purpose | 32 | 132070244352 | 134217728 | 132070244352 |
General Purpose | 64 | 264140488704 | 134217728 | 264140488704 |
مُحسّن للذاكرة | 2 | 15032385536 | 134217728 | 15032385536 |
مُحسّن للذاكرة | 4 | 32212254720 | 134217728 | 32212254720 |
مُحسّن للذاكرة | 8 | 64424509440 | 134217728 | 64424509440 |
مُحسّن للذاكرة | 16 | 130996502528 | 134217728 | 130996502528 |
مُحسّن للذاكرة | 32 | 264140488704 | 134217728 | 264140488704 |
innodb_file_per_table
إشعار
innodb_file_per_table
يمكن تحديث فقط في مستويات التسعير للأغراض العامة والذاكرة المحسنة.
يخزن MariaDB جدول InnoDB في مساحات جداول مختلفة استنادا إلى التكوين الذي قدمته أثناء إنشاء الجدول. بنية التخزين الجدولية للنظام هي منطقة التخزين لقاموس بيانات InnoDB. تحتوي بنية التخزين الجدولية file-per-table على بيانات وفهارس لجدول InnoDB واحد، ويتم تخزينها في نظام الملفات في ملف البيانات الخاص بها. يتم التحكم في هذا السلوك بواسطة معلمة الخادم innodb_file_per_table
. يؤدي تعيين innodb_file_per_table
إلى OFF
إلى قيام InnoDB بإنشاء جداول في بنية التخزين الجدولية للنظام. وبخلاف ذلك، يقوم InnoDB بإنشاء جداول في بنيات التخزين الجدولية file-per-table.
تدعم Azure Database for MariaDB في أكبر ТБ، في ملف بيانات واحد. إذا كان حجم قاعدة البيانات أكبر من 1 ТБ، يجب إنشاء الجدول في innodb_file_per_table tablespace. إذا كان لديك حجم جدول واحد أكبر من ТБ واحد، يجب استخدام جدول القسم.
join_buffer_size
راجع وثائق MariaDB لمعرفة المزيد حول هذه المعلمة.
مستوى التسعير | الذاكرة (الذاكرات) الأساسية الظاهرية | القيمة الافتراضية (بايت) | قيمة الحد الأدنى (بايت) | أقصى قيمة (بايت) |
---|---|---|---|---|
أساسي | 1 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
أساسي | 2 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
General Purpose | 2 | 262144 | 128 | 268435455 |
General Purpose | 4 | 262144 | 128 | 536870912 |
General Purpose | 8 | 262144 | 128 | 1073741824 |
General Purpose | 16 | 262144 | 128 | 2147483648 |
General Purpose | 32 | 262144 | 128 | 4294967295 |
General Purpose | 64 | 262144 | 128 | 4294967295 |
مُحسّن للذاكرة | 2 | 262144 | 128 | 536870912 |
مُحسّن للذاكرة | 4 | 262144 | 128 | 1073741824 |
مُحسّن للذاكرة | 8 | 262144 | 128 | 2147483648 |
مُحسّن للذاكرة | 16 | 262144 | 128 | 4294967295 |
مُحسّن للذاكرة | 32 | 262144 | 128 | 4294967295 |
max_connections
مستوى التسعير | الذاكرة (الذاكرات) الأساسية الظاهرية | القيمة الافتراضية | الحد الأدنى للقيمة | القيمة القصوى |
---|---|---|---|---|
أساسي | 1 | 50 | 10 | 50 |
أساسي | 2 | 100 | 10 | 100 |
General Purpose | 2 | 300 | 10 | 600 |
General Purpose | 4 | 625 | 10 | 1250 |
General Purpose | 8 | 1250 | 10 | 2500 |
General Purpose | 16 | 2500 | 10 | 5000 |
General Purpose | 32 | 5000 | 10 | 10000 |
General Purpose | 64 | 10000 | 10 | 20000 |
مُحسّن للذاكرة | 2 | 625 | 10 | 1250 |
مُحسّن للذاكرة | 4 | 1250 | 10 | 2500 |
مُحسّن للذاكرة | 8 | 2500 | 10 | 5000 |
مُحسّن للذاكرة | 16 | 5000 | 10 | 10000 |
مُحسّن للذاكرة | 32 | 10000 | 10 | 20000 |
عندما تتجاوز الاتصالات الحد، قد تتلقى الخطأ التالي:
خطأ 1040 (08004): اتصالات كثيرة جدًا
هام
للحصول على أفضل تجربة، نوصي باستخدام مجمّع اتصالات مثل ProxySQL لإدارة الاتصالات بكفاءة.
يستغرق إنشاء اتصالات عميل جديدة إلى MariaDB وقتا وبمجرد إنشائها، تشغل هذه الاتصالات موارد قاعدة البيانات، حتى عند الخمول. تطلب معظم التطبيقات العديد من الاتصالات قصيرة الأجل، مما يفاقم هذا الوضع. والنتيجة هي توفر موارد أقل لحمل العمل الفعلي مما يؤدي إلى انخفاض الأداء. سيساعد مجمّع الاتصالات الذي يقلل من الاتصالات المعطّلة ويعيد استخدام الاتصالات الموجودة في تجنب ذلك. للتعرف على إعداد ProxySQL، تفضل بزيارة منشور مدونتنا.
إشعار
ProxySQL هي أداة مجتمع مفتوحة المصدر. وهي مدعومة من Microsoft على أساس أفضل جهد. للحصول على دعم الإنتاج مع إرشادات موثوقة، يمكنك تقييم دعم منتجات ProxySQL والوصول إليه.
max_heap_table_size
راجع وثائق MariaDB لمعرفة المزيد حول هذه المعلمة.
مستوى التسعير | الذاكرة (الذاكرات) الأساسية الظاهرية | القيمة الافتراضية (بايت) | قيمة الحد الأدنى (بايت) | أقصى قيمة (بايت) |
---|---|---|---|---|
أساسي | 1 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
أساسي | 2 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
General Purpose | 2 | 16777216 | 16384 | 268435455 |
General Purpose | 4 | 16777216 | 16384 | 536870912 |
General Purpose | 8 | 16777216 | 16384 | 1073741824 |
General Purpose | 16 | 16777216 | 16384 | 2147483648 |
General Purpose | 32 | 16777216 | 16384 | 4294967295 |
General Purpose | 64 | 16777216 | 16384 | 4294967295 |
مُحسّن للذاكرة | 2 | 16777216 | 16384 | 536870912 |
مُحسّن للذاكرة | 4 | 16777216 | 16384 | 1073741824 |
مُحسّن للذاكرة | 8 | 16777216 | 16384 | 2147483648 |
مُحسّن للذاكرة | 16 | 16777216 | 16384 | 4294967295 |
مُحسّن للذاكرة | 32 | 16777216 | 16384 | 4294967295 |
query_cache_size
يتم تمكين ذاكرة التخزين المؤقت للاستعلام بشكل افتراضي في MariaDB باستخدام المعلمة have_query_cache
.
راجع وثائق MariaDB لمعرفة المزيد حول هذه المعلمة.
مستوى التسعير | الذاكرة (الذاكرات) الأساسية الظاهرية | القيمة الافتراضية (بايت) | قيمة الحد الأدنى (بايت) | أقصى قيمة (بايت) |
---|---|---|---|---|
أساسي | 1 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
أساسي | 2 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
General Purpose | 2 | 1 | 1 | 16777216 |
General Purpose | 4 | 0 | 1 | 33554432 |
General Purpose | 8 | 1 | 1 | 67108864 |
General Purpose | 16 | 1 | 1 | 134217728 |
General Purpose | 32 | 1 | 1 | 134217728 |
General Purpose | 64 | 1 | 1 | 134217728 |
مُحسّن للذاكرة | 2 | 1 | 1 | 33554432 |
مُحسّن للذاكرة | 4 | 0 | 1 | 67108864 |
مُحسّن للذاكرة | 8 | 1 | 1 | 134217728 |
مُحسّن للذاكرة | 16 | 1 | 1 | 134217728 |
مُحسّن للذاكرة | 32 | 1 | 1 | 134217728 |
sort_buffer_size
راجع وثائق MariaDB لمعرفة المزيد حول هذه المعلمة.
مستوى التسعير | الذاكرة (الذاكرات) الأساسية الظاهرية | القيمة الافتراضية (بايت) | قيمة الحد الأدنى (بايت) | أقصى قيمة (بايت) |
---|---|---|---|---|
أساسي | 1 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
أساسي | 2 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
General Purpose | 2 | 524288 | 32768 | 4194304 |
General Purpose | 4 | 524288 | 32768 | 8388608 |
General Purpose | 8 | 524288 | 32768 | 16777216 |
General Purpose | 16 | 524288 | 32768 | 33554432 |
General Purpose | 32 | 524288 | 32768 | 33554432 |
General Purpose | 64 | 524288 | 32768 | 33554432 |
مُحسّن للذاكرة | 2 | 524288 | 32768 | 8388608 |
مُحسّن للذاكرة | 4 | 524288 | 32768 | 16777216 |
مُحسّن للذاكرة | 8 | 524288 | 32768 | 33554432 |
مُحسّن للذاكرة | 16 | 524288 | 32768 | 33554432 |
مُحسّن للذاكرة | 32 | 524288 | 32768 | 33554432 |
tmp_table_size
راجع وثائق MariaDB لمعرفة المزيد حول هذه المعلمة.
مستوى التسعير | الذاكرة (الذاكرات) الأساسية الظاهرية | القيمة الافتراضية (بايت) | قيمة الحد الأدنى (بايت) | أقصى قيمة (بايت) |
---|---|---|---|---|
أساسي | 1 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
أساسي | 2 | تُعتبر غير قابلة للتكوين في المستوى الأساسي | غير متوفر | غير متوفر |
General Purpose | 2 | 16777216 | 1024 | 67108864 |
General Purpose | 4 | 16777216 | 1024 | 134217728 |
General Purpose | 8 | 16777216 | 1024 | 268435456 |
General Purpose | 16 | 16777216 | 1024 | 536870912 |
General Purpose | 32 | 16777216 | 1024 | 1073741824 |
General Purpose | 64 | 16777216 | 1024 | 1073741824 |
مُحسّن للذاكرة | 2 | 16777216 | 1024 | 134217728 |
مُحسّن للذاكرة | 4 | 16777216 | 1024 | 268435456 |
مُحسّن للذاكرة | 8 | 16777216 | 1024 | 536870912 |
مُحسّن للذاكرة | 16 | 16777216 | 1024 | 1073741824 |
مُحسّن للذاكرة | 32 | 16777216 | 1024 | 1073741824 |
time_zone
عند النشر الأولي، يتضمن خادم Azure for MariaDB جداول أنظمة لمعلومات المنطقة الزمنية، ولكن لا يتم ملء هذه الجداول. يمكن ملء جداول المنطقة الزمنية عن طريق استدعاء الإجراء mysql.az_load_timezone
المخزن من أداة مثل سطر أوامر MySQL أو MySQL Workbench. راجع مقالات مدخل Azure أو Azure CLI للتعرُّف على كيفية استدعاء الإجراء المخزن وتعيين المناطق الزمنية على المستوى العمومي أو على مستوى جلسة العمل.
معلمات الخادم غير القابلة للتكوين
معلمات الخادم أدناه غير قابلة للتكوين في الخدمة:
المعلمة | القيمة الثابتة |
---|---|
innodb_file_per_table في المستوى الأساسي | إيقاف التشغيل |
innodb_flush_log_at_trx_commit | 1 |
sync_binlog | 1 |
innodb_log_file_size | 256 ميغابايت |
innodb_log_files_in_group | 2 |
يتم تعيين معلمات الخادم الأخرى غير المدرجة هنا إلى قيم MariaDB الافتراضية الجاهزة ل MariaDB.
الخطوات التالية
- تعرف على كيفية تكوين معلمات sever باستخدام مدخل Microsoft Azure
- تعرف على كيفية تكوين معلمات sever باستخدام Azure CLI
- تعرف على كيفية تكوين معلمات sever باستخدام PowerShell