— Математички функции
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
— Математички функции
Референца за `mysqlnd.stats.php` со подобрена типографија и навигација.
— Математички функции
MySQL Native Driver содржи поддршка за собирање статистики за комуникацијата помеѓу клиентот и серверот. Соберените статистики се од два главни типа:
- Клиентски статистики
- Статистики за конекција
Кога се користи клучниот збор mysqli екстензија, овие статистики може да се добијат преку два API повика:
Забелешка: Статистиките се агрегирани помеѓу сите екстензии што ја користат MySQL Native Driver. На пример, ако mysqli екстензијата и PDO MySQL драјверот се поставени да ја користат MySQLnd, тогаш повиците на функциите од mysqli и повиците на методите од PDO ќе влијаат на статистиките. Нема начин да се открие колку одреден API повик на која било екстензија што е компајлирана против MySQL Native Driver влијаел на одредена статистика.
Преземање статистики
Клиентските статистики може да се преземат со повикување на mysqli_get_client_stats() function.
Статистиките за конекција може да се преземат со повикување на mysqli_get_connection_stats() function.
Двете функции враќаат асоцијативен низ, каде што името на статистиката е клуч за соодветните статистички податоци.
Статистики на MySQL Native Driver
Повеќето статистики се поврзани со конекција, но некои се поврзани со процесот во кој случај ова ќе биде споменато.
Следниве статистики се произведени од MySQL Native Driver:
-
Статистики поврзани со мрежата
bytes_sent- Број на бајти испратени од PHP до MySQL серверот.
bytes_received- Број на бајти примени од MySQL серверот.
packets_sent- Број на пакети испратени од MySQL протоколот Клиент Сервер.
packets_received- Број на пакети примени од MySQL протоколот Клиент Сервер.
protocol_overhead_in-
MySQL Client Server protocol overhead in bytes for incoming traffic. Currently only the Packet Header (4 bytes) is considered as overhead.
protocol_overhead_in = packets_received * 4 protocol_overhead_out-
MySQL Client Server протокол overhead во бајти за дојдовен сообраќај. Во моментов само заглавието на пакетот (4 бајти) се смета како overhead.
protocol_overhead_out = packets_received * 4 bytes_received_ok_packet-
MySQL Client Server протокол overhead во бајти за излезен сообраќај. Во моментов само заглавието на пакетот (4 бајти) се смета како overhead.
Забелешка: Вкупна големина во бајти на MySQL Client Server протокол OK пакети примени. OK пакетите можат да содржат порака за статус. Големината на пораката за статус може да варира и затоа големината на OK пакетот не е фиксна.
packets_received_ok- Вкупната големина во бајти вклучува големина на заглавие на пакет (4 бајти, видете го протоколот overhead).
bytes_received_eof_packet-
Број на MySQL Client Server протокол OK пакети примени.
Забелешка: Вкупна големина во бајти на MySQL Client Server протокол OK пакети примени. OK пакетите можат да содржат порака за статус. Големината на пораката за статус може да варира и затоа големината на OK пакетот не е фиксна.
packets_received_eof- Вкупна големина во бајти на MySQL Client Server протокол EOF пакети примени. EOF може да варира во големина во зависност од верзијата на серверот. Исто така, EOF може да пренесе порака за грешка. Број на MySQL Client Server протокол EOF пакети.
bytes_received_rset_header_packet-
Како и со другите статистики за пакети, бројот на пакети ќе се зголеми дури и ако PHP не прими очекуван пакет, туку, на пример, порака за грешка.
LOAD LOCAL INFILE,INSERT,UPDATE,SELECTВкупна големина во бајти на MySQL Client Server протокол пакети со заглавие на сет на резултати. Големината на пакетите варира во зависност од payload (Забелешка: Вкупна големина во бајти на MySQL Client Server протокол OK пакети примени. OK пакетите можат да содржат порака за статус. Големината на пораката за статус може да варира и затоа големината на OK пакетот не е фиксна.
packets_received_rset_header- Број на MySQL Client Server протокол пакети со заглавие на сет на резултати.
bytes_received_rset_field_meta_packet-
Вкупна големина во бајти на MySQL Client Server протокол метаподатоци на сет на резултати (информации за поле) пакети. Се разбира, големината варира со полињата во сетот на резултати. Пакетот може да пренесе и порака за грешка или EOF пакет во случај на COM_LIST_FIELDS.
Забелешка: Вкупна големина во бајти на MySQL Client Server протокол OK пакети примени. OK пакетите можат да содржат порака за статус. Големината на пораката за статус може да варира и затоа големината на OK пакетот не е фиксна.
packets_received_rset_field_meta- Број на MySQL Client Server протокол метаподатоци на сет на резултати (информации за поле) пакети.
bytes_received_rset_row_packet-
Вкупна големина во бајти на MySQL Client Server протокол податоци за редови на сет на резултати пакети. Пакетот може да пренесе и порака за грешка или EOF пакет. Може да се пресмета бројот на пакети за грешки и EOF со одземање
rows_fetched_from_server_normalandrows_fetched_from_server_psfrombytes_received_rset_row_packet.Забелешка: Вкупна големина во бајти на MySQL Client Server протокол OK пакети примени. OK пакетите можат да содржат порака за статус. Големината на пораката за статус може да варира и затоа големината на OK пакетот не е фиксна.
packets_received_rset_row- Број на MySQL Client Server протокол податоци за редови на сет на резултати пакети.
bytes_received_prepare_response_packet-
Вкупна големина во бајти на MySQL Client Server протокол OK за пакети за иницијализација на подготвени изјави (init пакети за подготвени изјави). Пакетот може да пренесе и грешка. Големината на пакетот зависи од верзијата на MySQL.
Забелешка: Вкупна големина во бајти на MySQL Client Server протокол OK пакети примени. OK пакетите можат да содржат порака за статус. Големината на пораката за статус може да варира и затоа големината на OK пакетот не е фиксна.
packets_received_prepare_response- Број на MySQL Client Server протокол OK за пакети за иницијализација на подготвени изјави (init пакети за подготвени изјави).
bytes_received_change_user_packet-
Вкупна големина во бајти на MySQL Client Server протокол COM_CHANGE_USER пакети. Пакетот може да пренесе и грешка или EOF.
Забелешка: Вкупна големина во бајти на MySQL Client Server протокол OK пакети примени. OK пакетите можат да содржат порака за статус. Големината на пораката за статус може да варира и затоа големината на OK пакетот не е фиксна.
packets_received_change_user- Број на MySQL Client Server протокол COM_CHANGE_USER пакети.
packets_sent_command- Број на MySQL Client Server протокол команди испратени од PHP до MySQL. There is no way to know which specific commands and how many of them have been sent.
bytes_received_real_data_normal-
Нема начин да се знае кои специфични команди и колку од нив биле испратени.
mysqlndБрој на бајти од корисниот товар преземени од PHP клиентот од користејќи го протоколот за текст. Ова е големината на вистинските податоци содржани во множествата со резултати што не потекнуваат од подготвени изјави и кои биле преземени од PHP клиентот.mysqlndИмајте предвид дека иако целото множество со резултати можеби било повлечено од MySQL одmysqlnd, оваа статистика брои само вистински податоци повлечени одод PHP клиентот.
Пример за секвенца на код што ќе ја зголеми вредноста е како што следува:$mysqli = new mysqli(); $res = $mysqli->query("SELECT 'abc'"); $res->fetch_assoc(); $res->close();Секоја операција за преземање ќе ја зголеми вредноста.
$mysqli = new mysqli(); $res = $mysqli->query("SELECT 'abc'"); $res->close(); bytes_received_real_data_ps-
Меѓутоа, статистиката нема да се зголеми ако множеството со резултати само се баферира на клиентот, но не се презема, како во следниот пример:
mysqlndБрој на бајти од корисниот товар преземени од PHP клиентот од користејќи го протоколот за подготвени изјави. Ова е големината на вистинските податоци содржани во множествата со резултати што потекнуваат од подготвени изјави и кои биле преземени од PHP клиентот. Ова е големината на вистинските податоци содржани во множествата со резултати што не потекнуваат од подготвени изјави и кои биле преземени од PHP клиентот.mysqlndИмајте предвид дека иако целото множество со резултати можеби било повлечено од MySQL одmysqlnd, оваа статистика брои само вистински податоци повлечени од Види исто такаbytes_received_real_data_normal.
-
Вредноста нема да се зголеми ако множеството со резултати не се прочита последователно од PHP клиентот.
result_set_queries-
Статистика поврзана со множества со резултати
SELECT,SHOW. Број на прашања што генерирале множество со резултати. Примери за прашања што генерираат множество со резултати:Забелешка: Статистиката нема да се зголеми ако има грешка при читањето на пакетот за заглавие на множеството со резултати од линијата.
non_result_set_queries-
Оваа статистика може да се користи како индиректна мерка за бројот на прашања што PHP ги испратил до MySQL. Ова може да помогне во идентификување на клиент што предизвикува високо оптоварување на базата на податоци.
INSERT,UPDATE,LOAD DATA. Број на прашања што генерирале множество со резултати. Примери за прашања што генерираат множество со резултати:Забелешка: Статистиката нема да се зголеми ако има грешка при читањето на пакетот за заглавие на множеството со резултати од линијата.
no_index_used-
Број на прашања што не генерирале множество со резултати. Примери за прашања што не генерираат множество со резултати:
--log-queries-not-using-indexes).Забелешка: Тие прашања можат да бидат пријавени преку исклучок со повикување
mysqli_report(MYSQLI_REPORT_INDEX);. Можно е тие да бидат пријавени како предупредување со повикувањеmysqli_report(MYSQLI_REPORT_INDEX ^ MYSQLI_REPORT_STRICT);. bad_index_used-
Број на прашања што генерирале сет на резултати и не користеле добар индекс. (Види исто така опцијата за стартување на mysqld
--log-slow-queries).Забелешка: Тие прашања можат да бидат пријавени преку исклучок со повикување
mysqli_report(MYSQLI_REPORT_INDEX);. Можно е тие да бидат пријавени како предупредување со повикувањеmysqli_report(MYSQLI_REPORT_INDEX ^ MYSQLI_REPORT_STRICT);. slow_queries-
SQL изјави што траеле повеќе од
long_query_timeсекунди за извршување и барале најмалкуmin_examined_row_limitредови за испитување.Безбедност: стандардниот сет на знациНе е пријавено преку mysqli_report().
buffered_sets-
Број на баферирани множества на резултати вратени од нормални (т.е. не преку подготвена изјава) прашања.
Примери на API повици што ќе баферираат множества на резултати на клиентот: mysqli_query(), mysqli_store_result(), mysqli_stmt_get_result()
unbuffered_sets-
Број на не-баферирани множества на резултати вратени од нормални (т.е. не преку подготвена изјава) прашања.
Примери на API повици што нема да баферираат множества на резултати на клиентот: mysqli_use_result()
ps_buffered_sets-
Број на баферирани множества на резултати вратени од подготвени изјави.
Примери на API повици што ќе баферираат множества на резултати на клиентот: mysqli_stmt_store_result()
ps_unbuffered_sets- Број на не-баферирани множества на резултати вратени од подготвени изјави. Стандардно, подготвените изјави се не-баферирани, така што повеќето подготвени изјави ќе бидат земени предвид во оваа статистика.
flushed_normal_sets-
Број на множества на резултати вратени од нормални (т.е. не преку подготвена изјава) прашања со непрочитани податоци што биле тивко испразнети.
Забелешка: Испразнувањето се случува само со не-баферирани множества на резултати. Не-баферираните множества на резултати мора целосно да се преземат пред да може да се изврши ново прашање на врската, инаку MySQL ќе фрли грешка. Ако апликацијата не ги преземе сите редови од не-баферирано множество на резултати, mysqlnd имплицитно го презема множеството на резултати за да ја исчисти линијата. Види исто така
rows_skipped_normal,rows_skipped_ps.Некои можни причини за имплицитно испразнување:
- Неисправна клиентска апликација
- Клиентот престанал да чита откако го нашол она што го барал, но го натерал MySQL да пресмета повеќе записи отколку што било потребно
- Клиентската апликација неочекувано престана да работи
flushed_ps_sets-
Број на множества со резултати од подготвени изјави со непрочитани податоци што биле тивко исфрлени.
Забелешка: Испразнувањето се случува само со не-баферирани множества на резултати. Не-баферираните множества на резултати мора целосно да се преземат пред да може да се изврши ново прашање на врската, инаку MySQL ќе фрли грешка. Ако апликацијата не ги преземе сите редови од не-баферирано множество на резултати, mysqlnd имплицитно го презема множеството на резултати за да ја исчисти линијата. Види исто така
rows_skipped_normal,rows_skipped_ps.Некои можни причини за имплицитно испразнување:
- Неисправна клиентска апликација
- Клиентот престанал да чита откако го нашол она што го барал, но го натерал MySQL да пресмета повеќе записи отколку што било потребно
- Клиентската апликација неочекувано престана да работи
ps_prepared_never_executed- Број на подготвени изјави што никогаш не биле извршени.
ps_prepared_once_executed- Број на подготвени изјави извршени само еднаш.
rows_fetched_from_server_normalrows_fetched_from_server_ps-
Вкупен број на редови од множества со резултати преземени од серверот. Ова ги вклучува редовите што не биле прочитани од клиентот, но биле имплицитно преземени поради исфрлени нетампонирани множества со резултати.
Види исто така
packets_received_rset_row. rows_buffered_from_client_normal-
Вкупен број на тампонирани редови што потекнуваат од нормално прашање.
Ова е бројот на редови што биле преземени од MySQL и тампонирани на клиентот.
Примери за прашања што ќе тампонираат резултати:
rows_buffered_from_client_ps-
Исто како
rows_buffered_from_client_normalно за подготвени изјави. rows_fetched_from_client_normal_buffered- Вкупен број на редови преземени од клиентот од тампонирано множество со резултати создадено од нормално прашање.
rows_fetched_from_client_ps_buffered- Вкупен број на редови преземени од клиентот од тампонирано множество со резултати создадено од подготвена изјава.
rows_fetched_from_client_normal_unbuffered- Вкупен број на редови преземени од клиентот од нетампонирано множество со резултати создадено од нормално прашање.
rows_fetched_from_client_ps_unbuffered- Вкупен број на редови преземени од клиентот од нетампонирано множество со резултати создадено од подготвена изјава.
rows_fetched_from_client_ps_cursor- Вкупен број на редови преземени од клиентот од курсор создаден од подготвена изјава.
rows_skipped_normalrows_skipped_ps- Резервирано за идна употреба (моментално не е поддржано).
copy_on_write_savedcopy_on_write_performed- Ова е статистика на опсег на ниво на процес. Со mysqlnd, променливите вратени од екстензиите укажуваат на внатрешните тампони за резултати на мрежата на mysqlnd. Ако податоците не се променат, преземените податоци се чуваат само еднаш во меморијата. Сепак, секоја модификација на податоците ќе бара од mysqlnd да изврши операција за копирање при запишување.
explicit_free_resultimplicit_free_result- Ова е статистика на опсег на ниво на конекција и процес. Вкупен број на ослободени множества со резултати.
proto_text_fetched_null-
Вкупен број на колони од тип
MYSQL_TYPE_NULLпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_null-
Вкупен број на колони од тип
MYSQL_TYPE_NULLпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_bit-
Вкупен број на колони од тип
MYSQL_TYPE_BITпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_bit-
Вкупен број на колони од тип
MYSQL_TYPE_BITпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_tinyint-
Вкупен број на колони од тип
MYSQL_TYPE_TINYпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_tinyint-
Вкупен број на колони од тип
MYSQL_TYPE_TINYпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_short-
Вкупен број на колони од тип
MYSQL_TYPE_SHORTпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_short-
Вкупен број на колони од тип
MYSQL_TYPE_SHORTпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_int24-
Вкупен број на колони од тип
MYSQL_TYPE_INT24преземено од нормално барање (MySQL text protocol). proto_binary_fetched_int24-
Вкупен број на колони од тип
MYSQL_TYPE_INT24преземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_int-
Вкупен број на колони од тип
MYSQL_TYPE_LONGпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_int-
Вкупен број на колони од тип
MYSQL_TYPE_LONGпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_bigint-
Вкупен број на колони од тип
MYSQL_TYPE_LONGLONGпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_bigint-
Вкупен број на колони од тип
MYSQL_TYPE_LONGLONGпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_decimal-
Вкупен број на колони од тип
MYSQL_TYPE_DECIMAL, илиMYSQL_TYPE_NEWDECIMALпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_decimal-
Вкупен број на колони од тип
MYSQL_TYPE_DECIMAL, илиMYSQL_TYPE_NEWDECIMALпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_float-
Вкупен број на колони од тип
MYSQL_TYPE_FLOATпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_float-
Вкупен број на колони од тип
MYSQL_TYPE_FLOATпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_double-
Вкупен број на колони од тип
MYSQL_TYPE_DOUBLEпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_double-
Вкупен број на колони од тип
MYSQL_TYPE_DOUBLEпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_date-
Вкупен број на колони од тип
MYSQL_TYPE_DATE, илиMYSQL_TYPE_NEWDATEпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_date-
Вкупен број на колони од тип
MYSQL_TYPE_DATE, илиMYSQL_TYPE_NEWDATEпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_year-
Вкупен број на колони од тип
MYSQL_TYPE_YEARпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_year-
Вкупен број на колони од тип
MYSQL_TYPE_YEARпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_time-
Вкупен број на колони од тип
MYSQL_TYPE_TIMEпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_time-
Вкупен број на колони од тип
MYSQL_TYPE_TIMEпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_datetime-
Вкупен број на колони од тип
MYSQL_TYPE_DATETIMEпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_datetime-
Вкупен број на колони од тип
MYSQL_TYPE_DATETIMEпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_timestamp-
Вкупен број на колони од тип
MYSQL_TYPE_TIMESTAMPпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_timestamp-
Вкупен број на колони од тип
MYSQL_TYPE_TIMESTAMPпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_string-
Вкупен број на колони од тип
MYSQL_TYPE_STRING,MYSQL_TYPE_VARSTRING, илиMYSQL_TYPE_VARCHARпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_string-
Вкупен број на колони од тип
MYSQL_TYPE_STRING,MYSQL_TYPE_VARSTRING, илиMYSQL_TYPE_VARCHARпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_blob-
Вкупен број на колони од тип
MYSQL_TYPE_TINY_BLOB,MYSQL_TYPE_MEDIUM_BLOB,MYSQL_TYPE_LONG_BLOB, илиMYSQL_TYPE_BLOBпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_blob-
Вкупен број на колони од тип
MYSQL_TYPE_TINY_BLOB,MYSQL_TYPE_MEDIUM_BLOB,MYSQL_TYPE_LONG_BLOB, илиMYSQL_TYPE_BLOBпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_enum-
Вкупен број на колони од тип
MYSQL_TYPE_ENUMпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_enum-
Вкупен број на колони од тип
MYSQL_TYPE_ENUMпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_set-
Вкупен број на колони од тип
MYSQL_TYPE_SETпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_set-
Вкупен број на колони од тип
MYSQL_TYPE_SETпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_geometry-
Вкупен број на колони од тип
MYSQL_TYPE_GEOMETRYпреземено од нормално барање (MySQL text protocol). proto_binary_fetched_geometry-
Вкупен број на колони од тип
MYSQL_TYPE_GEOMETRYпреземено од подготвена изјава (MySQL binary protocol). proto_text_fetched_other-
Вкупен број на колони од типови
MYSQL_TYPE_*претходно не наведени преземени од нормално барање (MySQL text protocol).Забелешка: Теоретски, ова секогаш треба да биде
0. proto_binary_fetched_other-
Вкупен број на колони од тип
MYSQL_TYPE_*претходно не наведени преземени од подготвена изјава (MySQL binary protocol).Забелешка: Теоретски, ова секогаш треба да биде
0.
-
Статистика поврзана со конекцијата
connect_success-
Вкупен број на успешни обиди за конекција.
Забелешка:
connect_successго држи збирот на успешни постојани и непостојани обиди за конекција. Затоа, бројот на успешни непостојани обиди за конекција еconnect_success - pconnect_success. pconnect_success- Вкупен број на успешни постојани обиди за конекција.
connect_failure- Вкупен број на неуспешни обиди за конекција.
reconnect- Ова е статистика на опсег на ниво на процес.
active_connections-
Ова е статистика на опсег на ниво на процес.
Вкупен број на активни постојани и непостојани конекции.
Забелешка: Вкупниот број на активни непостојани конекции е
active_connections - active_persistent_connections. active_persistent_connections- Ова е статистика на опсег на ниво на процес. Вкупен број на активни постојани конекции.
explicit_close-
Вкупен број на експлицитно затворени конекции.
Пример #1 Примери на кодни парчиња што предизвикуваат експлицитно затворање
-
$link = new mysqli(/* ... */); $link->close(/* ... */);
-
$link = new mysqli(/* ... */); $link->connect(/* ... */);
-
implicit_close-
Вкупен број на имплицитно затворени конекции.
Пример #2 Примери на кодни парчиња што предизвикуваат имплицитно затворање
-
$link = new mysqli(/* ... */); $link->real_connect(/* ... */);
-
unset($link) - Постојана конекција: пулсирана конекција е креирана со real_connect и можеби се поставени непознати опции - затвори имплицитно за да се избегне враќање на конекција со непознати опции
- Постојана конекција: ping/change_user не успева и ext/mysqli ја затвора конекцијата
- Крај на извршувањето на скриптата: затворете ги врските што не се затворени од корисникот
-
disconnect_close-
Грешки при поврзувањето означени со повикот на C API
mysql_real_connectпри обид за воспоставување врска. in_middle_of_command_close-
Ова е статистика на опсег на ниво на процес.
Врската е затворена среде извршување на команда (непреземени резултати, по испраќање на прашалник и пред добивање одговор, при преземање податоци, при пренос на податоци со LOAD DATA).
Ги ескејпува специјалните знаци во стринг за употреба во SQL изјава
Освен ако не се користат асинхрони прашалници, ова треба да се случи само ако PHP апликацијата неочекувано завршила, и PHP автоматски ја исклучува врската.
init_command_executed_count-
Вкупен број на извршувања на команди за иницијализација. На пример:
mysqli_options(MYSQLI_INIT_COMMAND , $value). Бројот на успешни извршувања еinit_command_executed_count - init_command_failed_count. init_command_failed_count- Вкупен број на неуспешни команди за иницијализација.
com_quitcom_init_dbcom_querycom_field_listcom_create_dbcom_drop_dbcom_refreshcom_shutdowncom_statisticscom_process_infocom_connectcom_process_killcom_debugcom_pingcom_timecom_delayed_insertcom_change_usercom_binlog_dumpcom_table_dumpcom_connect_outcom_register_slavecom_stmt_preparecom_stmt_executecom_stmt_send_long_datacom_stmt_closecom_stmt_resetcom_stmt_set_optioncom_stmt_fetchcom_daemon-
Вкупен број на обиди за испраќање на одредена
COM_*команда од PHP до MySQL. Статистиките се зголемуваат по проверката на линијата и непосредно пред испраќањето на соодветниот пакет на протоколот MySQL клиент сервер.Безбедност: стандардниот сет на знациАко MySQLnd не успее да го испрати пакетот преку мрежата, статистиките нема да се намалат. Во случај на неуспех, MySQLnd емитува PHP предупредување
Грешка при испраќање на %s пакет. PID=%d.
Пример #3 Примери за употреба
-
Проверете дали PHP испраќа одредени команди до MySQL, на пример, проверете дали клиент испраќа
COM_PROCESS_KILL -
Пресметајте го просечниот број на извршувања на подготвени изјави со споредување
COM_EXECUTEwithCOM_PREPARE -
Проверете дали PHP извршил било какви неподготвени SQL изјави со проверка дали
COM_QUERYе нула -
Идентификувајте PHP скрипти кои извршуваат прекумерен број на SQL изјави со проверка
COM_QUERYandCOM_EXECUTE
-
Проверете дали PHP испраќа одредени команди до MySQL, на пример, проверете дали клиент испраќа
COM_* Статистики поврзани со команди
-
Разни статистики
explicit_stmt_closeimplicit_stmt_close-
Ова е статистика на опсег на ниво на процес.
Вкупен број на затворени подготвени изјави.
Забелешка: Подготвената изјава секогаш се затвора експлицитно. Единствениот пат кога се затвора имплицитно е кога подготовката ќе пропадне.
mem_emalloc_countmem_emalloc_ammountmem_ecalloc_countmem_ecalloc_ammountmem_realloc_countmem_realloc_ammountmem_efree_countmem_malloc_countmem_malloc_ammountmem_calloc_countmem_calloc_ammountmem_ealloc_countmem_ealloc_ammountmem_free_count- Ова е статистика на опсег на ниво на процес. Повици за управување со меморија.
command_buffer_too_small-
Број на проширувања на тампон за мрежни команди при испраќање команди од PHP до MySQL.
MySQLnd доделува внатрешен тампон за команди/мрежа од
mysqlnd.net_cmd_buffer_size
бајти за секоја врска.
Ако командата на протоколот MySQL Client Server, на пр.
COM_QUERY(нормално прашање), не се вклопува во тампонот, MySQLnd ќе го зголеми тампонот на она што е потребно за испраќање на командата. Секогаш кога тампонот се проширува за една врскаcommand_buffer_too_smallќе се зголеми за еден. Ако MySQLnd мора да го зголеми тампонот над неговата почетна големина од mysqlnd.net_cmd_buffer_size бајти за речиси секоја врска, треба да се разгледа зголемување на стандардната големина за да се избегнат повторни доделувања. connection_reused- Вкупниот број на пати кога е повторно искористена постојана врска.