هذا هو الأمر percona-toolkitp الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
مجموعة أدوات percona - أدوات سطر أوامر متقدمة لـ MySQL
الوصف
مجموعة أدوات Percona عبارة عن مجموعة من أدوات سطر الأوامر المتقدمة التي تستخدمها Percona
(<http://www.percona.com/>) دعم الموظفين لأداء مجموعة متنوعة من مهام MySQL والنظام
صعبة أو معقدة للغاية بحيث لا يمكن أداؤها يدويًا.
هذه الأدوات هي بدائل مثالية للنصوص الخاصة أو "لمرة واحدة" لأنها كذلك
تم تطويره بشكل احترافي واختباره رسميًا وتوثيقه بالكامل. هم أيضا بشكل كامل
قائمة بذاتها ، لذلك يكون التثبيت سريعًا وسهلاً ولا يتم تثبيت أي مكتبات.
تم اشتقاق مجموعة أدوات Percona من Maatkit و Aspersa ، وهما من أشهر مجموعات أدوات
إدارة خادم MySQL. تم تطويره ودعمه من قبل Percona. للمزيد من
المعلومات وغيرها من البرامج المجانية مفتوحة المصدر التي طورتها Percona ، قم بزيارة
<http://www.percona.com/software/>.
آدوات
يتضمن هذا الإصدار من مجموعة أدوات Percona الأدوات التالية:
pt محاذاة
قم بمحاذاة الإخراج من الأدوات الأخرى إلى الأعمدة.
حزب العمال أرشيفي
أرشفة صفوف من جدول MySQL في جدول أو ملف آخر.
pt- التكوين-فرق
ملفات تكوين Diff MySQL ومتغيرات الخادم.
pt-مسجَّل-المسجل
تسجيل حالات الجمود في MySQL.
حزب العمال ديسكستاتس
أداة مراقبة I / O تفاعلية لنظام GNU / Linux.
مدقق مفتاح مكرر pt
ابحث عن فهارس مكررة ومفاتيح خارجية في جداول MySQL.
نقطة الانقسام
تقسيم الملفات وخطوط الأنابيب إلى فيفو دون تقسيم حقا.
pt- البحث
ابحث عن جداول MySQL ونفِّذ إجراءات ، مثل GNU find.
بصمة pt
تحويل الاستعلامات إلى بصمات أصابع.
pt-fk-error logger
تسجيل أخطاء المفتاح الخارجي في MySQL.
نبضات القلب pt
مراقبة تأخير تكرار MySQL.
استخدام مؤشر pt
قراءة الاستعلامات من سجل وتحليل كيفية استخدام الفهارس.
حزب العمال-ioprofile
مشاهدة عملية الإدخال / الإخراج وطباعة جدول الملف ونشاط الإدخال / الإخراج.
حزب العمال قتل
اقتل استعلامات MySQL التي تطابق معايير معينة.
pt-mext
انظر إلى العديد من نماذج MySQL "اعرض الحالة العالمية" جنبًا إلى جنب.
pt- الخلية- ملخص
تلخيص معلومات MySQL بشكل جيد.
تغيير مخطط pt عبر الإنترنت
بدل الطاولات بدون قفلها.
حزب العمال-pmp
تجميع تتبعات مكدس GDB لبرنامج محدد.
pt- استعلام-ملخص
تحليل استعلامات MySQL من السجلات وقائمة العمليات و tcpdump.
pt-show-المنح
جعل منح MySQL Canonical وطباعتها حتى تتمكن من النسخ والمقارنة والنسخ بشكل فعال
الإصدار السيطرة عليها.
pt- غربلة
يستعرض الملفات التي تم إنشاؤها بواسطة pt-stalk.
تأخير الرقيق
اجعل خادم MySQL التابع متخلفًا عن سيده.
العثور على الرقيق حزب العمال
البحث عن وطباعة شجرة التسلسل الهرمي للنسخ المتماثل للعبيد MySQL.
إعادة تشغيل pt-slave
مشاهدة وإعادة تشغيل النسخ المتماثل MySQL بعد الأخطاء.
pt- ساق
جمع بيانات الطب الشرعي حول MySQL عند حدوث مشاكل.
ملخص حزب العمال
تلخيص معلومات النظام بشكل جيد.
pt الجدول الاختباري
تحقق من سلامة النسخ المتماثل في MySQL.
مزامنة جدول pt
مزامنة بيانات جدول MySQL بكفاءة.
استخدام الجدول pt
تحليل كيفية استخدام الاستعلامات للجداول.
ترقية pt
تحقق من تطابق نتائج الاستعلام على الخوادم المختلفة.
مستشار pt متغير
تحليل متغيرات MySQL وتقديم المشورة بشأن المشاكل المحتملة.
شرح pt-visual
تنسيق شرح الإخراج كشجرة.
لمزيد من البرامج المجانية مفتوحة المصدر التي تم تطويرها بواسطة Percona ، تفضل بزيارة
<http://www.percona.com/software/>.
خاص OPTION أنواع
تستخدم خيارات الأداة الأنواع القياسية ("int" ، "string" ، إلخ.) بالإضافة إلى هذه الأنواع الخاصة:
الوقت
قيم الوقت هي ثوان بشكل افتراضي. على سبيل المثال ، تعني "- Run-time 60" 60 ثانية.
تدعم قيم الوقت لاحقة اختيارية: ث (ثوان) ، م (دقائق) ، ح (ساعات) ، د (أيام).
"- وقت التشغيل 1 م" يعني دقيقة واحدة (مثل 1 ثانية).
المقاس
قيم الحجم هي البايت بشكل افتراضي. على سبيل المثال ، يعني "--disk-space-free 1024" 1
كيبي بايت. تدعم قيم الحجم لاحقة اختيارية: k (Kibibyte) ، M (Mebibyte) ، G
(جيبي بايت).
DSN راجع "مواصفات DSN (اسم مصدر البيانات)".
تجزئة ، تجزئة ، صفيف ، مصفوفة
قيم التجزئة ، والتجزئة ، والصفيف ، والمصفوفة هي قوائم قيم مفصولة بفواصل. على سبيل المثال،
"--ignore-table foo ، يتجاهل bar" الجدولين "foo" و "bar".
CONFIGURATION FILES
يمكن لأدوات Percona Toolkit قراءة الخيارات من ملفات التكوين. ملف التكوين
بناء الجملة بسيط ومباشر ، ويحمل بعض أوجه التشابه مع عميل سطر أوامر MySQL
أدوات. كل ملفات التكوين تتبع نفس الاصطلاحات.
داخليًا ، ما يحدث بالفعل هو أن الأسطر تُقرأ من الملف ثم تُضاف
كخيارات وسطر أوامر للأداة ، لذا فكر فقط في التكوين
الملفات كطريقة لكتابة سطور الأوامر الخاصة بك.
بناء الجملة
تكون صيغة ملفات التكوين كما يلي:
· المسافة البيضاء متبوعة بعلامة التجزئة (#) تشير إلى أن باقي السطر هو a
تعليق. تم حذف هذا. على سبيل المثال:
· يتم تجريد المسافات البيضاء من بداية ونهاية كل الأسطر.
· يتم تجاهل الأسطر الفارغة.
· يُسمح لكل سطر أن يكون بأي من التنسيقات التالية:
خيار
الخيار = القيمة
لا تسبق الخيار بـ "-". لا تقتبس القيم ، حتى لو كانت تحتوي على مسافات ؛
القيمة حرفية. يتم حذف المسافة البيضاء حول علامة يساوي أثناء المعالجة.
· يتم التعرف على الخيارات الطويلة فقط.
· يشير السطر الذي يحتوي على واصلتين فقط إلى نهاية تحليل الخيار. أكثر من ذلك
يتم تفسير الأسطر على أنها حجج إضافية (وليست خيارات) للبرنامج.
مثال
ملف التكوين هذا لـ pt-stalk ،
# التكوين ل pt- ساق
متغير = خيوط مترابطة
دورات = 2 # الزناد إذا ظهرت المشكلة مرتين على التوالي
--
- المستخدم دانيال
يعادل سطر الأوامر هذا:
pt-stalk - خيوط متغيرة_رتبطه - دراجات 2 - - user daniel
يتم تمرير الخيارات بعد "-" حرفيًا إلى mysql و mysqladmin.
اقرأ ORDER
تقرأ الأدوات العديد من ملفات التكوين بالترتيب:
1. ملف تكوين مجموعة أدوات بيركونا العالمية ،
/etc/percona-toolkit/percona-toolkit.conf. كل الأدوات تقرأ هذا الملف ، لذا يجب عليك
فقط أضف الخيارات التي تريد تطبيقها على جميع الأدوات.
2. ملف التكوين العام الخاص بالأداة ، /etc/percona-toolkit/TOOL.conf، حيث
"TOOL" هو اسم أداة مثل "pt-query-abstract". تمت تسمية هذا الملف باسم
الأداة التي تستخدمها ، بحيث يمكنك إضافة خيارات تنطبق فقط على تلك الأداة.
3. ملف تكوين Percona Toolkit الخاص بالمستخدم ، $ HOME / .percona-toolkit.conf. جميع
الأدوات التي تقرأ هذا الملف ، لذا يجب أن تضيف فقط الخيارات التي تريد التقديم عليها
كل الأدوات.
4. ملف التكوين الخاص بأداة المستخدم ، الصفحة الرئيسية $ / .TOOL.conf، حيث "TOOL" هي أداة
اسم مثل "pt-query-abstract". تمت تسمية هذا الملف على اسم الأداة المحددة التي تستخدمها ،
حتى تتمكن من إضافة الخيارات التي تنطبق فقط على تلك الأداة.
التحديد
يوجد خيار "--config" خاص ، والذي يتيح لك تحديد ملفات التكوين
يجب قراءة مجموعة أدوات بيركونا. أنت تحدد قائمة ملفات مفصولة بفواصل. ومع ذلك ، فإن
السلوك ليس مثل خيارات سطر الأوامر الأخرى. يجب أن تعطى أول بناء على الأمر
الخط قبل أي خيارات أخرى. إذا حاولت تحديده في أي مكان آخر ، فسيؤدي ذلك إلى ظهور ملف
خطأ. أيضًا ، لا يمكنك تحديد "--config = / path / to / file" ؛ يجب عليك تحديد الخيار و
المسار إلى الملف مفصولة بمسافة بيضاء بدون an متساو إشارة بينهم مثل:
- تكوين / مسار / إلى / ملف
إذا كنت لا تريد أي ملفات تكوين على الإطلاق ، فحدد "--config" "" لتوفير ملف
قائمة الملفات الفارغة.
DSN (البيانات مصدر اسم) المواصفات
تستخدم أدوات Percona Toolkit أسماء DSN لتحديد كيفية إنشاء اتصال DBD إلى MySQL
الخادم. DSN عبارة عن سلسلة مفصولة بفواصل من أجزاء "المفتاح = القيمة" ، مثل:
ح = مضيف 1 ، ف = 3306 ، ش = بوب
الأجزاء الرئيسية القياسية موضحة أدناه ، لكن بعض الأدوات تضيف أجزاء رئيسية إضافية. نرى بعضنا
توثيق الأداة للحصول على التفاصيل.
بعض الأدوات لا تستخدم DSNs ولكنها لا تزال تتصل بـ MySQL باستخدام خيارات مثل "--host" ،
"--user" و "--password". تستخدم هذه الأدوات هذه الخيارات لإنشاء DSN تلقائيًا ،
خلف الكواليس.
تستخدم الأدوات الأخرى كلاً من DSNs وخيارات مثل تلك المذكورة أعلاه. توفر الخيارات الإعدادات الافتراضية
لجميع DSNs التي لا تحدد جزء المفتاح المقابل للخيار. على سبيل المثال ، إذا كان DSN
تم تحديد "h = host1" والخيار "--port = 12345" ، ثم تضيف الأداة تلقائيًا
"P = 12345" إلى DSN.
الهروب القيم
عادةً ما يتم تحديد DSNs في سطر الأوامر ، لذلك يجب أن يكون اقتباس shell والهروب
مأخوذ فى الإعتبار. يجب ذكر الأحرف الخاصة ، مثل علامة النجمة ("*") و / أو
تم تجاوزه بشكل صحيح ليتم تمريره كأحرف حرفية في قيم DSN.
نظرًا لأن أجزاء DSN مفصولة بفاصلات ، يجب تجاوز الفواصل الحرفية في قيم DSN
شرطة مائلة واحدة للخلف ("\"). ونظرًا لأن الشرطة المائلة للخلف هي خاصية الهروب لمعظم القذائف ،
مطلوب شرطتين مائلتين عكسيتين لتمرير شرطة مائلة عكسية. على سبيل المثال ، إذا كان اسم المستخدم هو
حرفيا "my، name"، يجب تحديده كـ "my \\، name" في معظم الأصداف. وهذا ينطبق على
DSNs والخيارات ذات الصلة بـ DSN مثل "--user".
KEY أجزاء
تضيف العديد من الأدوات المزيد من الأجزاء إلى DSNs لأغراض خاصة ، وأحيانًا تتجاوز
لجعلهم يفعلون شيئًا مختلفًا بعض الشيء. ومع ذلك ، تدعم جميع الأدوات في
أقل ما يلي:
مجموعة الأحرف الافتراضية للاتصال ("تعيين الأسماء").
لتمكين إعدادات مجموعة الأحرف في Perl و MySQL. إذا كانت القيمة "utf8" ، يتم تعيين قيم Perl
binmode في STDOUT إلى utf8 ، يمرر الخيار "mysql_enable_utf8" إلى DBD :: mysql ، و
يدير "SET NAMES 'utf8" بعد الاتصال بـ MySQL. مجموعة قيم أخرى binmode على STDOUT
بدون طبقة utf8 وتشغيل "تعيين الأسماء" بعد الاتصال بـ MySQL.
لسوء الحظ ، لا توجد طريقة من داخل Perl نفسها لتحديد مكتبة العميل
مجموعة الأحرف. "تعيين الأسماء" يؤثر فقط على الخادم ؛ إذا كانت إعدادات مكتبة العميل
لا تتطابق ، قد تكون هناك مشاكل. يمكنك استخدام ملف الإعدادات الافتراضية لتحديد الامتداد
مجموعة أحرف مكتبة العميل ، ومع ذلك. انظر وصف الجزء F أدناه.
D قاعدة البيانات الافتراضية لاستخدامها عند الاتصال. قد "تستخدم" الأدوات قواعد بيانات مختلفة أثناء
تشغيل.
ملف الافتراضات F لمكتبة عميل MySQL (مكتبة العميل C المستخدمة بواسطة DBD :: mysql ،
ليست Percona الأدوات نفسها). تقرأ جميع الأدوات قسم "[العميل]" داخل ملف
ملف الافتراضات. إذا حذفت هذا ، فستتم قراءة ملفات الإعدادات الافتراضية القياسية في ملف
ترتيب معتاد. "قياسي" يختلف من نظام إلى نظام ، لأن أسماء الملفات للقراءة
يتم تجميعها في مكتبة العميل. في أنظمة دبيان ، على سبيل المثال ، عادةً ما يكون
"/etc/mysql/my.cnf" ثم "~ / .my.cnf". إذا وضعت ما يلي في"~ / .my.cnf"، أنت
لن تضطر إلى تحديد اسم مستخدم MySQL وكلمة المرور في سطر الأوامر:
[عميل]
user = your_user_name
تمرير = سر
عادة ما يكون حذف الجزء F هو الشيء الصحيح الذي يجب فعله. طالما قمت بتكوين
لك "~ / .my.cnf"بشكل صحيح ، سيؤدي ذلك إلى توصيل الأدوات تلقائيًا بدون
بحاجة إلى اسم مستخدم أو كلمة مرور.
يمكنك أيضًا تحديد مجموعة أحرف افتراضية في ملف الإعدادات الافتراضية. على عكس "أ"
الجزء الموضح أعلاه ، سيؤدي هذا في الواقع إلى إرشاد مكتبة العميل (DBD :: mysql) إلى
تغيير مجموعة الأحرف التي يستخدمها داخليًا ، والتي لا يمكن إنجازها بأي شكل آخر
الطريقة.
h اسم مضيف MySQL أو عنوان IP للاتصال به.
L تمكين LOAD DATA LOCAL INFILE بشكل صريح.
لسبب ما ، يقوم بعض البائعين بترجمة libmysql بدون ملف --enable-local-infile
الخيار الذي يعطل البيان. هذا يمكن أن يؤدي إلى مواقف غريبة ، مثل
يسمح الخادم بالمعلومات المحلية ، ولكن العميل يطرح استثناءات إذا تم استخدامه.
ومع ذلك ، طالما أن الخادم يسمح ببيانات التحميل ، يمكن للعملاء إعادة تمكينها بسهولة ؛ ارى
و
<http://search.cpan.org/~capttofu/DBD-mysql/lib/DBD/mysql.pm>. هذا الخيار
هذا بالضبط.
p كلمة مرور MySQL لاستخدامها عند الاتصال.
رقم المنفذ المراد استخدامه للاتصال. لاحظ أن سلوكيات الحالات الخاصة المعتادة
تطبيق: إذا قمت بتحديد "localhost" كاسم مضيفك على أنظمة Unix ، فسيتم الاتصال
يستخدم بالفعل ملف مقبس ، وليس اتصال TCP / IP ، وبالتالي يتجاهل المنفذ.
ملف S MySQL socket لاستخدامه في الاتصال (في أنظمة Unix).
u اسم مستخدم MySQL لاستخدامه عند الاتصال ، إن لم يكن مستخدم النظام الحالي.
حاجز
ستتيح لك العديد من الأدوات تحديد DSN ككلمة واحدة ، بدون أي "مفتاح = قيمة"
بناء الجملة. وهذا ما يسمى "كلمة باروورد". كيف يتم التعامل مع هذا هو أداة محددة ، لكنها كذلك
عادة ما يتم تفسيره على أنه جزء "h". سيخبرك ناتج "--help" الخاص بالأداة بامتداد
السلوك لهذه الأداة.
التكاثر
ستتيح لك العديد من الأدوات نشر القيم من DSN إلى التالي ، لذلك ليس عليك ذلك
حدد كافة الأجزاء لكل DSN. على سبيل المثال ، إذا كنت تريد تحديد اسم مستخدم و
كلمة مرور لكل DSN ، يمكنك الاتصال بثلاثة مضيفين على النحو التالي:
h = host1، u = fred، p = wilma host2 host3
هذا خاص بأداة معينة.
البيئة
متغير البيئة "PTDEBUG" يتيح إخراج التصحيح المطول إلى STDERR. لتمكين
تصحيح الأخطاء والتقاط جميع المخرجات في ملف ، قم بتشغيل الأداة مثل:
PTDEBUG = 1 pt-table-checkum ...> FILE 2> & 1
كن حذرًا: إخراج التصحيح ضخم ويمكن أن يولد عدة ميغا بايت من المخرجات.
نظام المتطلبات
تتطلب معظم الأدوات:
· بيرل v5.8 أو أحدث
باش v3 أو أحدث
· وحدات بيرل الأساسية مثل Time :: HiRes
تتطلب الأدوات التي تتصل بـ MySQL ما يلي:
· بيرل وحدات DBI و DBD :: mysql
· MySQL 5.0 أو أحدث
يدعم Percona Toolkit رسميًا ويتم اختباره على العديد من توزيعات Linux الشائعة و
MySQL 5.0 إلى 5.6 ؛ ارى http://goo.gl/srHm7 للحصول على قائمة الأنظمة الأساسية المدعومة و
إصدارات.
استخدم مجموعة أدوات percona عبر الإنترنت باستخدام خدمات onworks.net