<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.mysqlnd.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'mysqlnd.stats.php',
    1 => 'Estad&iacute;sticas',
    2 => 'Estad&iacute;sticas',
  ),
  'up' => 
  array (
    0 => 'book.mysqlnd.php',
    1 => 'Mysqlnd',
  ),
  'prev' => 
  array (
    0 => 'mysqlnd.persist.php',
    1 => 'Conexiones persistentes',
  ),
  'next' => 
  array (
    0 => 'mysqlnd.notes.php',
    1 => 'Notas',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/mysqlnd/stats.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="mysqlnd.stats" class="chapter">
 <h1 class="title">Estadísticas</h1>


 <p class="para">
  El controlador nativo de MySQL contiene soporte para la recolección de estadísticas
  sobre la comunicación entre el cliente y el servidor. Las estadísticas
  recolectadas son de dos tipos principales:
  <ul class="itemizedlist">
   <li class="listitem">
    <p class="simpara">Estadísticas del cliente</p>
   </li>
   <li class="listitem">
    <p class="simpara">Estadísticas de la conexión</p>
   </li>
  </ul>
 </p>
 <p class="para">
  Cuando se utiliza la extensión <a href="book.mysqli.php" class="link">mysqli</a>,
  estas estadísticas pueden obtenerse mediante dos llamadas API:
  <ul class="itemizedlist">
   <li class="listitem">
    <p class="simpara"><span class="function"><a href="function.mysqli-get-client-stats.php" class="function">mysqli_get_client_stats()</a></span></p>
   </li>
   <li class="listitem">
    <p class="simpara"><span class="function"><a href="mysqli.get-connection-stats.php" class="function">mysqli_get_connection_stats()</a></span></p>
   </li>
  </ul>
 </p>

 <blockquote class="note"><p><strong class="note">Nota</strong>: 
  <p class="simpara">
   Las estadísticas se agrupan entre todas las extensiones que utilizan
   el controlador nativo de MySQL. Por ejemplo, si la extensión <a href="book.mysqli.php" class="link">mysqli</a>
   y el controlador PDO MySQL están ambos configurados para usar MySQLnd,
   entonces las llamadas de funciones de <a href="book.mysqli.php" class="link">mysqli</a>
   y las llamadas de métodos de PDO afectarán las estadísticas.
  </p>
  <p class="simpara">
   No hay manera de saber cuánto impacto ha tenido una cierta llamada API de una
   extensión que ha sido compilada sin el controlador nativo de MySQL en
   una cierta estadística.
  </p>
 </p></blockquote>

 <div id="mysqlnd.stats.retrieve" class="section">
  <h2 class="title">Recuperación de las estadísticas</h2>

  <p class="simpara">
   Las estadísticas del cliente pueden recuperarse llamando a la
   función <span class="function"><a href="function.mysqli-get-client-stats.php" class="function">mysqli_get_client_stats()</a></span>.
  </p>

  <p class="simpara">
   Las estadísticas de conexión pueden recuperarse llamando a la
   función <span class="function"><a href="mysqli.get-connection-stats.php" class="function">mysqli_get_connection_stats()</a></span>.
  </p>

  <p class="simpara">
   Las dos funciones devuelven un array asociativo,
   donde el nombre de una estadística es la clave para los
   datos estadísticos correspondientes.
  </p>
 </div>

 <div id="mysqlnd.stats.statistics" class="section">
  <h2 class="title">Estadísticas del controlador nativo de MySQL</h2>
  <p class="simpara">
   La mayoría de las estadísticas están asociadas a una conexión, pero algunas
   están asociadas al proceso, en cuyo caso esto será mencionado.
   
  </p>
  <p class="simpara">
   Las siguientes estadísticas son producidas por el controlador nativo de MySQL:
  </p>

  <dl>
   <strong class="title">Estadísticas relacionadas con la red</strong>

   
    <dt id="mysqlnd.stats.statistics.bytes-sent"><code class="literal">bytes_sent</code></dt>
    <dd>
     <p class="simpara">
      El número de bytes enviados de PHP al servidor MySQL.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received"><code class="literal">bytes_received</code></dt>
    <dd>
     <p class="simpara">
      El número de bytes recibidos del servidor MySQL.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-sent"><code class="literal">packets_sent</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes enviados por el protocolo cliente-servidor MySQL.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-received"><code class="literal">packets_received</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes recibidos del protocolo cliente-servidor MySQL.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.protocol-overhead-in"><code class="literal">protocol_overhead_in</code></dt>
    <dd>
     <p class="simpara">
      La sobrecarga del protocolo cliente-servidor MySQL en bytes para el tráfico entrante.
      Actualmente, solo el encabezado de paquete (4 bytes) se considera como sobrecarga.
      <code class="code">protocol_overhead_in = packets_received * 4</code>
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.protocol-overhead-out"><code class="literal">protocol_overhead_out</code></dt>
    <dd>
     <p class="simpara">
      La sobrecarga del protocolo cliente-servidor MySQL en bytes para el tráfico saliente.
      Actualmente, solo el encabezado de paquete (4 bytes) se considera como sobrecarga.
      <code class="code">protocol_overhead_out = packets_received * 4</code>
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-ok-packet"><code class="literal">bytes_received_ok_packet</code></dt>
    <dd>
     <p class="simpara">
      El tamaño total en bytes de los paquetes OK del protocolo cliente-servidor MySQL recibidos.
      Los paquetes OK pueden contener un mensaje de estado.
      La longitud del mensaje de estado puede variar y por lo tanto el tamaño de un paquete OK
      no es fijo.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El tamaño total en bytes incluye el tamaño del encabezado del paquete
       (4 bytes, ver la sobrecarga del protocolo).
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-received-ok"><code class="literal">packets_received_ok</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes OK del protocolo cliente-servidor MySQL recibidos.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-eof-packet"><code class="literal">bytes_received_eof_packet</code></dt>
    <dd>
     <p class="simpara">
      El tamaño total en bytes de los paquetes EOF del protocolo cliente-servidor MySQL recibidos.
      El tamaño de un paquete EOF puede variar dependiendo de la versión del servidor.
      Además, un paquete EOF puede transportar un mensaje de error.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El tamaño total en bytes incluye el tamaño del encabezado del paquete
       (4 bytes, ver la sobrecarga del protocolo).
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-received-eof"><code class="literal">packets_received_eof</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes EOF del protocolo cliente-servidor MySQL recibidos.
     </p>
     <p class="simpara">
      Al igual que con otras estadísticas de paquetes, el número de paquetes será
      incrementado incluso si PHP no recibe el paquete esperado, sino, por ejemplo,
      un mensaje de error.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-rset-header-packet"><code class="literal">bytes_received_rset_header_packet</code></dt>
    <dd>
     <p class="simpara">
      El tamaño total en bytes de los encabezados de paquetes de resultados del protocolo cliente-servidor
      MySQL recibidos.
      El tamaño del encabezado del paquete puede variar dependiendo de la carga útil
      (<code class="literal">LOAD LOCAL INFILE</code>, <code class="literal">INSERT</code>,
      <code class="literal">UPDATE</code>, <code class="literal">SELECT</code>, mensaje de error).
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El tamaño total en bytes incluye el tamaño del encabezado del paquete
       (4 bytes, ver la sobrecarga del protocolo).
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-received-rset-header"><code class="literal">packets_received_rset_header</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes de encabezados de resultados del protocolo cliente-servidor MySQL recibidos.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-rset-field-meta-packet"><code class="literal">bytes_received_rset_field_meta_packet</code></dt>
    <dd>
     <p class="simpara">
      El tamaño total en bytes de los paquetes de metadatos de resultados del protocolo cliente-servidor
      (información de campo).
      Por supuesto, el tamaño varía con los campos del resultado.
      El paquete también puede transportar un error o un paquete EOF en caso de
      COM_LIST_FIELDS.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El tamaño total en bytes incluye el tamaño del encabezado del paquete
       (4 bytes, ver la sobrecarga del protocolo).
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-received-rset-field-meta"><code class="literal">packets_received_rset_field_meta</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes de metadatos de resultados del protocolo cliente-servidor recibidos
      (información de campo).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-rset-row-packet"><code class="literal">bytes_received_rset_row_packet</code></dt>
    <dd>
     <p class="simpara">
      El tamaño total en bytes de los datos de fila de resultados del protocolo cliente-servidor
      MySQL recibidos.
      El paquete también puede transportar un error o un paquete EOF.
      Se puede calcular el número de errores y paquetes EOF restando
      <code class="literal">rows_fetched_from_server_normal</code>
      y <code class="literal">rows_fetched_from_server_ps</code>
      de <code class="literal">bytes_received_rset_row_packet</code>.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El tamaño total en bytes incluye el tamaño del encabezado del paquete
       (4 bytes, ver la sobrecarga del protocolo).
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-received-rset-row"><code class="literal">packets_received_rset_row</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes de datos de fila de resultados del protocolo cliente-servidor MySQL recibidos.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-prepare-response-packet"><code class="literal">bytes_received_prepare_response_packet</code></dt>
    <dd>
     <p class="simpara">
      El tamaño total en bytes de los paquetes OK del protocolo cliente-servidor MySQL recibidos para
      la inicialización de declaraciones preparadas (paquetes de inicialización de declaración preparada).
      El paquete también puede transportar un error.
      El tamaño del paquete depende de la versión de MySQL.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El tamaño total en bytes incluye el tamaño del encabezado del paquete
       (4 bytes, ver la sobrecarga del protocolo).
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-received-prepare-response"><code class="literal">packets_received_prepare_response</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes OK del protocolo cliente-servidor MySQL recibidos para
      la inicialización de declaraciones preparadas (paquetes de inicialización de declaración preparada).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-change-user-packet"><code class="literal">bytes_received_change_user_packet</code></dt>
    <dd>
     <p class="simpara">
      El tamaño total en bytes de los paquetes COM_CHANGE_USER del protocolo cliente-servidor MySQL recibidos.
      El paquete también puede transportar un error o un paquete EOF.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El tamaño total en bytes incluye el tamaño del encabezado del paquete
       (4 bytes, ver la sobrecarga del protocolo).
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-received-change-user"><code class="literal">packets_received_change_user</code></dt>
    <dd>
     <p class="simpara">
      El número de paquetes COM_CHANGE_USER del protocolo cliente-servidor MySQL recibidos.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.packets-sent-command"><code class="literal">packets_sent_command</code></dt>
    <dd>
     <p class="simpara">
      El número de comandos MySQL enviados por PHP al servidor MySQL.
     </p>
     <p class="simpara">
      No hay manera de saber qué comandos específicos y cuántos
      de ellos han sido enviados.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-real-data_normal"><code class="literal">bytes_received_real_data_normal</code></dt>
    <dd>
     <p class="simpara">
      El número de bytes de carga útil recuperados por el cliente PHP desde
      <code class="literal">mysqlnd</code> usando el protocolo de texto.
     </p>
     <p class="simpara">
      Esto es el tamaño de los datos reales contenidos en los conjuntos de resultados
      que no provienen de declaraciones preparadas y que han sido recuperados por el cliente PHP.
     </p>
     <p class="simpara">
      Es de notar que aunque un conjunto de resultados completo haya podido ser extraído de MySQL
      por <code class="literal">mysqlnd</code>, esta estadística solo cuenta los datos reales
      extraídos de <code class="literal">mysqlnd</code> por el cliente PHP.
     </p>
     <p class="para">
      Un ejemplo de secuencia de código que incrementará el valor es el siguiente:
      <div class="example-contents">
<div class="cdata"><pre>
$mysqli = new mysqli();
$res = $mysqli-&gt;query(&quot;SELECT &#039;abc&#039;&quot;);
$res-&gt;fetch_assoc();
$res-&gt;close();
</pre></div>
      </div>

      Cada operación de recuperación incrementará el valor.
     </p>
     <p class="para">
      Sin embargo, la estadística no será incrementada si el conjunto de resultados es solo
      almacenado en búfer en el cliente, pero no extraído, como en el siguiente ejemplo:
      <div class="example-contents">
<div class="cdata"><pre>
$mysqli = new mysqli();
$res = $mysqli-&gt;query(&quot;SELECT &#039;abc&#039;&quot;);
$res-&gt;close();
</pre></div>
      </div>

     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bytes-received-real-data-ps"><code class="literal">bytes_received_real_data_ps</code></dt>
    <dd>
     <p class="simpara">
      El número de bytes de carga útil recuperados por el cliente PHP desde
      <code class="literal">mysqlnd</code> usando el protocolo de declaración preparada.
     </p>
     <p class="simpara">
      Esto es el tamaño de los datos reales contenidos en los conjuntos de resultados
      que provienen de declaraciones preparadas y que han sido recuperados por el cliente PHP.
     </p>
     <p class="simpara">
      El valor no será incrementado si el conjunto de resultados no es leído por el cliente PHP.
     </p>
     <p class="simpara">
      Es de notar que aunque un conjunto de resultados completo haya podido ser extraído de MySQL
      por <code class="literal">mysqlnd</code>, esta estadística solo cuenta los datos reales
      extraídos de <code class="literal">mysqlnd</code> por el cliente PHP.
     </p>
     <p class="simpara">
      Ver también <code class="literal">bytes_received_real_data_normal</code>.
     </p>
    </dd>
   
  </dl>

  <dl>
   <strong class="title">Estadísticas relacionadas con los conjuntos de resultados</strong>

   
    <dt id="mysqlnd.stats.statistics.result-set-queries"><code class="literal">result_set_queries</code></dt>
    <dd>
     <p class="simpara">
      El número de consultas que han generado un conjunto de resultados.
      Ejemplos de consultas que generan un conjunto de resultados:
      <code class="literal">SELECT</code>, <code class="literal">SHOW</code>.
     </p>
     <p class="simpara">
      La estadística no será incrementada si hay un error al leer
      el encabezado del paquete del conjunto de resultados.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       Esta estadística puede ser utilizada como medida indirecta del número de
       Esto puede ayudar a identificar un cliente que provoca una carga alta en la base de datos.
       consultas que PHP ha enviado a MySQL.
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.non-result-set-queries"><code class="literal">non_result_set_queries</code></dt>
    <dd>
     <p class="simpara">
      El número de consultas que no han generado un conjunto de resultados.
      Ejemplos de consultas que no generan un conjunto de resultados:
      <code class="literal">INSERT</code>, <code class="literal">UPDATE</code>, <code class="literal">LOAD DATA</code>.
     </p>
     <p class="simpara">
      Esta estadística no será incrementada si hay un error al leer
      el encabezado del paquete del conjunto de resultados.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       Esta estadística puede ser utilizada como medida indirecta del número de
       Esto puede ayudar a identificar un cliente que provoca una carga alta en la base de datos.
       consultas que PHP ha enviado a MySQL.
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.no-index-used"><code class="literal">no_index_used</code></dt>
    <dd>
     <p class="simpara">
      El número de consultas que han generado un conjunto de resultados pero no han utilizado un índice.
      (Ver también la opción de inicio de mysqld <code class="literal">--log-queries-not-using-indexes</code>).
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       Estas consultas pueden ser reportadas mediante una excepción llamando
       <code class="code">mysqli_report(MYSQLI_REPORT_INDEX);</code>.
       Es posible reportarlas mediante un aviso llamando
       <code class="code">mysqli_report(MYSQLI_REPORT_INDEX ^ MYSQLI_REPORT_STRICT);</code>.
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.bad-index-used"><code class="literal">bad_index_used</code></dt>
    <dd>
     <p class="simpara">
      El número de consultas que han generado un conjunto de resultados y no han utilizado un buen índice.
      (Ver también la opción de inicio de mysqld <code class="literal">--log-slow-queries</code>).
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       Estas consultas pueden ser reportadas mediante una excepción llamando
       <code class="code">mysqli_report(MYSQLI_REPORT_INDEX);</code>.
       Es posible reportarlas mediante un aviso llamando
       <code class="code">mysqli_report(MYSQLI_REPORT_INDEX ^ MYSQLI_REPORT_STRICT);</code>.
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.slow-queries"><code class="literal">slow_queries</code></dt>
    <dd>
     <p class="simpara">
      Las declaraciones SQL que han tomado más de <code class="literal">long_query_time</code>
      segundos para ejecutarse y han necesitado al menos
      <code class="literal">min_examined_row_limit</code> filas para examinar.
     </p>
     <div class="caution"><strong class="caution">Precaución</strong>
      <p class="simpara">
       No reportado mediante <span class="function"><a href="function.mysqli-report.php" class="function">mysqli_report()</a></span>.
      </p>
     </div>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.buffered-sets"><code class="literal">buffered_sets</code></dt>
    <dd>
     <p class="simpara">
      El número de conjuntos de resultados almacenados en búfer devueltos por consultas normales
      (es decir, no mediante una declaración preparada).
     </p>
     <p class="para">
      Ejemplos de llamadas API que almacenarán en búfer los conjuntos de resultados en el cliente:
      <span class="simplelist"><span class="function"><a href="mysqli.query.php" class="function">mysqli_query()</a></span>, <span class="function"><a href="mysqli.store-result.php" class="function">mysqli_store_result()</a></span>, <span class="function"><a href="mysqli-stmt.get-result.php" class="function">mysqli_stmt_get_result()</a></span></span>
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.unbuffered-sets"><code class="literal">unbuffered_sets</code></dt>
    <dd>
     <p class="simpara">
      El número de conjuntos de resultados no almacenados en búfer devueltos por consultas normales
      (es decir, no mediante una declaración preparada).
     </p>
     <p class="para">
      Ejemplos de llamadas API que no almacenarán en búfer los conjuntos de resultados en el cliente:
      <span class="simplelist"><span class="function"><a href="mysqli.use-result.php" class="function">mysqli_use_result()</a></span></span>
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.ps-buffered-sets"><code class="literal">ps_buffered_sets</code></dt>
    <dd>
     <p class="simpara">
      El número de conjuntos de resultados almacenados en búfer devueltos por declaraciones preparadas.
     </p>
     <p class="para">
      Ejemplos de llamadas API que almacenarán en búfer los conjuntos de resultados en el cliente:
      <span class="simplelist"><span class="function"><a href="mysqli-stmt.store-result.php" class="function">mysqli_stmt_store_result()</a></span></span>
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.ps-unbuffered-sets"><code class="literal">ps_unbuffered_sets</code></dt>
    <dd>
     <p class="simpara">
      El número de conjuntos de resultados no almacenados en búfer devueltos por declaraciones preparadas.
     </p>
     <p class="simpara">
      Por omisión, las declaraciones preparadas no son almacenadas en búfer,
      por lo que la mayoría de las declaraciones preparadas serán contabilizadas en esta estadística.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.flushed-normal-sets"><code class="literal">flushed_normal_sets</code></dt>
    <dd>
     <p class="simpara">
      El número de juegos de resultados devueltos por consultas normales
      (es decir, no mediante una declaración preparada) con datos no leídos que han sido
      silenciosamente vaciados.
     </p>

     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El vaciado solo ocurre con conjuntos de resultados no almacenados en búfer.
      </p>
      <p class="simpara">
       Los conjuntos de resultados no almacenados en búfer deben ser recuperados completamente antes
       de que una nueva consulta pueda ser ejecutada en la conexión, de lo contrario MySQL lanzará un error.
       Si la aplicación no recupera todas las filas de un conjunto de resultados no almacenado en búfer,
       mysqlnd recupera implícitamente el conjunto de resultados para vaciar la fila.
      </p>
      <p class="simpara">
       Ver también <code class="literal">rows_skipped_normal</code>, <code class="literal">rows_skipped_ps</code>.
      </p>
      <p class="para">
       Algunas causas posibles para un vaciado implícito:
       <ul class="itemizedlist">
        <li class="listitem">
         <p class="simpara">
          Aplicación cliente defectuosa
         </p>
        </li>
        <li class="listitem">
         <p class="simpara">
          Cliente se detuvo de leer después de encontrar lo que buscaba
          pero hizo que MySQL calculara más filas de las necesarias
         </p>
        </li>
        <li class="listitem">
         <p class="simpara">
          La aplicación cliente se detuvo de manera inesperada
         </p>
        </li>
       </ul>
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.flushed-ps-sets"><code class="literal">flushed_ps_sets</code></dt>
    <dd>
     <p class="simpara">
      El número de juegos de resultados devueltos por declaraciones preparadas
      con datos no leídos que han sido silenciosamente vaciados.
     </p>

     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El vaciado solo ocurre con conjuntos de resultados no almacenados en búfer.
      </p>
      <p class="simpara">
       Los conjuntos de resultados no almacenados en búfer deben ser recuperados completamente antes
       de que una nueva consulta pueda ser ejecutada en la conexión, de lo contrario MySQL lanzará un error.
       Si la aplicación no recupera todas las filas de un conjunto de resultados no almacenado en búfer,
       mysqlnd recupera implícitamente el conjunto de resultados para vaciar la fila.
      </p>
      <p class="simpara">
       Ver también <code class="literal">rows_skipped_normal</code>, <code class="literal">rows_skipped_ps</code>.
      </p>
      <p class="para">
       Algunas causas posibles para un vaciado implícito:
       <ul class="itemizedlist">
        <li class="listitem">
         <p class="simpara">
          Aplicación cliente defectuosa
         </p>
        </li>
        <li class="listitem">
         <p class="simpara">
          Cliente se detuvo de leer después de encontrar lo que buscaba
          pero hizo que MySQL calculara más filas de las necesarias
         </p>
        </li>
        <li class="listitem">
         <p class="simpara">
          La aplicación cliente se detuvo de manera inesperada
         </p>
        </li>
       </ul>
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.ps-prepared-never-executed"><code class="literal">ps_prepared_never_executed</code></dt>
    <dd>
     <p class="simpara">
      El número de declaraciones preparadas preparadas pero nunca ejecutadas.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.ps-prepared-once-executed"><code class="literal">ps_prepared_once_executed</code></dt>
    <dd>
     <p class="simpara">
      El número de declaraciones preparadas ejecutadas una sola vez.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.rows-fetched-from-server-normal"><code class="literal">rows_fetched_from_server_normal</code></dt>
    <dt><code class="literal">rows_fetched_from_server_ps</code></dt>
    <dd>
     <p class="simpara">
      El número total de filas de conjunto de resultados recuperadas del servidor.
      Esto incluye las filas que no han sido leídas por el cliente pero
      han sido recuperadas implícitamente debido a conjuntos de resultados no almacenados en búfer vaciados.
     </p>
     <p class="simpara">
      Ver también <code class="literal">packets_received_rset_row</code>.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.rows-buffered-from-server-normal"><code class="literal">rows_buffered_from_client_normal</code></dt>
    <dd>
     <p class="simpara">
      El número total de filas almacenadas en búfer provenientes de una consulta normal.
     </p>
     <p class="simpara">
      Esto es el número de filas que han sido recuperadas de MySQL y almacenadas en búfer en el cliente.
     </p>
     <p class="para">
      Ejemplos de consultas que almacenarán en búfer los conjuntos de resultados:
      <ul class="simplelist">
       <li><span class="function"><a href="mysqli.query.php" class="function">mysqli_query()</a></span></li>
       <li><span class="function"><a href="mysqli.store-result.php" class="function">mysqli_store_result()</a></span></li>
      </ul>
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.rows-buffered-from-client-ps"><code class="literal">rows_buffered_from_client_ps</code></dt>
    <dd>
     <p class="simpara">
      Equivalente a <code class="literal">rows_buffered_from_client_normal</code>
      pero para las declaraciones preparadas.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.rows-fetched-from-client-normal-buffered"><code class="literal">rows_fetched_from_client_normal_buffered</code></dt>
    <dd>
     <p class="simpara">
      El número total de filas recuperadas por el cliente desde un conjunto de resultados almacenado en búfer
      creado por una consulta normal.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.rows-fetched-from-client-ps-buffered"><code class="literal">rows_fetched_from_client_ps_buffered</code></dt>
    <dd>
     <p class="simpara">
      El número total de filas recuperadas por el cliente desde un conjunto de resultados almacenado en búfer
      creado por una declaración preparada.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.rows-fetched-from-client-normal-unbuffered"><code class="literal">rows_fetched_from_client_normal_unbuffered</code></dt>
    <dd>
     <p class="simpara">
      El número total de filas recuperadas por el cliente desde un conjunto de resultados no almacenado en búfer
      creado por una consulta normal.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.rows-fetched-from-client-ps-unbuffered"><code class="literal">rows_fetched_from_client_ps_unbuffered</code></dt>
    <dd>
     <p class="simpara">
      El número total de filas recuperadas por el cliente desde un conjunto de resultados no almacenado en búfer
      creado por una declaración preparada.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.rows-fetched-from-client-ps-cursor"><code class="literal">rows_fetched_from_client_ps_cursor</code></dt>
    <dd>
     <p class="simpara">
      El número total de filas recuperadas por el cliente desde un cursor creado
      por una declaración preparada.
     </p>
    </dd>
   

   
   
    <dt id="mysqlnd.stats.statistics.rows-skipped-normal"><code class="literal">rows_skipped_normal</code></dt>
    <dt><code class="literal">rows_skipped_ps</code></dt>
    <dd>
     <p class="simpara">
      Reservado para uso futuro (actualmente no soportado).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.copy-on-write"><code class="literal">copy_on_write_saved</code></dt>
    <dt><code class="literal">copy_on_write_performed</code></dt>
    <dd>
     <p class="simpara">
      Esto es una estadística de alcance de proceso.
     </p>
     <p class="simpara">
      Con mysqlnd, las variables devueltas por las extensiones apuntan a mysqlnd
      búferes de resultados internos.
      Si los datos no son modificados, los datos extraídos solo se conservan una vez en memoria.
      Sin embargo, cualquier modificación de los datos requerirá que mysqlnd realice
      una operación de copia-al-escribir.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.free-result"><code class="literal">explicit_free_result</code></dt>
    <dt><code class="literal">implicit_free_result</code></dt>
    <dd>
     <p class="simpara">
      Esto es una estadística de alcance de conexión y de proceso.
     </p>
     <p class="simpara">
      El número total de resultados liberados.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-null"><code class="literal">proto_text_fetched_null</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_NULL</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-null"><code class="literal">proto_binary_fetched_null</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_NULL</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-bit"><code class="literal">proto_text_fetched_bit</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_BIT</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-bit"><code class="literal">proto_binary_fetched_bit</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_BIT</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-tinyint"><code class="literal">proto_text_fetched_tinyint</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_TINY</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-tinyint"><code class="literal">proto_binary_fetched_tinyint</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_TINY</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-short"><code class="literal">proto_text_fetched_short</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_SHORT</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-short"><code class="literal">proto_binary_fetched_short</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_SHORT</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-int24"><code class="literal">proto_text_fetched_int24</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_INT24</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-int24"><code class="literal">proto_binary_fetched_int24</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_INT24</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-int"><code class="literal">proto_text_fetched_int</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_LONG</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-int"><code class="literal">proto_binary_fetched_int</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_LONG</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-bigint"><code class="literal">proto_text_fetched_bigint</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_LONGLONG</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-bigint"><code class="literal">proto_binary_fetched_bigint</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_LONGLONG</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-decimal"><code class="literal">proto_text_fetched_decimal</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_DECIMAL</code>, o <code class="literal">MYSQL_TYPE_NEWDECIMAL</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-decimal"><code class="literal">proto_binary_fetched_decimal</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_DECIMAL</code>, o <code class="literal">MYSQL_TYPE_NEWDECIMAL</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-float"><code class="literal">proto_text_fetched_float</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_FLOAT</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-float"><code class="literal">proto_binary_fetched_float</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_FLOAT</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-double"><code class="literal">proto_text_fetched_double</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_DOUBLE</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-double"><code class="literal">proto_binary_fetched_double</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_DOUBLE</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-date"><code class="literal">proto_text_fetched_date</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_DATE</code>, o <code class="literal">MYSQL_TYPE_NEWDATE</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-date"><code class="literal">proto_binary_fetched_date</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_DATE</code>, o <code class="literal">MYSQL_TYPE_NEWDATE</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-year"><code class="literal">proto_text_fetched_year</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_YEAR</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-year"><code class="literal">proto_binary_fetched_year</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_YEAR</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-time"><code class="literal">proto_text_fetched_time</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_TIME</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-time"><code class="literal">proto_binary_fetched_time</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_TIME</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-datetime"><code class="literal">proto_text_fetched_datetime</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_DATETIME</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-datetime"><code class="literal">proto_binary_fetched_datetime</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_DATETIME</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-timestamp"><code class="literal">proto_text_fetched_timestamp</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_TIMESTAMP</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-timestamp"><code class="literal">proto_binary_fetched_timestamp</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_TIMESTAMP</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-string"><code class="literal">proto_text_fetched_string</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_STRING</code>, <code class="literal">MYSQL_TYPE_VARSTRING</code> o <code class="literal">MYSQL_TYPE_VARCHAR</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-string"><code class="literal">proto_binary_fetched_string</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_STRING</code>, <code class="literal">MYSQL_TYPE_VARSTRING</code> o <code class="literal">MYSQL_TYPE_VARCHAR</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-blob"><code class="literal">proto_text_fetched_blob</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_TINY_BLOB</code>,
      <code class="literal">MYSQL_TYPE_MEDIUM_BLOB</code>,
      <code class="literal">MYSQL_TYPE_LONG_BLOB</code>,
      o <code class="literal">MYSQL_TYPE_BLOB</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-blob"><code class="literal">proto_binary_fetched_blob</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_TINY_BLOB</code>,
      <code class="literal">MYSQL_TYPE_MEDIUM_BLOB</code>,
      <code class="literal">MYSQL_TYPE_LONG_BLOB</code>,
      o <code class="literal">MYSQL_TYPE_BLOB</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-enum"><code class="literal">proto_text_fetched_enum</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_ENUM</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-enum"><code class="literal">proto_binary_fetched_enum</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_ENUM</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-set"><code class="literal">proto_text_fetched_set</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_SET</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-set"><code class="literal">proto_binary_fetched_set</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_SET</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-geometry"><code class="literal">proto_text_fetched_geometry</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_GEOMETRY</code>
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-geometry"><code class="literal">proto_binary_fetched_geometry</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_GEOMETRY</code>
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-text-fetched-other"><code class="literal">proto_text_fetched_other</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipos
      <code class="literal">MYSQL_TYPE_<span class="replaceable">*</span></code>
      no listados anteriormente
      recuperadas desde una consulta normal (protocolo de texto MySQL).
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       En teoría, esto debería ser siempre <code class="literal">0</code>.
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.proto-binary-fetched-other"><code class="literal">proto_binary_fetched_other</code></dt>
    <dd>
     <p class="simpara">
      El número total de columnas de tipo
      <code class="literal">MYSQL_TYPE_<span class="replaceable">*</span></code>
      no listados anteriormente
      recuperadas desde una declaración preparada (protocolo binario MySQL).
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       En teoría, esto debería ser siempre <code class="literal">0</code>.
      </p>
     </p></blockquote>
    </dd>
   

  </dl>

  <dl>
   <strong class="title">Estadísticas relacionadas con la conexión</strong>

   
    <dt id="mysqlnd.stats.statistics.connect-success"><code class="literal">connect_success</code></dt>
    <dd>
     <p class="simpara">
      El número total de intentos de conexión exitosos.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       <code class="literal">connect_success</code> contiene la suma de los intentos de conexión
       persistentes y no persistentes exitosos.
       Por lo tanto, el número de intentos de conexión no persistentes exitosos
       es <code class="literal">connect_success - pconnect_success</code>.
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.pconnect-success"><code class="literal">pconnect_success</code></dt>
    <dd>
     <p class="simpara">
      El número total de intentos de conexión persistentes exitosos.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.connect-failure"><code class="literal">connect_failure</code></dt>
    <dd>
     <p class="simpara">
      El número total de intentos de conexión fallidos.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.reconnect"><code class="literal">reconnect</code></dt>
    <dd>
     <p class="simpara">
      Esto es una estadística de alcance de proceso.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.active-connections"><code class="literal">active_connections</code></dt>
    <dd>
     <p class="simpara">
      Esto es una estadística de alcance de proceso.
     </p>
     <p class="simpara">
      El número total de conexiones persistentes y no persistentes activas.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       El número total de conexiones no persistentes activas es
       <code class="literal">active_connections - active_persistent_connections</code>.
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.active-persistent-connections"><code class="literal">active_persistent_connections</code></dt>
    <dd>
     <p class="simpara">
      Esto es una estadística de alcance de proceso.
     </p>
     <p class="simpara">
      El número total de conexiones persistentes activas.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.explicit-close"><code class="literal">explicit_close</code></dt>
    <dd>
     <p class="simpara">
      El número total de conexiones cerradas explícitamente.
     </p>
     <div class="example" id="example-1">
      <p><strong>Ejemplo #1 Ejemplos de fragmentos de código que provocan un cierre explícito</strong></p>
      <ul class="itemizedlist">
       <li class="listitem">
        <div class="example-contents">
<div class="cdata"><pre>
$link = new mysqli(/* ... */);
$link-&gt;close(/* ... */);
</pre></div>
        </div>

       </li>
       <li class="listitem">
        <div class="example-contents">
<div class="cdata"><pre>
$link = new mysqli(/* ... */);
$link-&gt;connect(/* ... */);
</pre></div>
        </div>

       </li>
      </ul>
     </div>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.implicit-close"><code class="literal">implicit_close</code></dt>
    <dd>
     <p class="simpara">
      El número total de conexiones cerradas implícitamente.
     </p>
     <div class="example" id="example-2">
      <p><strong>Ejemplo #2 Ejemplos de fragmentos de código que provocan un cierre implícito</strong></p>
      <ul class="itemizedlist">
       <li class="listitem">
        <div class="example-contents">
<div class="cdata"><pre>
$link = new mysqli(/* ... */);
$link-&gt;real_connect(/* ... */);
</pre></div>
        </div>

       </li>
       <li class="listitem">
        <div class="example-contents">
         <code class="code">unset($link)</code>
        </div>

       </li>
       <li class="listitem">
        <p class="simpara">
         Conexión persistente: una conexión agrupada ha sido creada con
         real_connect y puede haber opciones desconocidas definidas - cerrar
         implícitamente para evitar devolver una conexión con opciones desconocidas
        </p>
       </li>
       <li class="listitem">
        <p class="simpara">
         Conexión persistente: ping/change_user falla y ext/mysqli
         cierra la conexión
        </p>
       </li>
       <li class="listitem">
        <p class="simpara">
         Fin de la ejecución del script: cerrar conexiones que no han sido
         cerradas por el usuario
        </p>
       </li>
      </ul>
     </div>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.disconnect-close"><code class="literal">disconnect_close</code></dt>
    <dd>
     <p class="simpara">
      Fallos de conexión indicados por la llamada de API C
      <code class="literal">mysql_real_connect</code> durante un intento de
      establecer una conexión.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.in-middle-of-command-close"><code class="literal">in_middle_of_command_close</code></dt>
    <dd>
     <p class="simpara">
      Esto es una estadística de alcance de proceso.
     </p>
     <p class="simpara">
      Una conexión ha sido cerrada en medio de la ejecución de un comando
      (conjuntos de resultados no recuperados, después de enviar una consulta y
      antes de recuperar una respuesta, durante la recuperación de datos, durante
      la transferencia de datos con LOAD DATA).
     </p>
     <div class="warning"><strong class="warning">Advertencia</strong>
      <p class="simpara">
       A menos que se usen consultas asíncronas, esto solo debería ocurrir
       si la aplicación PHP terminó inesperadamente y PHP cierra automáticamente la conexión.
      </p>
     </div>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.init-command-executed-count"><code class="literal">init_command_executed_count</code></dt>
    <dd>
     <p class="simpara">
      El número total de ejecuciones de comandos de inicialización.
      Por ejemplo: <code class="code">mysqli_options(MYSQLI_INIT_COMMAND , $value)</code>.
     </p>
     <p class="simpara">
      El número de ejecuciones exitosas es
      <code class="literal">init_command_executed_count - init_command_failed_count</code>.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.init-command-failed-count"><code class="literal">init_command_failed_count</code></dt>
    <dd>
     <p class="simpara">
      El número total de fallos en la ejecución de comandos de inicialización.
     </p>
    </dd>
   
  </dl>

  <dl>
   <strong class="title">Estadísticas relacionadas con los comandos <code class="literal">COM_*</code></strong>

   
    <dt id="mysqlnd.stats.statistics.com"><code class="literal">com_quit</code></dt>
    <dt><code class="literal">com_init_db</code></dt>
    <dt><code class="literal">com_query</code></dt>
    <dt><code class="literal">com_field_list</code></dt>
    <dt><code class="literal">com_create_db</code></dt>
    <dt><code class="literal">com_drop_db</code></dt>
    <dt><code class="literal">com_refresh</code></dt>
    <dt><code class="literal">com_shutdown</code></dt>
    <dt><code class="literal">com_statistics</code></dt>
    <dt><code class="literal">com_process_info</code></dt>
    <dt><code class="literal">com_connect</code></dt>
    <dt><code class="literal">com_process_kill</code></dt>
    <dt><code class="literal">com_debug</code></dt>
    <dt><code class="literal">com_ping</code></dt>
    <dt><code class="literal">com_time</code></dt>
    <dt><code class="literal">com_delayed_insert</code></dt>
    <dt><code class="literal">com_change_user</code></dt>
    <dt><code class="literal">com_binlog_dump</code></dt>
    <dt><code class="literal">com_table_dump</code></dt>
    <dt><code class="literal">com_connect_out</code></dt>
    <dt><code class="literal">com_register_slave</code></dt>
    <dt><code class="literal">com_stmt_prepare</code></dt>
    <dt><code class="literal">com_stmt_execute</code></dt>
    <dt><code class="literal">com_stmt_send_long_data</code></dt>
    <dt><code class="literal">com_stmt_close</code></dt>
    <dt><code class="literal">com_stmt_reset</code></dt>
    <dt><code class="literal">com_stmt_set_option</code></dt>
    <dt><code class="literal">com_stmt_fetch</code></dt>
    <dt><code class="literal">com_daemon</code></dt>
    <dd>
     <p class="simpara">
      El número total de intentos de enviar un cierto comando
      <code class="literal">COM_*</code> de PHP a MySQL.
     </p>
     <p class="simpara">
      La estadística es incrementada después de verificar la línea y justo
      antes de enviar el paquete de protocolo cliente-servidor MySQL correspondiente.
     </p>
     <div class="caution"><strong class="caution">Precaución</strong>
      <p class="simpara">
       Si MySQLnd falla al enviar el paquete en la red, las estadísticas no serán decrementadas.
       En caso de fallo, MySQLnd emite un aviso PHP
       <q class="quote">Error while sending %s packet. PID=%d.</q>
      </p>
     </div>

     <div class="example" id="example-3">
      <p><strong>Ejemplo #3 Ejemplos de uso</strong></p>
      <ul class="itemizedlist">
       <li class="listitem">
        <p class="simpara">
         Verificar si PHP envía ciertos comandos a MySQL, por ejemplo,
         verificar si un cliente envía <code class="literal">COM_PROCESS_KILL</code>
        </p>
       </li>
       <li class="listitem">
        <p class="simpara">
         Calcular el número promedio de ejecuciones de comandos preparados
         comparando <code class="literal">COM_EXECUTE</code> con
         <code class="literal">COM_PREPARE</code>
        </p>
       </li>
       <li class="listitem">
        <p class="simpara">
         Verificar si PHP ha ejecutado declaraciones SQL no preparadas
         verificando si <code class="literal">COM_QUERY</code> es cero
        </p>
       </li>
       <li class="listitem">
        <p class="simpara">
         Identificar los scripts PHP que ejecutan un número excesivo de declaraciones SQL
         verificando <code class="literal">COM_QUERY</code> y
         <code class="literal">COM_EXECUTE</code>
        </p>
       </li>
      </ul>
     </div>
    </dd>
   
  </dl>

  <dl>
   <strong class="title">Estadísticas diversas</strong>

   
    <dt id="mysqlnd.stats.statistics.stmt-close"><code class="literal">explicit_stmt_close</code></dt>
    <dt><code class="literal">implicit_stmt_close</code></dt>
    <dd>
     <p class="simpara">
      Esto es una estadística de alcance de proceso.
     </p>
     <p class="simpara">
      El número total de declaraciones preparadas cerradas explícitamente.
     </p>
     <blockquote class="note"><p><strong class="note">Nota</strong>: 
      <p class="simpara">
       Una declaración preparada siempre es cerrada explícitamente. La única vez que es cerrada implícitamente es cuando su preparación falla.
      </p>
     </p></blockquote>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.memory-management"><code class="literal">mem_emalloc_count</code></dt>
    <dt><code class="literal">mem_emalloc_ammount</code></dt>
    <dt><code class="literal">mem_ecalloc_count</code></dt>
    <dt><code class="literal">mem_ecalloc_ammount</code></dt>
    <dt><code class="literal">mem_realloc_count</code></dt>
    <dt><code class="literal">mem_realloc_ammount</code></dt>
    <dt><code class="literal">mem_efree_count</code></dt>
    <dt><code class="literal">mem_malloc_count</code></dt>
    <dt><code class="literal">mem_malloc_ammount</code></dt>
    <dt><code class="literal">mem_calloc_count</code></dt>
    <dt><code class="literal">mem_calloc_ammount</code></dt>
    <dt><code class="literal">mem_ealloc_count</code></dt>
    <dt><code class="literal">mem_ealloc_ammount</code></dt>
    <dt><code class="literal">mem_free_count</code></dt>
    <dd>
     <p class="simpara">
      Esto es una estadística de alcance de proceso.
     </p>
     <p class="simpara">
      Llamadas a la gestión de memoria.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.command-buffer-too-small"><code class="literal">command_buffer_too_small</code></dt>
    
    <dd>
     <p class="simpara">
      El número de extensiones de búfer de comando de red al enviar comandos de
      PHP a MySQL.
     </p>
     <p class="simpara">
      MySQLnd asigna un búfer de comando/red interno de
      <a href="mysqlnd.config.php#ini.mysqlnd.net-cmd-buffer-size" class="link">mysqlnd.net_cmd_buffer_size</a>
      bytes para cada conexión.
     </p>
     <p class="simpara">
      Si un protocolo de comando de servidor MySQL, por ejemplo
      <code class="literal">COM_QUERY</code> (consulta normal),
      no cabe en el búfer,
      MyQSLnd extenderá el búfer a lo que sea necesario para enviar el comando.
      Cada vez que el búfer es extendido para una conexión
      <code class="literal">command_buffer_too_small</code> será incrementado en uno.
     </p>
     <p class="simpara">
      Si mysql es obligado a hacer crecer el búfer más allá de su tamaño inicial de
      <a href="mysqlnd.config.php#ini.mysqlnd.net-cmd-buffer-size" class="link">mysqlnd.net_cmd_buffer_size</a>
      bytes para casi cada conexión,
      se deberían considerar aumentar el tamaño por defecto para evitar
      las reasignaciones.
     </p>
    </dd>
   

   
    <dt id="mysqlnd.stats.statistics.connection-reused"><code class="literal">connection_reused</code></dt>
    <dd>
     <p class="simpara">
      El número total de veces que una conexión persistente ha sido reutilizada.
     </p>
    </dd>
   
  </dl>
 </div>
</div>
<?php manual_footer($setup); ?>