mysqlnd _ms _get _last _used _connection
(PECL mysqlnd_ms >= 1.1.0)
mysqlnd_ms_get_last_used_connection — Retourne un tableau qui récrit la dernière connexion utilisée
Description
Retourne un tableau qui décrit la dernière connexion utilisée depuis la file d'attente de connexions actuellement pointée par le gestionnaire de connexion utilisateur. Si vous utilisez le plugin, un gestionnaire de connexion utilisateur représente une file d'attente de connexions à la base de données. Il n'est pas possible de dire depuis la connexion utilisateur qui gère les propriétés quel serveur de base de données depuis la file d'attente le gestionnaire de connexions utilisateur pointe.
La fonction peut être utilisée pour déboguer ou monitorer PECL mysqlnd_ms.
Liste de paramètres
Valeurs de retour
FALSE
en cas d'erreur. Sinon, un tableau décrivant la connexion utilisée
pour exécuter la dernière requête.
Tableau décrivant la connexion.
Propriété | Description | Version |
---|---|---|
scheme | Shéma de connexion. Soit tcp://host:port ou unix://host:socket. Si vous voulez distinguer les connexions les unes des autres, utilisez une combinaison de scheme et de thread_id comme clé unique. Ni scheme, ni thread_id seul ne sont suffisants pour distinguer deux connexions. Deux serveurs peuvent assigner le même thread_id à deux connexions différentes. Aussi, les connexions dans la file d'attente peuvent avoir le même thread_id. Deplus, ne pariez pas sur l'unicité de scheme dans une file d'attente. Votre ingénieur QA peut utiliser la même instance de serveur MySQL pour deux rôles logiques distinctes, et l'ajouter plusieurs fois dans la file d'attente. Ce hack est utilisé, par exemple, dans la suite de test. | Depuis 1.1.0. |
host | Hôte du serveur de base de données utilisé avec la connexion. L'hôte est uniquement défini avec des connexions TCP/IP. Il sera vide avec un domaine Unix ou Windows, nommé avec des connexions pipes. | Depuis 1.1.0. |
host_info | Une chaîne de caractères représentant le nom d'hôte du serveur et le type de connexion. | Depuis 1.1.2. |
port | Le port du serveur de base de données utilisé avec la connexion. | Depuis 1.1.0. |
socket_or_pipe | Socket de domaine Unix ou Windows nommé pipe, utilisé avec la connexion. La valeur est vide pour les connexions TCP/IP. | Depuis 1.1.2. |
thread_id | Identifiant du thread de connexion. | Depuis 1.1.0. |
last_message | Message d'information obtenu depuis la fonction mysql_info() MySQL C API. Reportez-vous à la fonction mysqli_info() pour une description détaillée. | Depuis 1.1.0. |
errno | Le code erreur. | Depuis 1.1.0. |
error | Le message d'erreur. | Depuis 1.1.0. |
sqlstate | Le code erreur SQLstate. | Depuis 1.1.0. |
Notes
Note:
mysqlnd_ms_get_last_used_connection() requière PHP >= 5.4.0 et PECL mysqlnd_ms >> 1.1.0. En interne, cette fonction utilise un appel à la bibliothèque C mysqlnd qui n'est pas disponible avec PHP 5.3.
Exemples
Cet exemple suppose que myapp se réfère une section du fichier de configuration du plugin et représente une file d'attente de connexions.
Exemple #1 Exemple avec mysqlnd_ms_get_last_used_connection()
<?php
$link = new mysqli("myapp", "user", "password", "database");
$res = $link->query("SELECT 1 FROM DUAL");
var_dump(mysqlnd_ms_get_last_used_connection($link));
?>
L'exemple ci-dessus va afficher :
array(10) { ["scheme"]=> string(22) "unix:///tmp/mysql.sock" ["host_info"]=> string(25) "Localhost via UNIX socket" ["host"]=> string(0) "" ["port"]=> int(3306) ["socket_or_pipe"]=> string(15) "/tmp/mysql.sock" ["thread_id"]=> int(46253) ["last_message"]=> string(0) "" ["errno"]=> int(0) ["error"]=> string(0) "" ["sqlstate"]=> string(5) "00000" }
Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-function.mysqlnd-ms-get-last-used-connection.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.