mysqli_stat în PHP

Returnează starea serverului MySQL ca text: de cât timp rulează, câte conexiuni și interogări are.

Sintaxă
mysqli_stat(mysqli $mysql): string|false

Ce face mysqli_stat

Textul este cel afișat de comanda mysqladmin status: Uptime (secunde de la pornirea serverului), Threads (conexiuni deschise), Questions (interogări primite), Slow queries, Opens, Open tables și media de interogări pe secundă. Este util pentru o pagină simplă de monitorizare.

Parametri

Parametru Descriere
$mysql Conexiunea.

Ce returnează

Textul cu starea serverului sau false la eroare.

Exemple

Exemplul 1: Starea serverului

<?php
$conn = mysqli_connect("localhost", "ana", "parola_ta", "magazin");

$stare = mysqli_stat($conn);
echo $stare . "\n";

preg_match("/Uptime: (\d+)/", $stare, $m);
echo "Serverul rulează de " . floor($m[1] / 86400) . " zile";

Rezultat posibil (diferă la fiecare rulare)

Uptime: 1324871  Threads: 3  Questions: 518204  Slow queries: 2  Opens: 812  Flush tables: 3  Open tables: 731  Queries per second avg: 0.391
Serverul rulează de 15 zile

Greșeli frecvente

  • Extragi valorile după poziția lor în text. Ordinea și numărul câmpurilor diferă între versiuni MySQL și MariaDB; caută-le după nume, cu o expresie regulată.

Comenzi înrudite

  • mysqli_get_server_info: Returnează versiunea serverului MySQL sau MariaDB la care ești conectat, ca text.
  • mysqli_thread_id: Returnează id-ul conexiunii pe serverul MySQL, cel afișat în SHOW PROCESSLIST.
  • mysqli_get_connection_stats: Returnează statistici despre o conexiune: octeți trimiși și primiți, interogări, rânduri citite.