ค้นหาเว็บไซต์

4 เครื่องมือ Commandline ที่มีประโยชน์ในการตรวจสอบประสิทธิภาพ MySQL ใน Linux


มีเครื่องมือมากมายสำหรับตรวจสอบประสิทธิภาพ MySQL และแก้ไขปัญหาเซิร์ฟเวอร์ แต่เครื่องมือเหล่านี้ไม่ได้สมบูรณ์แบบเสมอไปสำหรับนักพัฒนาหรือผู้ดูแลระบบ MySQL สำหรับความต้องการทั่วไปของพวกเขา หรืออาจไม่สมบูรณ์แบบเสมอไป ทำงานในบางสถานการณ์ เช่น การตรวจสอบจากระยะไกลหรือผ่านเว็บ

โชคดีที่มีเครื่องมือโอเพ่นซอร์สมากมายที่สร้างโดยชุมชน MySQL เพื่อเติมเต็มช่องว่าง ในทางกลับกัน การค้นหาเครื่องมือเหล่านี้ผ่านเว็บทำได้ยากมาก นั่นคือเหตุผลที่เราได้รวบรวม เครื่องมือบรรทัดคำสั่ง 4 รายการ เพื่อตรวจสอบฐานข้อมูล MySQL เวลาทำงาน<, โหลด และ ประสิทธิภาพ ใน Linux

เวลาทำงาน หมายถึงระยะเวลาที่ฐานข้อมูลทำงานและเพิ่มขึ้นนับตั้งแต่การปิดระบบหรือรีสตาร์ทครั้งล่าสุด การรับข้อมูลเกี่ยวกับสถานะการออนไลน์เป็นสิ่งสำคัญมากในหลาย ๆ สถานการณ์ เนื่องจากช่วยให้ผู้ดูแลระบบสามารถตรวจสอบสถานะของฐานข้อมูล MySQL จำนวนการสืบค้นต่อวินาทีที่ฐานข้อมูล MySQL ให้บริการ เธรด การสืบค้นที่ช้า และสถิติที่น่าสนใจมากมาย

1. มายท็อป

Mytop เป็นหนึ่งในเครื่องมือตรวจสอบโอเพ่นซอร์สคลาสสิกและฟรีบนคอนโซล (ไม่ใช่ GUI) สำหรับฐานข้อมูล MySQL เขียนโดย Jerome Zawodny โดยใช้ ภาษา เพิร์ล Mytop ทำงานในเทอร์มินัลและแสดงสถิติเกี่ยวกับเธรด การสืบค้น การสืบค้นที่ช้า เวลาทำงาน โหลด ฯลฯ ในรูปแบบตาราง ซึ่งคล้ายกับโปรแกรมชั้นนำของ Linux มาก ซึ่งช่วยทางอ้อมให้ผู้ดูแลระบบเพิ่มประสิทธิภาพและปรับปรุงประสิทธิภาพของ MySQl เพื่อรองรับคำขอขนาดใหญ่และลดภาระของเซิร์ฟเวอร์

มีแพ็คเกจ mytop สำหรับ Linux หลากหลายรุ่น เช่น Ubuntu, Fedora และ CentOS สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำแนะนำในการติดตั้ง โปรดอ่าน: วิธีติดตั้ง Mytop (MySQL Monitoring) ใน Linux

2. เอ็มท็อป

mtop (MySQL top) เป็นอีกหนึ่งโอเพ่นซอร์สที่คล้ายกัน เครื่องมือตรวจสอบเซิร์ฟเวอร์ MYSQL แบบเรียลไทม์ที่ใช้บรรทัดคำสั่ง เขียนด้วยภาษา Perl ที่แสดงผลลัพธ์ในรูปแบบตารางคล้ายกับ < แข็งแกร่ง>มายท็อป mtop ตรวจสอบการสืบค้น MySQL ซึ่งใช้เวลามากที่สุดในการเสร็จสิ้นและฆ่าการสืบค้นที่ใช้เวลานานหลังจากเวลาที่กำหนด

นอกจากนี้ยังช่วยให้เราสามารถระบุปัญหาที่เกี่ยวข้องกับประสิทธิภาพ ข้อมูลการกำหนดค่า สถิติประสิทธิภาพ และเคล็ดลับที่เกี่ยวข้องกับการปรับแต่งจากอินเทอร์เฟซบรรทัดคำสั่ง เครื่องมือทั้งสองคล้ายกันมาก แต่ mtop ไม่ได้รับการดูแลอย่างแข็งขันและอาจใช้งานไม่ได้กับ MySQL เวอร์ชันที่เพิ่งติดตั้งใหม่

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำแนะนำในการติดตั้ง โปรดอ่าน: วิธีติดตั้ง Mtop (MySQL Monitoring) ใน Linux

3. อินโนท็อป

Innotop คือโปรแกรมตรวจสอบโดยใช้บรรทัดคำสั่งขั้นสูงแบบเรียลไทม์เพื่อตรวจสอบเซิร์ฟเวอร์ MySQL ภายในและระยะไกลที่ทำงานภายใต้กลไก InnoDB Innotop มีคุณสมบัติมากมายและมาพร้อมกับโหมด/ตัวเลือกประเภทต่างๆ ซึ่งช่วยให้เราตรวจสอบประสิทธิภาพ MySQL ในแง่มุมต่างๆ เพื่อค้นหาว่ามีอะไรผิดปกติเกิดขึ้นกับเซิร์ฟเวอร์ MySQL

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำแนะนำในการติดตั้ง โปรดอ่าน: วิธีติดตั้ง Innotop (MySQL Monitoring) ใน Linux

4. mysqladmin

mysqladmin เป็นไคลเอ็นต์บรรทัดคำสั่งเริ่มต้นของ MySQL ที่ติดตั้งไว้ล่วงหน้าด้วยแพ็คเกจ MySQL สำหรับการดำเนินการด้านการดูแลระบบ เช่น กระบวนการตรวจสอบ การตรวจสอบการกำหนดค่าเซิร์ฟเวอร์ สิทธิ์ในการโหลดซ้ำ สถานะปัจจุบัน การตั้งรหัสผ่านรูท การเปลี่ยนรหัสผ่านรูท สร้าง/วางฐานข้อมูล และอื่นๆ อีกมากมาย

หากต้องการตรวจสอบสถานะ mysql และสถานะการออนไลน์ ให้รันคำสั่งต่อไปนี้จากเทอร์มินัล และตรวจสอบให้แน่ใจว่าคุณต้องมีสิทธิ์รูทเพื่อดำเนินการคำสั่งจากเชลล์

[root@localhost ~]# mysqladmin -u root -p version
Enter password:
ผลลัพธ์ตัวอย่าง
mysqladmin  Ver 8.42 Distrib 5.1.61, for redhat-linux-gnu on i386
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Server version		5.1.61-log
Protocol version	10
Connection		Localhost via UNIX socket
UNIX socket		/var/lib/mysql/mysql.sock
Uptime:			20 days 54 min 30 sec

Threads: 1  Questions: 149941143  Slow queries: 21  Opens: 752  Flush tables: 1  Open tables: 745  Queries per second avg: 86.607

หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับคำสั่งและตัวอย่าง mysqladmin โปรดอ่าน: 20 คำสั่ง mysqladmin สำหรับการดูแลระบบ MySQL ใน Linux

บทสรุป

หากคุณกำลังมองหาเครื่องมือตรวจสอบที่ดีสำหรับงานของคุณเอง ฉันขอแนะนำ mytop และ innotop ฉันเคยพึ่งพา mytop เพื่อวัตถุประสงค์ในการติดตามรายวัน แต่ตอนนี้ฉันเปลี่ยนไปใช้ innotop เพราะมันแสดงสถิติและข้อมูลมากขึ้น รวมถึงธุรกรรมที่สำคัญด้วย