كيف يمكنني التأكد من كل MySQL DB يتم تحميلها في الذاكرة ؟

StackOverflow https://stackoverflow.com/questions/144210

  •  02-07-2019
  •  | 
  •  

سؤال

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

هل هذا صحيح ؟ و كيف يمكنني vertify ؟

هل كانت مفيدة؟

المحلول

إذا كنت تستخدم ك InnoDB, ثم يمكنك تعيين innodb_buffer_pool_size أن تكون على الأقل كبيرة بقدر البيانات والفهارس.ثم كما يمكنك الوصول إلى البيانات ، وسوف يكون مؤقتا في الذاكرة و كل منفذ لاحق سوف تحدث عبر الذاكرة.

إذا أردت قبل ذاكرة التخزين المؤقت البيانات ، يمكنك أن تفعل بعض الاستفسارات الشائعة ، أو الجدول الكامل/مؤشر بفحص قوة لتحميل جميع البيانات في الذاكرة.

هناك init-ملف الخيار mysqld التي يمكن أن يكون الملقم تلقائيا تنفيذ بعض الأوامر عند بدء التشغيل ، حيث يمكن أن تشمل ما قبل التخزين المؤقت الاستفسارات إلى تنفيذ.

نضع في اعتبارنا كنت لا تريد أن تهرب من الذاكرة ، لذا كن حذرا مع وضع innodb_buffer_pool_size كبيرة جدا.

نصائح أخرى

حسنا, خيار واحد هو استخدام ramdrive..على الرغم من أنها ليست دائمة.

http://www.linuxforums.org/forum/misc/670-how-create-ram-drive-linux.html

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

الجداول في ذاكرة سريعة جدا.

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

تغيير الجدول اختبار المحرك = الذاكرة ؛

نأخذ في الاعتبار, أن جداول الذاكرة لا يمكن أن تحتوي على سائل أو النص أعمدة بيانات مؤشر حجم يقتصر على الذاكرة المتاحة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top