روش استفاده از MySQL Tuner

روش  استفاده از MySQL Tuner

MySQL Tuner اسکریپتی است که توسط زبان Perl نوشته شده و برای پیکربندی و بهینه‌سازی سرویس MySQL استفاده می‌گردد. روش کار آن به این صورت است که بر اساس اطلاعات دریافتی از سرور، مقدار برخی از متغییرهای فایل my.cnf مانند max_allowed_packet، max_connections، max_user_connections، interactive_timeout، wait_timeout, connect_timeout، thread_cache_size و … را پیشنهاد می‌دهد و این امر باعث افزایش کارایی و ثبات MySQL می‌شود. این اسکریپت بر روی کلیه‌ی سرور‌های لینوکسی که از Perl پشتیبانی می‌کنند قابل استفاده می‌باشد.


۱- ابتدا با کاربر root به سرور SSH نمایید.

۲- برای دریافت آخرین نسخه‌ی ارایه شده‌ی آن از دستور زیر استفاده کنید:
wget https://raw.github.com/major/MySQLTuner-perl/master/mysql tuner.pl

۳- برای نصب بسته دریافتی از دستور زیر استفاده کنید
perl mysqltuner.pl

۴- بعد از اجرای دستور فوق، خطوط زیر را در ترمینال مشاهده خواهید کرد.
>> MySQLTuner 1.2.0 - Major Hayden
>> Bug reports, feature requests, and downloads at http://mysqltuner.com/
>> Run with '--help' for additional options and output filtering
Please enter your MySQL administrative login:
Please enter your MySQL administrative password:

۵- با توجه به نوع کنترل‌پنل خود یکی از مراحل زیر را انجام دهید:

 چنانچه از کنترل پنل DirectAdmin استفاده می‌نمایید با استفاده از دستور زیر اطلاعات کاربری، کاربر اصلی MySQL را وارد نمایید:
cat /usr/local/directadmin/conf/mysql.conf
چنانچه از کنترل پنل Cpanel/WHM استفاده می‌نمایید، نام کاربری و رمز عبور root پایگاه‌داده‌ی MySQL را وارد کنید.
دقت کنید اگر رمز عبور root پایگاه‌داده را در اختیار ندارید، می‌توانید نسبت به تغییر آن از مسیر زیر اقدام نمایید:
WHM => SQL Services => MySQL Root Password



۶- سپس MySQL Tuner شروع به بررسی وضعیت پایگاه‌داده‌ی سرور و مقادیر تنظیم شده در فایل my.cnf می‌نمایید و نتیجه‌ی آن‌را بصورت زیر به شما نمایش خواهد‌ داد.


Performance Metrics:در این بخش نتیجه‌ی اندازه گیری مقادیر مشخص کننده‌ی کارایی پایگاه‌داده را نمایش می‌دهد.
Security Recommendations:این بخش نتیجه‌ی بررسی موارد امنیتی که باید در پایگاه داده رعایت شده‌باشد را نمایش می‌دهد
General Statistics:در این بخش اطلاعاتی درباره پایگاه‌داده و موتورهای قابل استفاده آن می‌دهد.
Recommendations:بر اساس اطلاعاتی حاصل شده در مرحله قبل، و مقایسه آن‌ها با مقادیر فایل my.cnf (در صورت وجود) اسکریپت پیشنهادات خود را در دو زیربخش General recommendations و Variables to adjust ارایه می‌نماید، در زیربخش فعالیت‌هایی که جهت بهینه‌سازی پایگاه داده شما ضروری و متغیرهایی که باید آنها را فعال نمایید، و در بخش دوم مقدار پیشنهادی این متغیرها (بیشتر این متغییرها در فایل/etc/my.cnf و زیر تگ [mysqld] است.) ارایه شده‌است.


۷- پس از اعمال تغییرات، باید سرویس MySQL را به کمک یکی از دستورات زیر با توجه به نوع کنترل‌پنل restart نمایید:
service mysql restart

۸- مجددا اسکریپت MySQL Tuner را اجرا نمایید تا پایگاه‌داده‌ی MySQL با مقادیر جدید بررسی و در صورت نیاز پیشنهادات جدید را دریافت نمایید. اجرای این اسکریپت را تا زمانی تکرار نمایید که که درقسمت Variables to adjust هیچ پیغامی برای شما نمایش داده‌نشود و پیغامهای بخش General recommendation نیز به حداقل خود رسیده باشد.

در صورتی که به دقت به پیام‌های دریافتی از سوی برنامه توجه نمایید و تغییرات موردنیاز را اعمال کنید بارگذاری سرور و میزان پردازش سرویس MySQL به صورت محسوسی کاهش خواهد یافت. در ادامه تصویری از مقایسه وضعیت بارگذاری و پردازش یک سرور قبل و بعد از استفاده از پیشنهادات MySQL Tuner آورده شده‌است.