এটি হল pt-variable-advisorp কমান্ড যা আমাদের একাধিক বিনামূল্যের অনলাইন ওয়ার্কস্টেশন যেমন উবুন্টু অনলাইন, ফেডোরা অনলাইন, উইন্ডোজ অনলাইন এমুলেটর বা MAC OS অনলাইন এমুলেটর ব্যবহার করে OnWorks ফ্রি হোস্টিং প্রদানকারীতে চালানো যেতে পারে।
কার্যক্রম:
NAME এর
pt-variable-advisor - MySQL ভেরিয়েবল বিশ্লেষণ করুন এবং সম্ভাব্য সমস্যার বিষয়ে পরামর্শ দিন।
সাইনোপিসিস
ব্যবহার: pt-ভেরিয়েবল-অ্যাডভাইজার [বিকল্প] [DSN]
pt-variable-advisor ভেরিয়েবল বিশ্লেষণ করে এবং সম্ভাব্য সমস্যার বিষয়ে পরামর্শ দেয়।
লোকালহোস্ট থেকে ভেরিয়েবল দেখান:
pt-ভেরিয়েবল-অ্যাডভাইজার লোকালহোস্ট
vars.txt এ সংরক্ষিত ভেরিয়েবল আউটপুট দেখান:
pt-variable-advisor --source-of-variables vars.txt
ঝুঁকি
পারকোনা টুলকিট পরিপক্ক, বাস্তব জগতে প্রমাণিত, এবং ভালভাবে পরীক্ষিত, তবে সমস্ত ডাটাবেস
সরঞ্জামগুলি সিস্টেম এবং ডাটাবেস সার্ভারের জন্য ঝুঁকি তৈরি করতে পারে। এই টুল ব্যবহার করার আগে,
অনুগ্রহ:
· টুলের ডকুমেন্টেশন পড়ুন
· টুলটির পরিচিত "বাগস" পর্যালোচনা করুন
· একটি নন-প্রোডাকশন সার্ভারে টুলটি পরীক্ষা করুন
আপনার প্রোডাকশন সার্ভারের ব্যাকআপ নিন এবং ব্যাকআপগুলি যাচাই করুন৷
বর্ণনাঃ
pt-ভেরিয়েবল-অ্যাডভাইজার খারাপ মান এবং সেটিংস অনুযায়ী "ভেরিয়েবল দেখান" পরীক্ষা করে
"নিয়ম" নীচে বর্ণিত। এটি নিয়মের সাথে মেলে এমন ভেরিয়েবলের উপর রিপোর্ট করে, যাতে আপনি খুঁজে পেতে পারেন
আপনার MySQL সার্ভারে খারাপ সেটিংস।
এই প্রকাশের সময়, pt-variable-advisor শুধুমাত্র উদাহরণ "ভেরিয়েবলগুলি দেখান", কিন্তু অন্যান্য
ইনপুট উত্সগুলি পরিকল্পনা করা হয়েছে যেমন "স্ট্যাটাস দেখান" এবং "স্লেভ স্ট্যাটাস দেখান"।
বিধি
এই নিয়মগুলি pt-variable-advisor শো ভেরিয়েবলগুলিতে প্রযোজ্য হবে৷ প্রতিটি নিয়ম আছে
তিনটি অংশ: একটি আইডি, একটি তীব্রতা এবং একটি বিবরণ।
নিয়মের আইডি হল নিয়মের একটি সংক্ষিপ্ত, অনন্য নাম। এটি সাধারণত ভেরিয়েবলের সাথে সম্পর্কিত
যে নিয়ম পরীক্ষা করে। একটি ভেরিয়েবলকে বেশ কয়েকটি নিয়ম দ্বারা পরীক্ষা করা হলে, নিয়মের আইডি
সংখ্যায় "-1", "-2", "-N" এর মতো।
নিয়মের তীব্রতা একটি ইঙ্গিত দেয় যে এটি কতটা গুরুত্বপূর্ণ যে এই নিয়মটি a এর সাথে মিলেছে৷
প্রশ্ন. আমরা এই স্তরগুলি বোঝাতে NOTE, WARN এবং CRIT ব্যবহার করি।
নিয়মের বর্ণনা হল একটি পাঠ্য, মানব-পাঠযোগ্য ব্যাখ্যা যখন এর অর্থ কী
পরিবর্তনশীল এই নিয়মের সাথে মেলে। আপনি যে প্রতিবেদনটি তৈরি করেন তার verbosity উপর নির্ভর করে, আপনি
বিবরণে আরও পাঠ্য দেখতে পাবেন। ডিফল্টরূপে, আপনি শুধুমাত্র প্রথম দেখতে পাবেন
বাক্য, যা নিয়মের অর্থের সংক্ষিপ্ত সংক্ষিপ্তসারের মতো। উচ্চতর শব্দার্থে,
আপনি পরবর্তী বাক্য দেখতে পাবেন।
স্বয়ং বৃদ্ধি
তীব্রতা: নোট
আপনি কি ডুয়াল-মাস্টার বা রিং প্রতিলিপিতে একাধিক সার্ভারে লেখার চেষ্টা করছেন?
কনফিগারেশন? এটি সম্ভাব্য খুব বিপজ্জনক এবং বেশিরভাগ ক্ষেত্রে এটি একটি গুরুতর
ভুল এটি করার জন্য বেশিরভাগ লোকের কারণগুলি আসলে মোটেই বৈধ নয়।
concurrent_insert
তীব্রতা: নোট
মাইআইএসএএম টেবিলের ছিদ্র (মুছে ফেলার মাধ্যমে অবশিষ্ট স্থান) কখনোই পুনরায় ব্যবহার করা যাবে না।
সংযোগ_সময় শেষ
তীব্রতা: নোট
এই সেটিং এর একটি বড় মান পরিষেবার দুর্বলতা অস্বীকার করতে পারে।
ডেবাগ্ করা
severity: crit
ডিবাগিং ক্ষমতা সহ নির্মিত সার্ভারের কারণে উৎপাদনে ব্যবহার করা উচিত নয়
বড় কর্মক্ষমতা প্রভাব.
delay_key_write
severity: সতর্ক করা
প্রয়োজন না হওয়া পর্যন্ত MyISAM সূচক ব্লকগুলি কখনই ফ্লাশ করা হয় না। সার্ভার ক্র্যাশ হলে,
MyISAM টেবিলে ডেটা দুর্নীতি স্বাভাবিকের চেয়ে অনেক খারাপ হতে পারে।
ঘনিষ্ঠরূপে
severity: সতর্ক করা
এই বিকল্পটি কর্মক্ষমতা ব্যাপকভাবে হ্রাস করতে পারে।
ফ্লাশ_টাইম
severity: সতর্ক করা
এই বিকল্পটি কর্মক্ষমতা ব্যাপকভাবে হ্রাস করতে পারে।
have_bdb
তীব্রতা: নোট
BDB ইঞ্জিন অবচয়। আপনি যদি এটি ব্যবহার না করে থাকেন তবে আপনার এটি দিয়ে অক্ষম করা উচিত
skip_bdb বিকল্প।
init_connect
তীব্রতা: নোট
এই সার্ভারে init_connect বিকল্পটি সক্রিয় করা আছে।
init_file
তীব্রতা: নোট
এই সার্ভারে init_file বিকল্পটি সক্রিয় করা আছে।
init_slave
তীব্রতা: নোট
এই সার্ভারে init_slave বিকল্পটি সক্রিয় করা আছে।
innodb_অতিরিক্ত_মেম_পুল_সাইজ
severity: সতর্ক করা
এই ভেরিয়েবলটি সাধারণত 20MB এর চেয়ে বড় হতে হবে না।
innodb_buffer_pool_size
severity: সতর্ক করা
InnoDB বাফার পুলের আকার কনফিগার করা হয়নি। একটি উত্পাদন পরিবেশে এটা উচিত
সর্বদা স্পষ্টভাবে কনফিগার করা হবে, এবং ডিফল্ট 10MB আকার ভাল নয়।
innodb_checksums
severity: সতর্ক করা
InnoDB চেকসাম অক্ষম করা হয়েছে। আপনার তথ্য হার্ডওয়্যার দুর্নীতি থেকে সুরক্ষিত নয় বা
অন্যান্য ত্রুটি!
innodb_doublewrite
severity: সতর্ক করা
InnoDB ডাবলরাইট অক্ষম করা হয়েছে। যদি না আপনি এমন একটি ফাইল সিস্টেম ব্যবহার করেন যা থেকে রক্ষা করে
আংশিক পাতায় লিখেছেন, আপনার ডেটা নিরাপদ নয়!
innodb_fast_sutdown
severity: সতর্ক করা
InnoDB এর শাটডাউন আচরণ ডিফল্ট নয়। এই খারাপ কর্মক্ষমতা হতে পারে, বা
স্টার্টআপের পরে ক্র্যাশ পুনরুদ্ধার করার প্রয়োজন।
innodb_flush_log_at_trx_commit-1
severity: সতর্ক করা
InnoDB কঠোরভাবে ACID মোডে কনফিগার করা নেই। যদি একটি ক্র্যাশ হয়, কিছু
লেনদেন হারিয়ে যেতে পারে।
innodb_flush_log_at_trx_commit-2
severity: সতর্ক করা
innodb_flush_log_at_trx_commit 0 তে সেট করা সেটিং এর তুলনায় কোন কর্মক্ষমতা সুবিধা নেই
এটা 2, এবং আরো ধরনের তথ্য ক্ষতি সম্ভব. যদি আপনি এটি পরিবর্তন করার চেষ্টা করছেন
পারফরম্যান্সের কারণে 1 থেকে, আপনার এটি 2 এর পরিবর্তে 0 সেট করা উচিত।
innodb_force_recovery
severity: সতর্ক করা
InnoDB জোরপূর্বক পুনরুদ্ধার মোডে আছে! এটি শুধুমাত্র অস্থায়ীভাবে ব্যবহার করা উচিত যখন
ডেটা দুর্নীতি বা অন্যান্য বাগ থেকে পুনরুদ্ধার করা, স্বাভাবিক ব্যবহারের জন্য নয়।
innodb_lock_wait_timeout
severity: সতর্ক করা
এই বিকল্পটির একটি অস্বাভাবিক দীর্ঘ মান রয়েছে, যা লক থাকলে সিস্টেম ওভারলোড হতে পারে
মুক্তি পাচ্ছে না।
innodb_log_buffer_size
severity: সতর্ক করা
InnoDB লগ বাফার সাইজ সাধারণত 16MB এর চেয়ে বড় সেট করা উচিত নয়। যদি তুমি হও
বৃহৎ BLOB অপারেশন করা, InnoDB আসলেই ইঞ্জিনের একটি ভাল পছন্দ নয়।
innodb_log_file_size
severity: সতর্ক করা
InnoDB লগ ফাইলের আকার তার ডিফল্ট মান সেট করা আছে, যা ব্যবহারযোগ্য নয়
উৎপাদন ব্যবস্থা।
innodb_max_dirty_pages_pct
তীব্রতা: নোট
innodb_max_dirty_pages_pct ডিফল্টের চেয়ে কম। এই অত্যধিক কারণ হতে পারে
আক্রমণাত্মক ফ্লাশিং এবং I/O সিস্টেমে লোড যোগ করুন।
ফ্লাশ_টাইম
severity: সতর্ক করা
এই সেটিংটি প্রতি ফ্লাশ_টাইম সেকেন্ডে খুব খারাপ কার্যক্ষমতার কারণ হতে পারে।
কী_বাফার_সাইজ
severity: সতর্ক করা
কী বাফার আকার তার ডিফল্ট মান সেট করা হয়, যা বেশিরভাগ উত্পাদনের জন্য ভাল নয়
সিস্টেম একটি উত্পাদন পরিবেশে, key_buffer_size এর থেকে বড় হওয়া উচিত
ডিফল্ট 8MB আকার।
বড়_পৃষ্ঠা
তীব্রতা: নোট
বড় পৃষ্ঠা সক্রিয় করা হয়.
লক করা_মেমরি
তীব্রতা: নোট
--memlock দিয়ে সার্ভার মেমরিতে লক করা আছে।
log_warnings-1
তীব্রতা: নোট
লগ_সতর্কতা অক্ষম করা হয়েছে, তাই অস্বাভাবিক ঘটনা যেমন বিবৃতি প্রতিলিপির জন্য অনিরাপদ
এবং বাতিল সংযোগ ত্রুটি লগ লগ করা হবে না.
log_warnings-2
তীব্রতা: নোট
Log_warnings 1 এর বেশি সেট করতে হবে অস্বাভাবিক ইভেন্ট যেমন বাতিল করা হয়েছে লগ করার জন্য
সংযোগ।
low_priority_updates
তীব্রতা: নোট
সার্ভারটি আপডেটের জন্য অ-ডিফল্ট লক অগ্রাধিকারের সাথে চলছে৷ এই কারণ হতে পারে
পঠিত প্রশ্নগুলির জন্য অপ্রত্যাশিতভাবে অপেক্ষা করতে প্রশ্নগুলি আপডেট করুন।
max_binlog_size
তীব্রতা: নোট
max_binlog_size ডিফল্ট 1GB থেকে ছোট।
max_connect_errors
তীব্রতা: নোট
max_connect_errors সম্ভবত আপনার প্ল্যাটফর্মের অনুমতি অনুযায়ী বড় সেট করা উচিত।
সর্বাধিক_সংযোগ
severity: সতর্ক করা
সার্ভারে যদি সত্যিই এক হাজারেরও বেশি থ্রেড চলমান থাকে, তবে সিস্টেমটি
সত্যিই দরকারী কাজ করার চেয়ে থ্রেড নির্ধারণে বেশি সময় ব্যয় করার সম্ভাবনা রয়েছে। এই
আপনার কাজের চাপের আলোকে ভেরিয়েবলের মান বিবেচনা করা উচিত।
myisam_repair_threads
তীব্রতা: নোট
myisam_repair_threads > 1 মাল্টি-থ্রেডেড মেরামত সক্ষম করে, যা তুলনামূলকভাবে পরীক্ষিত নয়
এবং এখনও অফিসিয়াল ডকুমেন্টেশনে বিটা-গুণমানের কোড হিসাবে তালিকাভুক্ত।
পুরানো_পাসওয়ার্ড
severity: সতর্ক করা
পুরানো স্টাইল পাসওয়ার্ডগুলি অনিরাপদ৷ তারা তারের জুড়ে প্লেইন টেক্সট পাঠানো হয়.
অপ্টিমাইজার_প্রুন_লেভেল
severity: সতর্ক করা
জটিল প্রশ্নের পরিকল্পনা করার সময় অপ্টিমাইজার একটি সম্পূর্ণ অনুসন্ধান ব্যবহার করবে, যা করতে পারে
পরিকল্পনা প্রক্রিয়া একটি দীর্ঘ সময় নিতে কারণ.
বন্দর
তীব্রতা: নোট
সার্ভার একটি নন-ডিফল্ট পোর্টে শুনছে।
query_cache_size-1
তীব্রতা: নোট
ক্যোয়ারী ক্যাশে বড় আকারে স্কেল করে না এবং যখন অস্থির কর্মক্ষমতা সৃষ্টি করতে পারে
128MB এর থেকে বড়, বিশেষ করে মাল্টি-কোর মেশিনে।
query_cache_size-2
severity: সতর্ক করা
ক্যোয়ারী ক্যাশে 256MB এর থেকে বড় হলে তা গুরুতর কর্মক্ষমতা সমস্যা সৃষ্টি করতে পারে,
বিশেষ করে মাল্টি-কোর মেশিনে।
read_buffer_size-1
তীব্রতা: নোট
read_buffer_size ভেরিয়েবলটিকে সাধারণত এটির ডিফল্ট হিসাবে ছেড়ে দেওয়া উচিত যদি না একজন বিশেষজ্ঞ থাকে
এটি পরিবর্তন করা প্রয়োজন নির্ধারণ করে।
read_buffer_size-2
severity: সতর্ক করা
read_buffer_size ভেরিয়েবলটি 8MB এর চেয়ে বড় হওয়া উচিত নয়। এটি সাধারণত হওয়া উচিত
এটির ডিফল্টে রেখে যায় যদি না একজন বিশেষজ্ঞ নির্ধারণ করেন যে এটি পরিবর্তন করা প্রয়োজন। তৈরি করা
এটি 2MB এর চেয়ে বড় কার্যক্ষমতাকে উল্লেখযোগ্যভাবে ক্ষতিগ্রস্ত করতে পারে এবং সার্ভার ক্র্যাশ করতে পারে,
মৃত্যুতে অদলবদল করুন, অথবা শুধুমাত্র অত্যন্ত অস্থির হয়ে উঠুন।
পড়ুন_আরএনডি_বাফার_সাইজ-1
তীব্রতা: নোট
read_rnd_buffer_size ভেরিয়েবলটিকে সাধারণত এটির ডিফল্টে ছেড়ে দেওয়া উচিত যদি না একটি
বিশেষজ্ঞ নির্ধারণ করেন যে এটি পরিবর্তন করা প্রয়োজন।
পড়ুন_আরএনডি_বাফার_সাইজ-2
severity: সতর্ক করা
read_rnd_buffer_size ভেরিয়েবলটি 4M এর চেয়ে বড় হওয়া উচিত নয়। এটা সাধারণত উচিত
এটির ডিফল্ট হিসাবে ছেড়ে দেওয়া হবে যদি না একজন বিশেষজ্ঞ নির্ধারণ করেন যে এটি পরিবর্তন করা প্রয়োজন।
রিলে_লগ_স্পেস_সীমা
severity: সতর্ক করা
relay_log_space_limit সেট করার ফলে প্রতিলিপিগুলি থেকে বাইনারি লগগুলি আনা বন্ধ হতে পারে
অবিলম্বে তাদের মাস্টার. এটি আপনার ডেটা হারিয়ে যাওয়ার ঝুঁকি বাড়াতে পারে
মাস্টার ক্র্যাশ. যদি প্রতিলিপিগুলি রিলে লগ স্পেসের একটি সীমার সম্মুখীন হয়, তাহলে৷
এটা সম্ভব যে সর্বশেষ লেনদেন শুধুমাত্র মাস্টার এবং কোন প্রতিরূপ বিদ্যমান
তাদের উদ্ধার করেছে।
স্লেভ_নেট_টাইমআউট
severity: সতর্ক করা
এই পরিবর্তনশীল খুব উচ্চ সেট করা হয়. এই যে লক্ষ্য করার আগে অপেক্ষা করতে খুব দীর্ঘ
মাস্টারের সাথে সংযোগ ব্যর্থ হয়েছে এবং পুনরায় চেষ্টা করা হচ্ছে। এটি সম্ভবত 60 এ সেট করা উচিত
সেকেন্ড বা তার কম। এটি নিশ্চিত করার জন্য পিটি-হার্টবিট ব্যবহার করাও একটি ভাল ধারণা
মাস্টারটি নিষ্ক্রিয় থাকলে সংযোগের সময় শেষ হয় না।
slave_skip_errors
severity: crit
আপনি এই বিকল্প সেট করা উচিত নয়. প্রতিলিপিতে ত্রুটি থাকলে, আপনাকে খুঁজে বের করতে হবে এবং
যে কারণ সমাধান; এটা সম্ভবত আপনার স্লেভের ডেটা থেকে ভিন্ন
মাস্টার আপনি pt-table-checksum দিয়ে জানতে পারেন।
sort_buffer_size-1
তীব্রতা: নোট
sort_buffer_size ভেরিয়েবলটিকে সাধারণত ডিফল্টে ছেড়ে দেওয়া উচিত যদি না একজন বিশেষজ্ঞ থাকে
এটি পরিবর্তন করা প্রয়োজন নির্ধারণ করে।
sort_buffer_size-2
তীব্রতা: নোট
sort_buffer_size ভেরিয়েবলটিকে সাধারণত ডিফল্টে ছেড়ে দেওয়া উচিত যদি না একজন বিশেষজ্ঞ থাকে
এটি পরিবর্তন করা প্রয়োজন নির্ধারণ করে। এটিকে কয়েক MB এর চেয়ে বড় করলে ক্ষতি হতে পারে
কর্মক্ষমতা উল্লেখযোগ্যভাবে, এবং সার্ভার ক্র্যাশ করতে পারে, মৃত্যুতে অদলবদল করতে পারে, বা শুধু
অত্যন্ত অস্থির হয়ে ওঠে।
sql_notes
তীব্রতা: নোট
এই সার্ভারটি ত্রুটির লগে নোট লেভেল সতর্কতা লগ না করার জন্য কনফিগার করা হয়েছে।
sync_frm
severity: সতর্ক করা
sync_frm সেট করা ভাল যাতে .frm ফাইলগুলি ডিস্কে নিরাপদে ফ্লাশ করা হয়
সার্ভার ক্র্যাশ
tx_বিচ্ছিন্নতা-1
তীব্রতা: নোট
এই সার্ভারের লেনদেন বিচ্ছিন্নতা স্তর অ-ডিফল্ট।
tx_বিচ্ছিন্নতা-2
severity: সতর্ক করা
বেশিরভাগ অ্যাপ্লিকেশনের ডিফল্ট পুনরাবৃত্তিযোগ্য-পঠন লেনদেন বিচ্ছিন্নতা স্তর ব্যবহার করা উচিত,
অথবা কিছু ক্ষেত্রে READ-committed.
মেয়াদ শেষ_লগ_দিন
severity: সতর্ক করা
বাইনারি লগ সক্রিয় করা হয়েছে, কিন্তু স্বয়ংক্রিয় শুদ্ধকরণ সক্ষম করা নেই। শুদ্ধ না করলে
বাইনারি লগ, আপনার ডিস্ক পূরণ হবে. আপনি যদি MySQL এ বাহ্যিকভাবে বাইনারি লগ মুছে ফেলেন,
আপনি অবাঞ্ছিত আচরণের কারণ হবে. সর্বদা MySQL কে অপ্রচলিত লগগুলি পরিষ্কার করতে বলুন, কখনই না
বাহ্যিকভাবে তাদের মুছুন।
innodb_file_io_threads
তীব্রতা: নোট
এই বিকল্পটি উইন্ডোজ ছাড়া অকেজো।
innodb_data_file_path
তীব্রতা: নোট
স্বয়ংক্রিয়ভাবে প্রসারিত করা InnoDB ফাইলগুলি অনেক ডিস্কের স্থান ব্যবহার করতে পারে যা করা খুব কঠিন
পরে পুনরুদ্ধার করুন। কিছু লোক innodb_file_per_table সেট করতে এবং একটি নির্দিষ্ট বরাদ্দ করতে পছন্দ করে-
ibdata1 এর জন্য সাইজ ফাইল।
innodb_flush_method
তীব্রতা: নোট
বেশিরভাগ উৎপাদন ডাটাবেস সার্ভার যেগুলি InnoDB ব্যবহার করে তাদের innodb_flush_method সেট করা উচিত
O_DIRECT ডাবল-বাফারিং এড়াতে, যদি না I/O সিস্টেমের কার্যক্ষমতা খুব কম হয়।
innodb_locks_unsafe_for_binlog
severity: সতর্ক করা
এই বিকল্পটি বাইনারি লগ এবং প্রতিলিপি থেকে পয়েন্ট-ইন-টাইম পুনরুদ্ধার করে,
বিবৃতি-ভিত্তিক লগিং ব্যবহার করা হলে অবিশ্বস্ত।
innodb_support_xa
severity: সতর্ক করা
InnoDB এবং বাইনারি লগের মধ্যে MySQL-এর অভ্যন্তরীণ XA লেনদেন সমর্থন নিষ্ক্রিয়।
ক্র্যাশ পুনরুদ্ধার এবং প্রতিলিপির পরে বাইনারি লগটি InnoDB-এর অবস্থার সাথে নাও মিলতে পারে
বাইনারি লগে অর্ডারের বাইরের বিবৃতির কারণে সিঙ্কের বাইরে যেতে পারে।
লগ_বিন
severity: সতর্ক করা
বাইনারি লগিং অক্ষম, তাই পয়েন্ট-ইন-টাইম পুনরুদ্ধার এবং প্রতিলিপি করা হয় না
সম্ভব.
লগ_আউটপুট
severity: সতর্ক করা
টেবিলে লগ আউটপুট নির্দেশ করার একটি উচ্চ কর্মক্ষমতা প্রভাব আছে.
সর্বোচ্চ_রিলে_লগ_সাইজ
তীব্রতা: নোট
একটি কাস্টম max_relay_log_size সংজ্ঞায়িত করা হয়েছে।
myisam_recover_options
severity: সতর্ক করা
myisam_recover_options কিছু মান সেট করা উচিত যেমন ব্যাকআপ,ফোর্স নিশ্চিত করতে
টেবিল দুর্নীতি লক্ষ্য করা হয়.
স্টোরেজ_ইঞ্জিন
তীব্রতা: নোট
সার্ভারটি ডিফল্ট হিসাবে একটি অ-মানক স্টোরেজ ইঞ্জিন ব্যবহার করছে৷
sync_binlog
severity: সতর্ক করা
বাইনারি লগিং সক্ষম করা হয়েছে, কিন্তু sync_binlog কনফিগার করা হয়নি যাতে প্রতিটি লেনদেন
স্থায়িত্বের জন্য বাইনারি লগে ফ্লাশ করা হয়।
tmp_table_size
তীব্রতা: নোট
অভ্যন্তরীণভাবে ব্যবহৃত ইন-মেমরি অন্তর্নিহিত অস্থায়ী টেবিলের কার্যকর ন্যূনতম আকার
ক্যোয়ারী এক্সিকিউশনের সময় min(tmp_table_size, max_heap_table_size), তাই
max_heap_table_size অন্তত tmp_table_size এর মত বড় হওয়া উচিত।
পুরানো mysql সংস্করণ
severity: সতর্ক করা
প্রতিটি বড় রিলিজের জন্য এইগুলি প্রস্তাবিত ন্যূনতম সংস্করণ: 3.23, 4.1.20,
5.0.37, 5.1.30.
জীবনের শেষের মাইএসকিউএল সংস্করণ
তীব্রতা: নোট
5.1 এর থেকে পুরোনো প্রতিটি রিলিজ এখন আনুষ্ঠানিকভাবে জীবনের শেষ।
বিকল্প
এই টুলটি অতিরিক্ত কমান্ড-লাইন আর্গুমেন্ট গ্রহণ করে। "SYNOPSIS" এবং ব্যবহার পড়ুন
বিস্তারিত তথ্যের জন্য।
--আস্ক-পাস
MySQL এর সাথে সংযোগ করার সময় একটি পাসওয়ার্ডের জন্য অনুরোধ করুন।
-- অক্ষর সেট
সংক্ষিপ্ত রূপ: -ক; প্রকার: স্ট্রিং
ডিফল্ট অক্ষর সেট। মানটি utf8 হলে, STDOUT-এ পার্লের বিনমোডকে utf8-এ সেট করে,
DBD::mysql-এ mysql_enable_utf8 বিকল্পটি পাস করে এবং SET NAMES UTF8 এর পরে চালায়
MySQL এর সাথে সংযোগ করা হচ্ছে। অন্য কোনো মান UTF8 স্তর ছাড়াই STDOUT-এ বিনমোড সেট করে,
এবং MySQL এর সাথে সংযোগ করার পরে SET NAMES চালায়।
--config
প্রকার: অ্যারে
কনফিগার ফাইলের এই কমা দ্বারা পৃথক করা তালিকা পড়ুন; নির্দিষ্ট করা হলে, এটি অবশ্যই প্রথম হতে হবে
কমান্ড লাইনে বিকল্প।
--ডেমনাইজ করা
পটভূমিতে কাঁটাচামচ করুন এবং শেল থেকে বিচ্ছিন্ন করুন। শুধুমাত্র POSIX অপারেটিং সিস্টেম।
--তথ্যশালা
সংক্ষিপ্ত রূপ: -D; প্রকার: স্ট্রিং
এই ডাটাবেসের সাথে সংযোগ করুন।
--ডিফল্ট-ফাইল
সংক্ষিপ্ত রূপ: -F; প্রকার: স্ট্রিং
প্রদত্ত ফাইল থেকে শুধুমাত্র mysql অপশন পড়ুন। আপনাকে অবশ্যই একটি পরম পথের নাম দিতে হবে।
--help
সাহায্য দেখান এবং প্রস্থান করুন।
--হোস্ট
সংক্ষিপ্ত রূপ: -h; প্রকার: স্ট্রিং
হোস্টের সাথে সংযোগ করুন।
--বিধি উপেক্ষা করুন
প্রকার: হ্যাশ
এই নিয়ম আইডি উপেক্ষা করুন.
উপেক্ষা করার জন্য নিয়ম আইডিগুলির (যেমন LIT.001, RES.002, ইত্যাদি) একটি কমা দ্বারা পৃথক করা তালিকা নির্দিষ্ট করুন৷
--পাসওয়ার্ড
সংক্ষিপ্ত রূপ: -p; প্রকার: স্ট্রিং
সংযোগ করার সময় ব্যবহার করার জন্য পাসওয়ার্ড। যদি পাসওয়ার্ডে কমা থাকে তবে সেগুলিকে এস্কেপ করতে হবে৷
ব্যাকস্ল্যাশ সহ: "পরীক্ষা\,ple"
--পিড
প্রকার: স্ট্রিং
প্রদত্ত পিআইডি ফাইল তৈরি করুন। পিআইডি ফাইলটি ইতিমধ্যে বিদ্যমান থাকলে টুলটি শুরু হবে না এবং
এতে থাকা PID বর্তমান PID থেকে আলাদা। তবে পিআইডি ফাইল হলে
বিদ্যমান এবং এতে থাকা পিআইডি আর চলছে না, টুলটি পিআইডি ওভাররাইট করবে
বর্তমান পিআইডি সহ ফাইল করুন। পিআইডি ফাইলটি স্বয়ংক্রিয়ভাবে সরানো হয় যখন টুলটি প্রস্থান করে।
--বন্দর
সংক্ষিপ্ত রূপ: -P; প্রকার: int
সংযোগের জন্য ব্যবহার করার জন্য পোর্ট নম্বর।
--সেট-ভার্স
প্রকার: অ্যারে
"variable=value" জোড়ার এই কমা দ্বারা পৃথক করা তালিকায় MySQL ভেরিয়েবল সেট করুন।
ডিফল্টরূপে, টুল সেট করে:
অপেক্ষা_সময় শেষ = 10000
কমান্ড লাইনে নির্দিষ্ট করা ভেরিয়েবল এই ডিফল্টগুলিকে ওভাররাইড করে। উদাহরণ স্বরূপ,
"--set-vars wait_timeout=500" নির্দিষ্ট করা 10000-এর ডিফল্ট মানকে ওভাররাইড করে।
টুলটি একটি সতর্কতা প্রিন্ট করে এবং একটি ভেরিয়েবল সেট করা না গেলে চলতে থাকে।
--সকেট
ছোট ফর্ম; প্রকার: স্ট্রিং
সংযোগের জন্য ব্যবহার করার জন্য সকেট ফাইল।
--ভেরিয়েবলের উৎস
প্রকার: স্ট্রিং; ডিফল্ট: mysql
এই উৎস থেকে "ভেরিয়েবল দেখান" পড়ুন। সম্ভাব্য মানগুলি হল "mysql", "কিছুই নয়" বা একটি ফাইল
নাম যদি "mysql" নির্দিষ্ট করা থাকে তবে আপনাকে অবশ্যই কমান্ড লাইনে একটি DSN উল্লেখ করতে হবে।
-- ব্যবহারকারী
সংক্ষিপ্ত রূপ: -u; প্রকার: স্ট্রিং
বর্তমান ব্যবহারকারী না হলে লগইন করার জন্য ব্যবহারকারী।
-- ভারবোস
সংক্ষিপ্ত রূপ: -v; ক্রমবর্ধমান: হ্যাঁ; ডিফল্ট: 1
আউটপুট verbosity বৃদ্ধি. ভারবোসিটির ডিফল্ট স্তরে, প্রোগ্রামটি মুদ্রণ করে
প্রতিটি নিয়মের বর্ণনার শুধুমাত্র প্রথম বাক্য। উচ্চ পর্যায়ে, প্রোগ্রাম
বর্ণনা আরো প্রিন্ট.
--সংস্করণ
সংস্করণ দেখান এবং প্রস্থান করুন।
--[কোন] সংস্করণ-চেক
ডিফল্ট: হ্যাঁ
Percona Toolkit, MySQL, এবং অন্যান্য প্রোগ্রামগুলির সর্বশেষ সংস্করণের জন্য পরীক্ষা করুন৷
এটি একটি স্ট্যান্ডার্ড "স্বয়ংক্রিয়ভাবে আপডেটের জন্য চেক করুন" বৈশিষ্ট্য, দুটি অতিরিক্ত সহ
বৈশিষ্ট্য প্রথমত, টুলটি স্থানীয় সিস্টেমে অন্যান্য প্রোগ্রামের সংস্করণ পরীক্ষা করে
এর নিজস্ব সংস্করণ ছাড়াও। উদাহরণস্বরূপ, এটি প্রতিটি MySQL সার্ভারের সংস্করণ পরীক্ষা করে
এটি পার্ল এবং পার্ল মডিউল DBD::mysql-এর সাথে সংযোগ করে। দ্বিতীয়ত, এটি পরীক্ষা করে এবং সতর্ক করে
পরিচিত সমস্যা সহ সংস্করণ সম্পর্কে। উদাহরণস্বরূপ, MySQL 5.5.25-এ একটি জটিল বাগ ছিল এবং
5.5.25a হিসাবে পুনরায় প্রকাশিত হয়েছিল৷
যেকোন আপডেট বা পরিচিত সমস্যা টুলের স্বাভাবিক আউটপুটের আগে STDOUT এ প্রিন্ট করা হয়।
এই বৈশিষ্ট্যটি কখনই টুলের স্বাভাবিক ক্রিয়াকলাপে হস্তক্ষেপ করবে না।
আরো তথ্যের জন্য, যান .
ডিএসএন বিকল্প
এই DSN বিকল্পগুলি একটি DSN তৈরি করতে ব্যবহৃত হয়। প্রতিটি অপশন দেওয়া আছে যেমন "option=value"।
বিকল্পগুলি কেস-সংবেদনশীল, তাই P এবং p একই বিকল্প নয়। থাকতে পারে না
"=" এর আগে বা পরে হোয়াইটস্পেস এবং যদি মানটিতে হোয়াইটস্পেস থাকে তবে এটি অবশ্যই উদ্ধৃত করা উচিত।
DSN বিকল্পগুলি কমা দ্বারা পৃথক করা হয়৷ সম্পূর্ণ বিবরণের জন্য percona-toolkit ম্যানপেজ দেখুন।
· এ
dsn: অক্ষর সেট; অনুলিপি: হ্যাঁ
ডিফল্ট অক্ষর সেট।
· ডি
dsn: ডাটাবেস; অনুলিপি: হ্যাঁ
ডিফল্ট ডাটাবেস।
· F
dsn: mysql_read_default_file; অনুলিপি: হ্যাঁ
প্রদত্ত ফাইল থেকে শুধুমাত্র ডিফল্ট বিকল্পগুলি পড়ুন
· জ
dsn: হোস্ট; অনুলিপি: হ্যাঁ
হোস্টের সাথে সংযোগ করুন।
· পি
dsn: পাসওয়ার্ড; অনুলিপি: হ্যাঁ
সংযোগ করার সময় ব্যবহার করার জন্য পাসওয়ার্ড। যদি পাসওয়ার্ডে কমা থাকে তবে সেগুলিকে এস্কেপ করতে হবে৷
ব্যাকস্ল্যাশ সহ: "পরীক্ষা\,ple"
· পি
dsn: পোর্ট; অনুলিপি: হ্যাঁ
সংযোগের জন্য ব্যবহার করার জন্য পোর্ট নম্বর।
। এস
dsn: mysql_socket; অনুলিপি: হ্যাঁ
সংযোগের জন্য ব্যবহার করার জন্য সকেট ফাইল।
· u
dsn: ব্যবহারকারী; অনুলিপি: হ্যাঁ
বর্তমান ব্যবহারকারী না হলে লগইন করার জন্য ব্যবহারকারী।
পরিবেশ
পরিবেশ পরিবর্তনশীল "PTDEBUG" STDERR-এ ভার্বোজ ডিবাগিং আউটপুট সক্ষম করে। সক্রিয় করতে
ডিবাগিং এবং একটি ফাইলে সমস্ত আউটপুট ক্যাপচার করুন, টুলটি চালান যেমন:
PTDEBUG=1 pt-variable-advisor... > FILE 2>&1
সতর্কতা অবলম্বন করুন: ডিবাগিং আউটপুট বিশাল এবং অনেক মেগাবাইট আউটপুট তৈরি করতে পারে।
সিস্টেম যোগ্যতা
আপনার প্রয়োজন পার্ল, ডিবিআই, ডিবিডি::মাইসকিউএল, এবং কিছু মূল প্যাকেজ যা যেকোনো একটিতে ইনস্টল করা উচিত
পার্লের যুক্তিসঙ্গত নতুন সংস্করণ।
onworks.net পরিষেবা ব্যবহার করে অনলাইনে pt-variable-advisorp ব্যবহার করুন