مشاركة عبر


القيود في قاعدة بيانات Azure لـ MySQL - الخادم المرن

توضح هذه المقالة القيود في قاعدة بيانات Azure ل MySQL - الخادم المرن. تنطبق القيود العامة في محرك قاعدة بيانات MySQL أيضا. إذا كنت تريد التعرف على قيود الموارد (الحوسبة والذاكرة والتخزين)، فشاهد المقالة حول الحوسبة والتخزين.

معلمات الخادم

يدعم Azure Database for MySQL - Flexible Server ضبط قيم معلمات الخادم. يتم تحديد بعض القيم الدنيا والحد الأقصى للمعلمات (على سبيل المثال، max_connections، ، join_buffer_size، query_cache_size) بواسطة طبقة الحساب وقبل حساب حجم الخادم. لمزيد من المعلومات حول هذه الحدود، جنبا إلى جنب مع القيم الدنيا والحد الأقصى لمعلمات الخادم مثل max_connections و، راجع المقالة حول معلماتinnodb_buffer_pool_size الخادم.

المفاتيح الأساسية غير المرئية التي تم إنشاؤها

بالنسبة إلى الإصدار 8.0 من MySQL والإصدارات الأحدث، يتم تمكين المفاتيح الأساسية غير المرئية (GIPKs) التي تم إنشاؤها بشكل افتراضي لجميع مثيلات Azure Database for MySQL - Flexible Server.

تضيف خوادم MySQL 8.0+ العمود my_row_id غير المرئي إلى الجداول ومفتاح أساسي على هذا العمود، حيث يتم إنشاء جدول InnoDB بدون مفتاح أساسي صريح. لهذا السبب، لا يمكنك إنشاء جدول يحتوي على عمود مسمى my_row_id ما لم تحدد عبارة إنشاء الجدول أيضا مفتاحا أساسيا صريحا. اعرف المزيد.

بشكل افتراضي، تظهر GIPKs في إخراج SHOW CREATE TABLE و SHOW COLUMNS و SHOW INDEX. تظهر GIPKs أيضا في جداول الأعمدة INFORMATION_SCHEMA والإحصائيات.

لمزيد من التفاصيل حول GIPKs وحالات استخدامها مع النسخ المتماثل للبيانات، راجع النسخ المتماثل للبيانات في قاعدة بيانات Azure ل MySQL - الخادم المرن.

خطوات لتعطيل GIPK

إذا كنت تريد تعطيل GIPK، فلديك خياران:

  • قم بتغيير قيمة معلمة خادم sql_generate_invisible_primary_key إلى OFF باستخدام مدخل Microsoft Azure أو Azure CLI.

  • الاتصال بقاعدة بيانات Azure ل MySQL - مثيل الخادم المرن وتشغيل الأمر التالي:

    mysql> SET sql_generate_invisible_primary_key=OFF;
    

lower_case_table_names

في Azure Database for MySQL - Flexible Server، القيمة الافتراضية ل lower_case_table_names هي 1 للإصدار 5.7 من MySQL. إذا كنت بحاجة إلى ضبط هذا الإعداد، نوصي بإنشاء تذكرة دعم. من المهم أن نفهم أنه بعد تغيير قيمة المعلمة إلى 2، لا يسمح بإعادتها إلى 1 .

بالنسبة إلى الإصدار 8.0 من MySQL، يحظر تغيير lower_case_table_names الإعداد بعد تهيئة الخادم. اعرف المزيد. في Azure Database for MySQL - Flexible Server، القيمة الافتراضية ل lower_case_table_names هي 1 للإصدار 8.0 من MySQL. إذا كنت ترغب في تغيير هذه المعلمة إلى 2، فإننا نقترح عليك إنشاء خادم MySQL 5.7 وإنشاء تذكرة دعم للمساعدة في التغيير. لاحقا، إذا لزم الأمر، يمكنك ترقية الخادم إلى الإصدار 8.0.

محركات التخزين

تدعم MySQL العديد من محركات التخزين. توضح القوائم التالية محركات التخزين المدعومة وغير المدعومة في قاعدة بيانات Azure ل MySQL - الخادم المرن.

المحركات المدعومة

محركات غير مدعومة

الامتيازات ودعم معالجة البيانات

يمكن للعديد من معلمات الخادم وإعداداته أن تتدهور عن غير قصد أداء الخادم أو تنفي خصائص ACID (الذرية والمتناسقة والعزلة والدائمة) لخادم MySQL. للحفاظ على تكامل الخدمة واتفاقية مستوى الخدمة على مستوى المنتج، لا تعرض قاعدة بيانات Azure ل MySQL - الخادم المرن أدوارا متعددة.

Azure Database for MySQL - لا يسمح الخادم المرن بالوصول المباشر إلى نظام الملفات الأساسي. بعض أوامر معالجة البيانات غير مدعومة.

الامتيازات المدعومة

  • LOAD DATA INFILE مدعوم، ولكن يجب تحديد المعلمة [LOCAL] وتوجيهها إلى مسار UNC (تخزين Azure المثبت من خلال Server Message Block). إذا كنت تستخدم الإصدار 8.0 من عميل MySQL أو أحدث، فستحتاج إلى تضمين المعلمة -–local-infile=1 في سلسلة الاتصال.

  • بالنسبة إلى الإصدار 8.0 من MySQL والإصدارات الأحدث، يتم دعم الامتيازات الديناميكية التالية فقط:

امتيازات غير معتمدة

  • دور مسؤول قاعدة البيانات (DBA) مقيد. بدلا من ذلك، يمكنك استخدام دور المستخدم المسؤول الذي تم تعيينه أثناء إنشاء خادم جديد. يسمح لك هذا الدور بتنفيذ معظم عبارات لغة تعريف البيانات (DDL) ولغة معالجة البيانات (DML).

  • يتم تقييد الامتيازات الثابتة التالية:

  • لا يتم دعم منح امتيازات BACKUP_ADMIN لأخذ النسخ الاحتياطية باستخدام أدوات الترحيل.

  • DEFINERSUPER يتطلب امتيازات لإنشاء و مقيد. إذا كنت تقوم باستيراد البيانات باستخدام نسخة احتياطية، فقم بإزالة CREATE DEFINER الأوامر يدويا أو استخدم --skip-definer الأمر عند إجراء نسخة احتياطية من mysqlpump .

  • قاعدة بيانات نظام mysql للقراءة فقط وتدعم وظائف النظام الأساسي المختلفة كخدمة (PaaS). لا يمكنك إجراء تغييرات على قاعدة بيانات نظام mysql.

  • SELECT ... INTO OUTFILE غير مدعوم في الخدمة.

القيود الوظيفية

قابلية وصول عالية زائد عن الحاجة في المنطقة

يمكنك تعيين تكوين قابلية وصول عالية زائدة عن الحاجة للمنطقة فقط أثناء إنشاء الخادم. هذا التكوين غير مدعوم في طبقة الحوسبة القابلة للاندفاع.

الشبكة

لا يُمكنك تغيير أسلوب الاتصال بعد إنشائك الخادم. إذا قمت بإنشاء الخادم بوصول خاص (تكامل الشبكة الظاهرية)، فلا يمكن تغييره إلى الوصول العام (عناوين IP المسموح بها) بعد الإنشاء، والعكس صحيح.

إيقاف/بدء العمليات

عمليات إيقاف الخادم وبدء تشغيله غير مدعومة بتكوينات النسخ المتماثلة للقراءة (كل من المصدر والنسخ المتماثلة).

عمليات تغيير الحجم

تقليل تخزين الخادم المقدم غير مدعوم.

ترقيات إصدار الخادم

الترحيل التلقائي بين إصدارات مشغل قاعدة البيانات الرئيسية غير مدعوم. إذا كنت ترغب في ترقية الإصدار الرئيسي، فاستخدم تفريغ واستعادة على خادم قمت بإنشائه باستخدام إصدار المحرك الجديد.

استعادة أحد الخوادم

مع الاستعادة في نقطة زمنية، تحتوي الخوادم الجديدة على نفس تكوينات الحوسبة والتخزين مثل الخادم المصدر الذي تستند إليه. يمكنك تقليص حساب الخادم المستعادة حديثا بعد إنشاء الخادم.

مقارنات الميزات

لا تتوفر جميع الميزات المتوفرة في قاعدة بيانات Azure ل MySQL - خادم واحد في قاعدة بيانات Azure ل MySQL - الخادم المرن.

للحصول على القائمة الكاملة لمقارنات الميزات بين Azure Database for MySQL - Single Server وAzure Database for MySQL - Flexible Server، راجع المقالة حول اختيار خيار MySQL Server الصحيح في Azure.