কম্পিউটার টিউটোরিয়াল

MySQL-এ InnoDB গ্লোবাল লক দেখানোর কমান্ড: SHOW ENGINE INNODB STATUS


MySQL-এ InnoDB স্টোরেজ ইঞ্জিনের গ্লোবাল লক, ট্রানজ্যাকশন, এবং পারফরম্যান্স মনিটরিং

InnoDB-এর আંતরিক অবস্থা, লক, ট্রানজ্যাকশন, বাফার পুল, লগ, I/O ইত্যাদি বিস্তারিত জানতে SHOW ENGINE INNODB STATUS কমান্ড ব্যবহার করা হয়। এটি ডিবাগিং এবং পারফরম্যান্স টিউনিং-এ খুব সহায়ক।

কমান্ড

mysql> SHOW ENGINE INNODB STATUS\G

\G ব্যবহার করা হয় ভার্টিক্যাল আউটপুটের জন্য (আউটপুট খুব লম্বা হয়)।

আউটপুটের প্রধান সেকশনসমূহ

  • BACKGROUND THREAD: মাস্টার থ্রেড লুপ, লগ ফ্লাশ, ইত্যাদি
  • SEMAPHORES: লক ওয়েট স്റ്റ্যাটিস্টিক্স (RW-shared, RW-excl, spins, OS waits)
  • TRANSACTIONS: একটিভ ট্রানজ্যাকশন তালিকা, লক স্ট্রাকচার, রো লক, ট্রানজ্যাকশন আইডি
  • FILE I/O: I/O থ্রেড স্টেট, পেন্ডিং রিড/রাইট, fsync কাউন্ট
  • INSERT BUFFER & ADAPTIVE HASH INDEX: ইন্সার্ট বাফার এবং হ্যাশ ইনডেক্স স্ট্যাটস
  • LOG: লগ সিকোয়েন্স নাম্বর (LSN), চেকপয়েন্ট, লগ ফ্লাশ
  • BUFFER POOL AND MEMORY: বাফার পুল সাইজ, ফ্রি পেজ, ডার্টি পেজ, রিড/রাইট স্পিড
  • ROW OPERATIONS: ইনসার্ট, আপডেট, ডিলিট, রিড কাউন্ট (per second)

নমুনা আউটপুট (সংক্ষিপ্ত)

*************************** 1. row ***************************
Type: InnoDB
Name: 
Status: 
=====================================
2019-01-23 14:46:58 0x2914 INNODB MONITOR OUTPUT
=====================================
...
------------ TRANSACTIONS ------------
Trx id counter 60219
Purge done for trx's n:o < 60218 undo n:o < 0 state: running but idle
History list length 32
LIST OF TRANSACTIONS FOR EACH SESSION:
---TRANSACTION 284507225290560, not started
0 lock struct(s), heap size 1136, 0 row lock(s)
...
---------------------------- END OF INNODB MONITOR OUTPUT ============================

ব্যবহার: ডেডলক ডিটেকশন, লম্বা চলমান ট্রানজ্যাকশন খুঁজে বের করা, লক কনটেনশন বিশ্লেষণ, বাফার পুল হিট রেশিও চেক ইত্যাদিতে এটি অপরিহার্য।

  1. MySQL অস্থায়ী টেবিল ডিলিট করা

  2. MySQL-এ চলমান কুয়েরি বন্ধ করার পদ্ধতি

  3. MySQL-এ Non-ASCII ক্যারেক্টার খুঁজে বের করা

  4. MySQL-এ InnoDB স্টোরেজ ইঞ্জিন সক্ষম/ইনস্টল করা (my.ini বা ENGINE=InnoDB)