sql >> Database teknologi >  >> RDS >> Mysql

hvordan man får indlæsningstid i millisekunder eller mikrosekunder i mysql

Jeg kom med det samme problem, jeg lavede mine forespørgsler fra en linux-konsol ved hjælp af tid

$ time mysql --user="user" -D "DataBase" -e "SELECT SQL_NO_CACHE COUNT(1) FROM table"

 ------------
 count(1)
 ------------
 750
 ------------

 real 0m0.269s
 user 0m0.014s
 sys  0m0.015s

eller

$ time -f"%e" mysql --user="user" -D "DataBase" -e "SELECT SQL_NO_CACHE COUNT(1) FROM table"

------------
 count(1)
------------
 750
------------
 0.24

Det giver andre værdier fra "mysql", men er i det mindste noget du kan arbejde med, for eksempel dette script:

#!/bin
temp = 1
while [ $temp -le 1000]
do
    /usr/bin/time -f"%e" -o"/home/admin/benchmark.txt" -a mysql --user="user" -D "DataBase" -e "SELECT SQL_NO_CACHE COUNT(1) FROM table"  > /dev/null 2> /dev/null
    let temp=$temp+1
done

Udfør forespørgslen 1000 gange, -f viser kun realtid, -o outputfilen, -a føjer til outputtet, > /dev/null 2> /dev/null ignorerer forespørgselsoutputtet, så det ikke udskrives i konsollen hver gang.



  1. SQL Server gruppere efter tælling af dato og tid pr. time?

  2. RMySQL-systemfejl:10060

  3. MySql upsert og auto-increment forårsager huller

  4. percentil med COUNT(DISTINCT) med korreleret WHERE fungerer kun med en visning (eller uden DISTINCT)