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 :
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.
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.
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!