Instalirajte Innotop za praćenje izvedbe MySQL poslužitelja


Innotop je izvrstan program naredbenog retka, sličan ‘top commandu’ za nadgledanje lokalnih i udaljenih MySQL poslužitelja koji rade pod InnoDB motorom. Innotop dolazi s mnogim značajkama i različitim vrstama načina/opcija, što pomaže u praćenju različitih aspekata MySQL izvedbe, a također pomaže administratoru baze podataka da otkrije što nije u redu s MySQL poslužiteljem.

Na primjer, Innotop pomaže u praćenju statusa replikacije mysql, korisničke statistike, popisa upita, InnoDB međuspremnika, InnoDB I/O informacija, otvorenih tablica, zaključanih tablica itd., Redovito osvježava svoje podatke, tako da možete vidjeti ažurirane rezultate.

Innotop dolazi s izvrsnim značajkama i fleksibilnošću i ne treba dodatnu konfiguraciju, a može se izvršiti jednostavnim pokretanjem naredbe 'innotop' s terminala.

Instaliranje Innotop-a (MySQL nadzor)

Innotop paket prema zadanim postavkama nije uključen u Linux distribucije kao što su RHEL, CentOS, Fedora i Scientific Linux. Morate ga instalirati omogućavanjem spremišta epel treće strane i upotrebom yum naredbe kao što je prikazano dolje.

# yum install innotop
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.mirror.net.in
 * epel: epel.mirror.net.in
 * epel-source: epel.mirror.net.in
 * extras: centos.mirror.net.in
 * updates: centos.mirror.net.in
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package innotop.noarch 0:1.9.0-3.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================================
 Package			Arch		Version			Repository		Size
==========================================================================================================
Installing:
 innotop                        noarch          1.9.0-3.el6             epel                    149 k

Transaction Summary
==========================================================================================================
Install       1 Package(s)

Total download size: 149 k
Installed size: 489 k
Is this ok [y/N]: y
Downloading Packages:
innotop-1.9.0-3.el6.noarch.rpm                                                      | 149 kB    00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : innotop-1.9.0-3.el6.noarch							1/1 
  Verifying  : innotop-1.9.0-3.el6.noarch                                                       1/1 

Installed:
  innotop.noarch 0:1.9.0-3.el6                                                                                                                                 

Complete!

Da biste pokrenuli innotop, jednostavno upišite "innotop" i navedite opcije -u (korisničko ime) i -p (lozinka), iz naredbenog retka i pritisnite Enter.

# innotop -u root -p 'tecm1nt'

Nakon što se povežete s MySQL poslužiteljem, trebali biste vidjeti nešto slično sljedećem zaslonu.

[RO] Dashboard (? for help)                                                                    localhost, 61d, 254.70 QPS, 5/2/200 con/run/cac thds, 5.1.61-log
Uptime  MaxSQL  ReplLag  Cxns  Lock  QPS     QPS  Run  Run  Tbls  Repl   SQL
   61d                      4     0  254.70  _         _     462  Off 1

Pritisnite "?" da biste dobili sažetak opcija i upotrebe naredbenog retka.

Switch to a different mode:
   A  Dashboard         I  InnoDB I/O Info     Q  Query List
   B  InnoDB Buffers    K  InnoDB Lock Waits   R  InnoDB Row Ops
   C  Command Summary   L  Locks               S  Variables & Status
   D  InnoDB Deadlocks  M  Replication Status  T  InnoDB Txns
   F  InnoDB FK Err     O  Open Tables         U  User Statistics

Actions:
   d  Change refresh interval        p  Pause innotop
   k  Kill a query's connection      q  Quit innotop
   n  Switch to the next connection  x  Kill a query

Other:
 TAB  Switch to the next server group   /  Quickly filter what you see
   !  Show license and warranty         =  Toggle aggregation
   #  Select/create server groups       @  Select/create server connections
   $  Edit configuration settings       \  Clear quick-filters
Press any key to continue

Ovaj odjeljak sadrži snimke zaslona nenamjenske upotrebe. Koristite velike tipke za prebacivanje između načina rada.

Ovaj način prikazuje statistiku korisnika i statistiku indeksa poredanu prema čitanju.

CXN        When   Load  QPS    Slow  QCacheHit  KCacheHit  BpsIn    BpsOut 
localhost  Total  0.00  1.07k   697      0.00%     98.17%  476.83k  242.83k

Ovaj način prikazuje rezultate s SHOW FULL PROCESSLIST, slično načinu rada Mytop-ovog popisa upita. Ova značajka ne prikazuje informacije InnoDB i najkorisnija je za opću upotrebu.

When   Load  Cxns  QPS   Slow  Se/In/Up/De%             QCacheHit  KCacheHit  BpsIn    BpsOut
Now    0.05     1  0.20     0   0/200/450/100               0.00%    100.00%  882.54   803.24
Total  0.00   151  0.00     0  31/231470/813290/188205      0.00%     99.97%    1.40k    0.22

Cmd      ID      State               User      Host           DB      Time      Query
Connect      25  Has read all relay  system u                         05:26:04

Ovaj način prema zadanim postavkama prikazuje InnoDB-ove I/O statistike, I/O, I/O niti, I/O datoteke i tablice statistike dnevnika.

____________________ I/O Threads ____________________
Thread  Purpose               Thread Status          
     0  insert buffer thread  waiting for i/o request
     1  log thread            waiting for i/o request
     2  read thread           waiting for i/o request
     3  write thread          waiting for i/o request

____________________________ Pending I/O _____________________________
Async Rds  Async Wrt  IBuf Async Rds  Sync I/Os  Log Flushes  Log I/Os
        0          0               0          0            0         0

________________________ File I/O Misc _________________________
OS Reads  OS Writes  OS fsyncs  Reads/Sec  Writes/Sec  Bytes/Sec
      26          3          3       0.00        0.00          0

_____________________ Log Statistics _____________________
Sequence No.  Flushed To  Last Checkpoint  IO Done  IO/Sec
0 5543709     0 5543709   0 5543709              8    0.00

U ovom ćete odjeljku vidjeti informacije o spremištu međuspremnika InnoDB, statistikama stranica, umetaču umetanja i prilagodljivom indeksu raspršivanja. Podaci se dohvaćaju iz SHOW INNODB STATUSA.

__________________________ Buffer Pool __________________________
Size  Free Bufs  Pages  Dirty Pages  Hit Rate  Memory  Add'l Pool
 512        492     20            0  --        16.51M     841.38k

____________________ Page Statistics _____________________
Reads  Writes  Created  Reads/Sec  Writes/Sec  Creates/Sec
   20       0        0       0.00        0.00         0.00

______________________ Insert Buffers ______________________
Inserts  Merged Recs  Merges  Size  Free List Len  Seg. Size
      0            0       0     1              0          2

__________________ Adaptive Hash Index ___________________
Size    Cells Used  Node Heap Bufs  Hash/Sec  Non-Hash/Sec
33.87k                           0      0.00          0.00

Ovdje ćete prema zadanim postavkama vidjeti izlaz operacija reda InnoDB, raznih operacija redaka, semafora i tablica polja čekanja.

________________ InnoDB Row Operations _________________
Ins  Upd  Read  Del  Ins/Sec  Upd/Sec  Read/Sec  Del/Sec
  0    0     0    0     0.00     0.00      0.00     0.00

________________________ Row Operation Misc _________________________
Queries Queued  Queries Inside  Rd Views  Main Thread State          
             0               0         1  waiting for server activity

_____________________________ InnoDB Semaphores _____________________________
Waits  Spins  Rounds  RW Waits  RW Spins  Sh Waits  Sh Spins  Signals  ResCnt
    2      0      41         1         1         2         4        5       5

____________________________ InnoDB Wait Array _____________________________
Thread  Time  File  Line  Type  Readers  Lck Var  Waiters  Waiting?  Ending?

Način sažetka naredbi prikazuje svu tablicu cmd_summary, koja izgleda slično dolje.

_____________________ Command Summary _____________________
Name                    Value     Pct     Last Incr  Pct   
Com_update              11980303  65.95%          2  33.33%
Com_insert               3409849  18.77%          1  16.67%
Com_delete               2772489  15.26%          0   0.00%
Com_select                   507   0.00%          0   0.00%
Com_admin_commands           411   0.00%          1  16.67%
Com_show_table_status        392   0.00%          0   0.00%
Com_show_status              339   0.00%          2  33.33%
Com_show_engine_status       164   0.00%          0   0.00%
Com_set_option               162   0.00%          0   0.00%
Com_show_tables               92   0.00%          0   0.00%
Com_show_variables            84   0.00%          0   0.00%
Com_show_slave_status         72   0.00%          0   0.00%
Com_show_master_status        47   0.00%          0   0.00%
Com_show_processlist          43   0.00%          0   0.00%
Com_change_db                 27   0.00%          0   0.00%
Com_show_databases            26   0.00%          0   0.00%
Com_show_charsets             24   0.00%          0   0.00%
Com_show_collations           24   0.00%          0   0.00%
Com_alter_table               12   0.00%          0   0.00%
Com_show_fields               12   0.00%          0   0.00%
Com_show_grants               10   0.00%          0   0.00%

Ovaj odjeljak izračunava statistiku, poput upita u sekundi, i prikazuje ih u brojnim različitim načinima.

QPS     Commit_PS     Rlbck_Cmt  Write_Commit     R_W_Ratio      Opens_PS   Tbl_Cch_Usd    Threads_PS  Thrd_Cch_Usd CXN_Used_Ever  CXN_Used_Now
  0             0             0      18163174             0             0             0             0             0          1.99          1.32
  0             0             0      18163180             0             0             0             0             0          1.99          1.32
  0             0             0      18163188             0             0             0             0             0          1.99          1.32
  0             0             0      18163192             0             0             0             0             0          1.99          1.32
  0             0             0      18163217             0             0             0             0             0          1.99          1.32
  0             0             0      18163265             0             0             0             0             0          1.99          1.32
  0             0             0      18163300             0             0             0             0             0          1.99          1.32
  0             0             0      18163309             0             0             0             0             0          1.99          1.32
  0             0             0      18163321             0             0             0             0             0          1.99          1.32
  0             0             0      18163331             0             0             0             0             0          1.99          1.32

U ovom načinu rada vidjet ćete rezultate Slave SQL Status, Slave I/O Status i Master Status. Prva dva odjeljka prikazuju status slave i slave I/O niti niti, a posljednji odjeljak prikazuje glavni status.

_______________________ Slave SQL Status _______________________
Master        On?  TimeLag  Catchup  Temp  Relay Pos  Last Error
172.16.25.125  Yes    00:00     0.00     0   41295853            

____________________________________ Slave I/O Status _____________________________________
Master        On?  File              Relay Size  Pos       State                           
172.16.25.125  Yes  mysql-bin.000025      39.38M  41295708  Waiting for master to send event

____________ Master Status _____________
File              Position  Binlog Cache
mysql-bin.000010  10887846         0.00%

"Innotop" možete pokrenuti ne interaktivno.

# innotop --count 5 -d 1 -n
uptime	max_query_time	time_behind_master	connections	locked_count	qps	spark_qps	run	spark_run	open	slave_running	longest_sql
61d			2	0	0.000363908088893752				64	Yes 	
61d			2	0	4.96871146980749	_		_	64	Yes 	
61d			2	0	3.9633543857494	^_		__	64	Yes 	
61d			2	0	3.96701862656428	^__		___	64	Yes 	
61d			2	0	3.96574802684297	^___		____	64	Yes

Da biste nadzirali udaljenu bazu podataka na udaljenom sustavu, upotrijebite sljedeću naredbu koristeći određeno korisničko ime, lozinku i ime hosta.

# innotop -u username -p password -h hostname

Za više informacija o upotrebi i opcijama 'innotop', pogledajte stranice s uputama pritiskom tipke "man innotop" na terminalu.

Referentni linkovi

Početna stranica Innotop

  1. Mtop (nadgledanje baze podataka MySQL) u RHEL/CentOS/Fedora