تمكين الاستعلامات بطيئة سجلات الخلية
fr:Activer les logs de requêtes lentes MySQL
en:Enable slow queries MySQL logs
es:Permitir consultas lentas de MySQL logs
pt:Permitir consultas lentas os logs do MySQL
it:Attivare slow query log di MySQL
nl:Langzame vragen MySQL logboeken inschakelen
de:Langsame Abfragen MySQL Protokolle aktivieren
zh:启用慢速查询 MySQL 日志
ar:تمكين الاستعلامات بطيئة سجلات الخلية
ja:低速のクエリ MySQL のログを有効にします。
pl:Po wolnych zapytań MySQL logi
ru:Включение медленных запросов MySQL журналы
ro:Enable lent întrebare MySQL busteni
he:לאפשר שאילתות איטי יומני MySQL
هام: تمت ترجمة هذه المقال باستخدام برامج للترجمة الآلية, لقرائة النسخة الأصلية أنقر على الرابط
fr:Activer les logs de requêtes lentes MySQL
he:לאפשר שאילתות איטי יומני MySQL
ro:Enable lent întrebare MySQL busteni
ru:Включение медленных запросов MySQL журналы
pl:Po wolnych zapytań MySQL logi
ja:低速のクエリ MySQL のログを有効にします。
ar:تمكين الاستعلامات بطيئة سجلات الخلية
zh:启用慢速查询 MySQL 日志
de:Langsame Abfragen MySQL Protokolle aktivieren
nl:Langzame vragen MySQL logboeken inschakelen
it:Attivare slow query log di MySQL
pt:Permitir consultas lentas os logs do MySQL
es:Permitir consultas lentas de MySQL logs
en:Enable slow queries MySQL logs
مقدمة
قد تتلقى تنبيهات من الرصد حول استعلامات الخلية بطيئة (slow queries) : ces erreurs sont produites quand le temps d'exécution d'une requête MySQL dépasse le temps alloué défini par la variable MySQL long_query_time. Ces erreurs pouvant être produites par différents facteurs, nous verrons ici comment activer les logs de ces erreurs afin de les analyser et les corriger.
المكان
Veuillez noter qu'activer les logs de slow queries peut ralentir votre خادم, étant donné que des écritures seront effectuées en même temps que l'exécution des requêtes lentes.
التحقق من أن السجلات غير نشطة مسبقاً
للتأكد من أن سجلات الاستعلامات بطيئة لم يكن قيد التشغيل، الاتصال في سة للجهاز الخاص بك وأدخل shell الخلية :
mysql -u utilisateur -p
[mot de passe]
مرة واحدة في شل الخلية، أدخل الأمر التالي للحصول على القائمة من كافة المتغيرات وقيمها :
show variables;
التنقل لمشاهدة المتغير في العمود الأيسر "slow_query_log" : على 'ونحن '، وتنشط السجلات. على 'إيقاف '، لدينا لإعادة تشغيلها.
تمكين وتكوين تسجيل الاستعلامات بطيئة
دائماً في شل الخلية، أدخل الأمر التالي :
set global slow_query_log = 'ON';
يمكنك أيضا تعيين مسار إلى الدليل حيث يتم تخزين سجلات استعلام بطيء :
set global slow_query_log_file ='/var/log/mysql/slow-query.log';
وأخيراً، تعيين الحد أدنى من وقت المخصص لكل طلب للتأكد من أن لديك لا المغلوطة للاستعلامات بطيئة : 10 ثانية قيمة صحيحة، 20 ثانية ويوصي بما إذا كان يحدث أن الخاص بك خادم يضعف في مواجهة العدد من الاستفسارات والزائرين (يتم تعيين هذا المتغير إلى الأساسية 10 ثانية) :
set global long_query_time = '20';
وأخيراً، تحقق من أن التغييرات تؤخذ في الاعتبار بواسطة الأمر التالي :
show variables like '%slow%';
تحليل سجلات
وفي حالة رصد التنبيهات التي تخبرك بأن تتم كتابة الاستعلامات بطيئة، يمكنك الآن تحليل سجلات slow_queries كي نفهم السبب وراء هذا التأخير :
# montrera les requêtes en temps réel
tail -f /var/log/mysql/slow-query.log # défini dans notre exemple ci-dessus
# sortie complète du fichier
cat /var/log/mysql/slow-query.log
# naviguer de haut en bas
less /var/log/mysql/slow-query.log
تفسير هذه الظاهرة
وكما هو موضح في بداية هذا النموذج، الاستعلامات بطيئة ديدفيني من وقت تنفيذ الاستعلام المحدد ; إذا كان الاستعلام يأخذ وقتاً أطول من المهلة الزمنية التي حددها long_query_time لتنفيذه، ومن يعرف كوري بطيئة. والسبب الأول للحصول على استعلامات تشغيلها لفترة طويلة يمكن أن تكون سيئة الإعداد متغير الخلية "long_query_time" ; وقت أقصى منخفض جداً يمكن وضع بعض الاستعلامات الثقيلة مباشرة ببطء بينما هم في الواقع طبيعي جداً.
وهناك سبب آخر قد تكون مرتبطة باستخدام الخلية خدمة خارجي عن طريق ; في حالة استخدام موقع ويب، على سبيل المثال، سوء البرمجة إدراج السيارات اتصالات وثيقة للخلية يمكن ملء المخزن المؤقت، مما يعد تشغيل الاستعلامات.
كما يمكن تكوين قاعدة بيانات سيئة سبب هذه الظاهرة : ينضم الجداول والعلامات (مفتاح) يمكن أن تولد هذه الأخطاء - فعلى سبيل المثال في حالة جدول بدون مفتاح أساسي.
Enfin, il ne faut pas exclure l'hypothèse d'une attaque sur votre خادم, générant de nombreuses requêtes qui finiront par s'entasser et donc dépasser la limite de temps d'exécution définie par long_query_time.
الاستنتاج
السجلات وتنشط الآن ويجب أن تسمح لك بتحليل أفضل الإجراءات البطيئة في قاعدة البيانات الخاصة بك، مما يسمح لك لتشخيص مشاكل الأداء، وبرمجة أو استهدفت الهجمات. وبالإضافة إلى ذلك، لديك الآن البصرية أفضل في الإجراءات التي يتم تنفيذها في الخاص بك خادم قاعدة البيانات.
تبدو هذه المادة مفيدة لك ?
تمكين المحدث التلقائي للتعليق