ترقية pt - عبر الإنترنت في السحابة

هذا هو الأمر pt-leagueep الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


ترقية pt - تحقق من تطابق نتائج الاستعلام على الخوادم المختلفة.

موجز


الاستخدام: pt-Upgrade [OPTIONS] LOGS | RESULTS DSN [DSN]

ينفذ pt-Upgrade الاستعلامات في "LOGS" MySQL المحدد في كل "DSN" ، ويقارن النتائج ،
ويبلغ عن أي اختلافات كبيرة. يمكن للأداة أيضًا حفظ النتائج لوقت لاحق
التحليلات. يمكن أن تكون "LOGS" بطيئة وعامة وثنائية و tcpdump و "خام".

قارن host2 بالمضيف 1 باستخدام الاستعلامات في "slow.log":

pt-Upgrade h = host1 h = host2 slow.log

قارن host2 بالنتائج المحفوظة من host1:

pt-Upgrade h = host1 - حفظ النتائج host1_results / slow.log

ترقية pt host1_results1 / h = host2

المخاطر


مجموعة أدوات Percona ناضجة ، ومثبتة في العالم الحقيقي ، ومختبرة جيدًا ، ولكن جميعها قاعدة بيانات
يمكن أن تشكل الأدوات خطرًا على النظام وخادم قاعدة البيانات. قبل استخدام هذه الأداة ،
من فضلك:

· اقرأ وثائق الأداة

· مراجعة الأداة المعروفة "BUGS"

· اختبار الأداة على خادم غير إنتاجي

· قم بعمل نسخة احتياطية لخادم الإنتاج الخاص بك وتحقق من النسخ الاحتياطية

الوصف


تساعد ترقية pt في تحديد ما إذا كان من الآمن الترقية (أو الرجوع إلى إصدار سابق) إلى إصدار جديد من
MySQL. تتضمن خطة الترقية الآمنة والمتحفظة عدة خطوات ، إحداها ضمان
ستؤدي الاستعلامات إلى نتائج متطابقة في الإصدار الجديد من MySQL.

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

استخدام قضايا


ترقية pt حالتا استخدام. يتم تشغيل الحالة الأساسية الأولى "مضيف إلى مضيف". سجل
ملف واثنين من DSN يتم توفيرهما في سطر الأوامر ، واحد لكل خادم MySQL. انظر الاول
سبيل المثال في "SYNOPSIS". يتم تنفيذ الاستعلامات ومقارنتها على كل خادم كأداة
أشواط. تتم طباعة الاستعلامات ذات الاختلافات أثناء تشغيل الأداة ، أو عند الانتهاء (راجع
"عند الإبلاغ عن الاستفسارات"). لا يتم حفظ أي شيء على القرص ، لذلك تتطلب حالة الاستخدام هذه أقل
مساحة القرص الثابت ، ولكن يجب تنفيذ الاستعلامات على كلا الخادمين في حالة تشغيل الأداة
مرة أخرى ، حتى لو لم يتغير أحد الخوادم. إذا كان هناك الكثير من الاستفسارات أو
يستغرق تنفيذها وقتًا طويلاً ، ولا يتغير خادم واحد ، فقد ترغب في استخدام
حالة الاستخدام الثانية.

حالة الاستخدام الثانية هي تشغيل "النتائج المرجعية إلى المضيف". النتائج المرجعية هي
النتائج الكاملة من خادم MySQL واحد ، محفوظة على القرص. في هذه الحالة ، يجب عليك أولاً
قم بإنشاء النتائج المرجعية باستخدام "--save-results" ، ثم قم بتشغيل الأداة مرة أخرى
قارن خادم MySQL آخر بالنتائج. انظر المثال الثاني في "SYNOPSIS".
عادةً ما يتم إنشاء النتائج للإصدار الحالي من MySQL الذي لا يتغير.
يمكن أن تتطلب حالة الاستخدام هذه a الكثير من مساحة القرص لأن النتائج (أي الصفوف) للجميع
يجب حفظ الاستعلامات ، بالإضافة إلى البيانات الأخرى حول الاستعلامات. إذا كنت تخطط لفعل الكثير
مقارنات مع نسخة ثابتة من MySQL ، حالة الاستخدام هذه أكثر كفاءة. أو إذا كنت
ليس لديك حق الوصول إلى كلا الخادمين في نفس الوقت ، تتيح لك حالة الاستخدام هذه "تنفيذ
الآن ، قارن لاحقًا ".

هام الاعتبارات


التناسق
البيئات المتسقة والبيانات المتسقة ضرورية للحصول على تقرير دقيق.
يجب عدم تشغيل ترقية pt على خادم إنتاج أو أي خادم نشط لأنه يوجد
ليست طريقة سهلة لضمان قراءة متزامنة لكل استعلام. إذا كانت البيانات تتغير على أي منهما
أثناء تشغيل ترقية pt ، يمكن أن يحتوي التقرير على المزيد من الإيجابيات الخاطئة أكثر من
الخلافات المشروعة. ترقية pt يفترض أن على حد سواء MySQL الخوادم . ثابتة، لا يتغير
(إلا لـ أي وقت التغييرات صنع by هيه أداة if ركض مع "--لا للقراءة فقط"). للقراءة فقط
يجب ألا يؤثر عبء العمل على الأداة ، باستثناء أوقات الاستعلام ربما ، لذلك يمكن أن يكون عبيد القراءة فقط
مستخدم.

مقارنة إلى
في مقارنة مضيف إلى مضيف ، تحدد النتائج من المضيف الأول القاعدة التي
تتم مقارنة النتائج من المضيف الثاني. في نتائج مرجعية لمقارنة المضيف ، فإن
النتائج المرجعية هي المعيار الذي تتم مقارنة المضيف به. عبارات المقارنة مثل
"أصغر من" ، "أفضل من" ، إلخ. تعني مقارنة بالقاعدة.

على سبيل المثال ، إذا كان وقت الاستعلام لحدث ما هو 0.01 على المضيف الأول و 0.5 في
المضيف الثاني ، هذا فرق كبير لأن 0.5 أسوأ من 0.1 ، وبالتالي فإن
سيتم الإبلاغ عن الاستعلام.

يقرأ فقط
بشكل افتراضي ، تقوم ترقية pt فقط بتنفيذ عبارات "SELECT" و "SET". (لم يحدث ذلك
تتضمن عبارات 'SELECT ... INTO' ، التي لا تُرجع الصفوف ولكنها تفريغ الإخراج إلى ملف أو
متغير.) إذا كنت تستخدم اختبارًا قابلًا لإعادة التكوين أو خوادم تطوير وترغب في المقارنة
كتابة العبارات أيضًا (على سبيل المثال "INSERT" ، "UPDATE" ، "DELETE") ، ثم حدد "- no-read-only".
إذا كنت تستخدم سجلًا ثنائيًا ، فيجب عليك تحديد "--لا للقراءة فقط" لأن السجلات الثنائية لا تحتوي على
عبارات "SELECT". راجع "- [لا] للقراءة فقط".

المعاملات
الأداة لا تنشئ المعاملات الخاصة بها ، ولكن أي معاملات في "LOG" هي
أعدم كما هو. نظرًا لأن السجلات تسلسلية ، فلا ينبغي أن تكون المعاملات مشكلة في العادة. لو،
ومع ذلك ، تحتاج إلى مقارنة الاستعلامات المرتبطة بطريقة ما بالمعاملات (في أي
حالة ربما تحتاج أيضًا إلى تعطيل "- [لا] للقراءة فقط") ، فمن المحتمل ألا تفعل ترقية pt
افعل ما تحتاجه لأنه غير مصمم لهذا الغرض.

تعمل ترقية pt مع "autocommit = 1" افتراضيًا.

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

QUERY اختلافات


يتم تحديد اختلافات الاستعلام المهمة من خلال مقارنة هذه الجوانب لكل استعلام من
كلا المضيفين:

عدد الصفوف
يجب أن يكون عدد الصفوف التي يتم إرجاعها بواسطة الاستعلام هو نفسه. تم الإبلاغ عن هذا على أنه
"صفوف مفقودة" ضمن "فرق الصف".

معلومات خام
يجب أن تكون بيانات الصف التي يتم إرجاعها بواسطة الاستعلام هي نفسها. كل الاختلافات
مهم: مسافة بيضاء ودقة تعويم وما إلى ذلك.

تحذيرات
يجب ألا ينتج عن الاستعلام أية أخطاء أو تحذيرات أو ينتج نفس الأخطاء
أو تحذيرات.

وقت الاستعلام
نادرًا ما يتم تنفيذ الاستعلام بوقت ثابت ، ولكن يجب أن يكون وقت تنفيذه في حدود
بنفس الترتيب من حيث الحجم أو أصغر.

أخطاء الاستعلام
إذا تسبب استعلام في حدوث خطأ في SQL على مضيف واحد فقط ، فسيتم الإبلاغ عن ذلك على أنه "أخطاء استعلام".
نظرًا لأن الاستعلام يعمل على مضيف واحد ، فمن المحتمل أن يكون تركيبه صحيحًا والخطأ مستحق
لبعض الحالات الفريدة للمضيف الآخر.

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

تقرير


أثناء تشغيل ترقية pt ، فإنها تطبع الاستعلامات مع الاختلافات بأسرع ما يمكن (راجع "متى
يتم الإبلاغ عن الاستفسارات "). لمنع التقرير من أن يصبح طويلاً جدًا ، لا يتم الإبلاغ عن الاستعلامات
تم الإبلاغ عنها بشكل فردي ولكن مجمعة حسب بصمات الأصابع في فئات. بصمة الاستعلام هي ملف
شكل مُلخص من استعلام ، تم إنشاؤه عن طريق إزالة القيم الحرفية ، وتطبيع المسافات البيضاء ،
وما إلى ذلك ، تنتمي طلبات البحث هذه إلى نفس الفئة:

حدد c من حيث المعرف = 1
حدد c من حيث المعرف = 5
حدد c من t حيث id = 9

بصمة هذه الاستفسارات هي:

حدد ج من حيث معرف =؟

يمكن أن تحتوي كل فئة استعلام على ما يصل إلى "--max-class-size" استعلام فريد (1,000،XNUMX افتراضيًا). فوق
إلى "--max -amples" يتم الإبلاغ عنها لكل نوع من الاختلافات ، لكل فئة استعلام. بحكمة
لكونك في نفس الفئة ، عادةً ما يكون مثال على اختلاف أحد الاستعلامات تمثيليًا
لجميع الاستعلامات التي لها نفس الاختلاف ، لذلك ليس من الضروري الإبلاغ عن كل مثال.
يشار إلى العدد الإجمالي للاستعلامات في فئة مع اختلاف معين في
تقرير.

مثال
# ------------------------------------------------- ----------------------
# السجلات
# ------------------------------------------------- ----------------------

الملف: /opt/mysql/slow.log
الحجم: 59700

# ------------------------------------------------- ----------------------
# مضيفين
# ------------------------------------------------- ----------------------

المضيف 1:

DSN: ع = 127.1 ، ف = 12345
اسم المضيف: dev1
MySQL: MySQL 5.1.68

المضيف 2:

DSN: ع = 127.1 ، ف = 12348
اسم المضيف: dev2
MySQL: MySQL 5.5.10

################################################## #######################
# فئة الاستعلام AAD020567F8398EE
################################################## #######################

الإبلاغ عن فئة لأنها تختلف ، ولكن لم يتم الإبلاغ عنها بعد.

مجموع الاستعلامات 1
الاستفسارات الفريدة 1
الاستفسارات المهملة 0

أدخل قيم t (المعرف ، اسم المستخدم) (؟ +)

##
## فرق التحذير: 1
##

- 1.

رمز: 1265
المستوى: تحذير
الرسالة: تم قطع البيانات للعمود "اسم المستخدم" في الصف 1

مقابل

لا يوجد تحذير 1265

INSERT INTO t (id، username) VALUES (NULL، 'long_username')

# ------------------------------------------------- ----------------------
# احصائيات
# ------------------------------------------------- ----------------------

الاستعلامات الفاشلة 0
لا_حدد 0
استعلامات_تصفية 0
الاستعلامات_الفروق 0
استفسارات_قراءة 1
الاستفسارات مع الفروق 1
الاستفسارات_ مع_أخطاء 0

فئة "Query "الأقسام هي الأكثر أهمية لأنها تسرد" QUERY
الاختلافات ". الجزء الأول من القسم يسرد سبب وجود فئة الاستعلام
تقرير ، يليه عدد من الاستفسارات في الفصل ، متبوعًا بالبصمة التي
يحدد الفصل.

يسرد باقي قسم فئة الاستعلام "اختلافات الاستعلام" التي تسببت في الفئة إلى
يتم الإبلاغ عنها. يبدأ كل نوع من الاختلافات برأس علامة تجزئة مزدوجة تسرد ملف
اكتب وعدد الاستعلامات الإجمالي في الفصل مع الاختلاف. ثم يصل إلى
يتم سرد "--max -amples" ، مرقمة "- 1." ، "--- 2." ، إلخ. كل مثال يسرد
الفرق للمضيفين الأول والثاني (المتعلقين بقسم "المضيفين") ، متبوعًا بـ
أول عبارة SQL التي كشفت عن الاختلاف.

متى استفسارات هي ذكرت


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

على سبيل المثال ، إذا تم العثور على فرقتين زمنيتين للاستعلام لفئة استعلام ، فلن يتم الإبلاغ عن ذلك
بعد. بمجرد العثور على اختلاف وقت الاستعلام الثالث ، يتم الإبلاغ عن فئة الاستعلام ، بما في ذلك
أي اختلافات أخرى يمكن العثور عليها أيضًا. ستستمر الاستفسارات الخاصة بالفصل الدراسي
ليتم تنفيذها ، ولكن لن يتم الإبلاغ عن الفصل الدراسي مرة أخرى.

OUTPUT


تتم طباعة "تقرير" إلى STDOUT أثناء تشغيل الأداة. التحذيرات والأخطاء الداخلية و
تتم طباعة "- التقدم" إلى STDERR. للفصل بينهما ، قم بتشغيل الأداة مثل:

ترقية pt ... 1> تقرير 2> خطأ &

ثم "tail -f يخطئ" أثناء تشغيل الأداة لتعقب "--progress".

EXIT الوضع


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

· 1

كان هناك الكثير من الأخطاء أو التحذيرات الداخلية ؛ انظر ستدير. أنظر أيضا
"- [لا] متابعة على خطأ".

· 4

كانت هناك "اختلافات في الاستعلام" ؛ انظر "تقرير".

· 8

انتهت صلاحية "- وقت التشغيل" ؛ الأداة لم تنتهي من قراءة السجلات أو النتائج المرجعية.

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

للتحقق من وجود كود خروج معين ، "AND" ("&") المنطقية حالة الخروج النهائية مع
كود الخروج. على سبيل المثال ، تشير حالة الخروج 5 إلى الرمزين 1 و 4 لأن "5 & 1" صحيحة ، و
"5 & 4" صحيح.

OPTIONS


تقبل هذه الأداة وسيطات سطر أوامر إضافية. الرجوع إلى "SYNOPSIS" والاستخدام
المعلومات للحصول على التفاصيل.

- مهمة تمرير
المطالبة بكلمة مرور عند الاتصال بـ MySQL.

- شارست
شكل قصير: -A ؛ النوع: سلسلة

مجموعة الأحرف الافتراضية. إذا كانت القيمة utf8 ، فقم بتعيين binmode Perl في STDOUT إلى utf8 ،
يمرر الخيار mysql_enable_utf8 إلى DBD :: mysql ، ويقوم بتشغيل SET NAMES UTF8 بعد
الاتصال بـ MySQL. أي قيمة أخرى تعين binmode على STDOUT بدون طبقة utf8 ،
وتشغيل SET NAMES بعد الاتصال بـ MySQL.

- تكوين
النوع: صفيف

اقرأ قائمة ملفات التكوين المفصولة بفواصل ؛ إذا تم تحديد ذلك ، يجب أن يكون هذا هو الأول
الخيار في سطر الأوامر.

- [لا] استمر في الخطأ
الافتراضي: نعم

استمر في التحليل حتى إذا كان هناك خطأ. الأداة لن تستمر إلى الأبد: إنها
يتوقف بعد 100 خطأ ، وفي هذه الحالة ربما يكون هناك خطأ في الأداة أو الإدخال
غير صالح.

- [لا] إنشاء - ترقية - الجدول
الافتراضي: نعم

إنشاء قاعدة بيانات وجدول "--upgrade-table".

- دمّر
شوكة في الخلفية وفصلها عن الغلاف. أنظمة تشغيل POSIX فقط.

--قاعدة البيانات
شكل قصير: -D ؛ النوع: سلسلة

قاعدة البيانات الافتراضية عند الاتصال بـ MySQL.

- ملف الافتراضات
شكل قصير: -F ؛ النوع: سلسلة

اقرأ خيارات MySQL من الملف المحدد فقط. يجب أن تعطي اسم مسار مطلق.

- [لا] تعطيل استعلام ذاكرة التخزين المؤقت
الافتراضي: نعم

"SET SESSION query_cache_type = OFF" لتعطيل ذاكرة التخزين المؤقت للاستعلام.

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

--منقي
النوع: سلسلة

اسمح بالأحداث التي يعود بها كود Perl هذا صحيحًا.

راجع نفس الخيار في وثائق pt-query-Digest.

--مساعدة
إظهار المساعدة والخروج.

--مضيف
شكل قصير: -h ؛ النوع: سلسلة

اسم مضيف MySQL أو IP.

- تجاهل - تحذيرات
النوع: تجزئة

تجاهل رموز التحذير MySQL هذه عند مقارنة التحذيرات.

--سجل
النوع: سلسلة

قم بطباعة STDOUT و STDERR إلى هذا الملف عند إبطال مفعولها. هذا الخيار فقط له تأثير
عندما يتم تحديد "- dememonize". يتم إنشاء الملف إذا لم يكن موجودًا ، وإلا سيتم الإخراج
ملحق به.

- ماكس فئة الحجم
النوع: int ؛ الافتراضي: 1000

الحد الأقصى لعدد الاستعلامات الفريدة في كل فئة استعلام. انظر "تقرير".

- ماكس أمثلة
النوع: int ؛ الافتراضي: 3

أقصى عدد من الأمثلة المراد سردها لكل "اختلافات استعلام". فئة الاستعلام هي
تم الإبلاغ عنها بمجرد العثور على العديد من الأمثلة لأي نوع من اختلاف الاستعلام.

--كلمه السر
شكل قصير: -p ؛ النوع: سلسلة

كلمة مرور MySQL لـ "--user".

--معرّف
النوع: سلسلة

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

--ميناء
شكل قصير: -P ؛ النوع: int

رقم منفذ MySQL.

--تقدم
النوع: مجموعة ؛ الافتراضي: الوقت ، 30

طباعة تقارير التقدم إلى STDERR. تقوم الأداة بطباعة تقارير التقدم أثناء قراءة السجلات
أو النتائج المرجعية ، تقدير المدة تقريبًا حتى تنتهي.

القيمة عبارة عن قائمة مفصولة بفواصل مكونة من جزأين. يمكن أن يكون الجزء الأول النسبة المئوية ،
الوقت أو التكرارات ؛ الجزء الثاني يحدد عدد مرات طباعة التحديث ،
بالنسبة المئوية أو الثواني أو عدد التكرارات.

- [لا] للقراءة فقط
الافتراضي: نعم

قم بتنفيذ عبارات "SELECT" و "SET" فقط. إذا تم تحديد "--لا للقراءة فقط" ، الكل
يتم تنفيذ الاستعلامات: "DROP" ، "DELETE" ، "UPDATE" ، إلخ. حتى عند التشغيل افتراضيًا
وضع القراءة فقط ، يجب عليك استخدام مستخدم MySQL مع امتيازات "SELECT" فقط للتأمين
ضد الخلل في الأداة.

--أبلغ عن
النوع: تجزئة. الافتراضي: المضيفين ، والسجلات ، والاستعلامات ، والإحصائيات

اطبع هذه المقاطع من "التقرير".

--مدة العرض
النوع: الوقت

كم من الوقت للركض قبل الخروج. بشكل افتراضي ، تعمل الأداة حتى تنتهي من القراءة
السجلات أو النتائج المرجعية.

- حفظ النتائج
النوع: سلسلة

حفظ النتائج المرجعية لهذا الدليل. يعمل هذا الخيار فقط عندما يكون DSN واحدًا
المحدد ، لتوليد نتائج مرجعية. عند مقارنة مضيف بنتائج مرجعية ،
تحديد دليل النتائج الخاص به بدلاً من DSN الخاص به. انظر المثال الثاني في
"SYNOPSIS".

يمكن استخدام النتائج المرجعية a الكثير من مساحة القرص.

- مجموعة فارز
النوع: صفيف

قم بتعيين متغيرات MySQL في هذه القائمة المفصولة بفواصل لأزواج "المتغير = القيمة".

بشكل افتراضي ، تحدد الأداة:

wait_timeout = 10000

تتجاوز المتغيرات المحددة في سطر الأوامر هذه الإعدادات الافتراضية. على سبيل المثال،
يؤدي تحديد "--set-vars wait_timeout = 500" إلى تجاوز القيمة الافتراضية البالغة 10000.

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

--قابس كهرباء
أشكال قصيرة؛ النوع: سلسلة

ملف مأخذ التوصيل لاستخدامه.

--نوع
النوع: سلسلة ؛ الافتراضي: slowlog

نوع ملفات السجل. الأنواع الصالحة هي:

نوع سجل القيمة
======= ============================================
بطيئة MySQL سجل بطيء
genlog سجل MySQL العام
binlog MySQL log binary log (تم تحويله بواسطة mysqlbinlog)
rawlog سجل مخصص مع جملة SQL واحدة لكل سطر

- ترقية الجدول
النوع: سلسلة ؛ الافتراضي: percona_schema.pt_upgrade

استخدم هذا الجدول لمسح التحذيرات. لمسح كافة التحذيرات من الاستعلامات السابقة ، pt-
الترقية تنفذ "SELECT * FROM --upgrade-table LIMIT 1" على كل مضيف قبل التنفيذ
كل استعلام.

يجب أن يكون الجدول مؤهلاً لقاعدة البيانات. قاعدة البيانات والجدول تلقائيا
تم إنشاؤه ما لم يتم تحديد "- no-create-Upgrade-table" (انظر
"- [لا] إنشاء جدول ترقية"). إذا لم يكن الجدول موجودًا بالفعل ، يتم إنشاؤه
بهذا التعريف:

إنشاء جدول pt_upgrade (
معرف INT ليس NULL PRIMARY KEY
)

--المستعمل
شكل قصير: -u ؛ النوع: سلسلة

مستخدم MySQL إن لم يكن مستخدم النظام الحالي.

--الإصدار
عرض الإصدار والخروج.

- [لا] فحص الإصدار
الافتراضي: نعم

تحقق من أحدث إصدار من Percona Toolkit و MySQL والبرامج الأخرى.

هذه ميزة قياسية "التحقق من وجود تحديثات تلقائيًا" ، مع ميزتين إضافيتين
الميزات. أولاً ، تتحقق الأداة من إصدار البرامج الأخرى على النظام المحلي في
بالإضافة إلى نسخته الخاصة. على سبيل المثال ، يتحقق من إصدار كل خادم MySQL
يتصل بـ ، Perl ، ووحدة Perl DBD :: mysql. ثانيًا ، يقوم بالتحقق والتحذير
حول الإصدارات ذات المشاكل المعروفة. على سبيل المثال ، كان لدى MySQL 5.5.25 خطأ فادح و
تم إعادة إصداره كـ 5.5.25a.

تتم طباعة أية تحديثات أو مشاكل معروفة على STDOUT قبل الإخراج العادي للأداة.
يجب ألا تتداخل هذه الميزة مطلقًا مع التشغيل العادي للأداة.

للمزيد من المعلومات قم بزيارة .

- خادم المراقبة
النوع: سلسلة

تحليل أحداث IP هذا فقط: منفذ لـ "--type" tcpdump. جميع عناوين IP الأخرى هي
تجاهله. إذا لم يتم تحديد ذلك ، فإن pt-Upgrade تراقب جميع الخوادم من خلال البحث عن أي IP
العنوان باستخدام المنفذ 3306 أو "mysql". إذا كنت تشاهد خادمًا غير قياسي
المنفذ ، لن يعمل هذا ، لذلك يجب عليك تحديد عنوان IP والمنفذ للمشاهدة.

إذا كنت ترغب في مشاهدة مزيج من الخوادم ، فبعضها يعمل على المنفذ القياسي 3306 والبعض الآخر
عند التشغيل على منافذ غير قياسية ، فأنت بحاجة إلى إنشاء مخرجات tcpdump منفصلة لـ
خوادم المنافذ غير القياسية ثم حدد هذا الخيار لكل منها. في الوقت الحاضر pt-
لا يمكن للترقية أن تكتشف الخوادم تلقائيًا على المنفذ 3306 ويُطلب منها أيضًا مشاهدة الخادم على
منفذ غير قياسي.

DSN OPTIONS


تُستخدم خيارات DSN هذه لإنشاء DSN. يتم إعطاء كل خيار مثل "الخيار = القيمة".
تعتبر الخيارات حساسة لحالة الأحرف ، لذا فإن P و p ليستا نفس الخيار. لا يمكن أن يكون هناك
مسافة بيضاء قبل أو بعد "=" ، وإذا كانت القيمة تحتوي على مسافة بيضاء فيجب أن تكون كذلك
مقتبس. تكون خيارات DSN مفصولة بفواصل. انظر إلى دليل مجموعة أدوات percona للحصول على كامل
تفاصيل.

· أ

dsn: محارف ؛ نسخ: نعم

مجموعة الأحرف الافتراضية.

· د

dsn: قاعدة بيانات ؛ نسخ: نعم

قاعدة البيانات الافتراضية.

F

dsn: mysql_read_default_file ؛ نسخ: نعم

اقرأ الخيارات الافتراضية من الملف المحدد فقط

· ح

dsn: مضيف ؛ نسخ: نعم

اتصل بالمضيف.

· لام

نسخ: نعم

تمكين LOAD DATA LOCAL INFILE بشكل صريح.

لسبب ما ، يقوم بعض البائعين بترجمة libmysql بدون ملف --enable-local-infile
الخيار الذي يعطل البيان. هذا يمكن أن يؤدي إلى مواقف غريبة ، مثل
يسمح الخادم بالمعلومات المحلية ، ولكن العميل يطرح استثناءات إذا تم استخدامه.

ومع ذلك ، طالما أن الخادم يسمح ببيانات التحميل ، يمكن للعملاء إعادة تمكينها بسهولة ؛ ارى
و
<http://search.cpan.org/~capttofu/DBD-mysql/lib/DBD/mysql.pm>. هذا الخيار
هذا بالضبط.

على الرغم من أننا لم نعثر على حالة يؤدي فيها تحويل هذا الخيار إلى أخطاء أو اختلاف
السلوك ، لكي تكون في الجانب الآمن ، لا يتم تشغيل هذا الخيار افتراضيًا.

· ص

dsn: كلمة المرور ؛ نسخ: نعم

كلمة المرور لاستخدامها عند الاتصال. إذا كانت كلمة المرور تحتوي على فاصلات ، فيجب تخطيها
بشرطة مائلة للخلف: "exam \، ple"

· ص

dsn: منفذ ؛ نسخ: نعم

رقم المنفذ المراد استخدامه للاتصال.

· س

dsn: mysql_socket ؛ نسخ: نعم

ملف مأخذ التوصيل لاستخدامه.

· ش

dsn: مستخدم ؛ نسخ: نعم

مستخدم لتسجيل الدخول إذا لم يكن المستخدم الحالي.

البيئة


متغير البيئة "PTDEBUG" يتيح إخراج التصحيح المطول إلى STDERR. لتمكين
تصحيح الأخطاء والتقاط جميع المخرجات في ملف ، قم بتشغيل الأداة مثل:

PTDEBUG = ترقية نقطة واحدة ...> ملف 1> & 2

كن حذرًا: إخراج التصحيح ضخم ويمكن أن يولد عدة ميغا بايت من المخرجات.

نظام المتطلبات


أنت بحاجة إلى Perl و DBI و DBD :: mysql وبعض الحزم الأساسية التي يجب تثبيتها في أي
إصدار جديد معقول من لغة Perl.

استخدم ترقية pt عبر الإنترنت باستخدام خدمات onworks.net



أحدث برامج Linux و Windows عبر الإنترنت