Maison  >  Article  >  développement back-end  >  Comment définir le délai d'attente pour que PHP se connecte à la base de données Oracle

Comment définir le délai d'attente pour que PHP se connecte à la base de données Oracle

PHPz
PHPzoriginal
2023-03-31 11:01:231130parcourir

Lorsque PHP se connecte à la base de données Oracle, si la quantité de données interrogées est relativement importante ou si le temps de requête est relativement long, il est très probable que la connexion expire. Afin d'éviter que cette situation ne se produise, nous devons définir le délai d'attente pour que PHP se connecte à la base de données Oracle.

Voici comment définir le délai d'expiration de PHP pour se connecter à la base de données Oracle :

  1. Définissez le délai d'expiration de session pour la base de données Oracle

La base de données Oracle a un délai d'expiration de session par défaut de 15 minutes si aucune opération n'est effectuée pendant cette période. , Oracle se déconnectera automatiquement. Si vous devez définir un délai d'expiration de session plus court, vous pouvez utiliser l'instruction SQL suivante :

ALTER PROFILE default LIMIT idle_time 10;

La commande ci-dessus définit le délai d'expiration de la session à 10 minutes. Cette commande ne doit être exécutée qu'une seule fois, puis toutes les connexions utiliseront ce délai d'expiration de session.

  1. Définissez le délai d'expiration de la connexion via le fichier PHP.ini

Trouvez le fichier de configuration PHP php.ini et recherchez les éléments de configuration suivants pour définir le délai d'expiration de PHP pour se connecter à la base de données Oracle :

; Default timeout for socket based streams (seconds)
default_socket_timeout = 600

Les ensembles de commandes ci-dessus le délai d'expiration de la connexion à 600 secondes (10 minutes). Si vous devez définir un délai d'expiration de connexion plus court, vous pouvez le modifier avec la valeur correspondante. Veuillez noter que ce paramètre affecte tous les scripts qui utilisent PHP pour se connecter aux bases de données Oracle.

  1. Définissez le délai d'expiration de la connexion via PDO

Si vous utilisez PDO pour vous connecter à la base de données Oracle, vous pouvez définir le délai d'expiration de la connexion via le code suivant :

$pdo = new PDO('oci:dbname=//localhost:1521/orcl', $username, $password, array(
    PDO::ATTR_TIMEOUT => 10));

La commande ci-dessus définit le délai d'expiration de la connexion à 10 secondes. Si aucun délai d'attente n'est requis, cette option peut être définie sur 0.

Résumé

Définir le délai d'expiration de la connexion PHP à la base de données Oracle est une technique très pratique, qui peut éviter l'expiration du délai de connexion lors de l'interrogation d'une grande quantité de données ou lorsque la requête prend beaucoup de temps. Grâce aux trois méthodes ci-dessus, vous pouvez facilement définir le délai d'expiration de la connexion pour répondre à vos besoins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn