Heim  >  Artikel  >  Backend-Entwicklung  >  So legen Sie den Timeout-Zeitraum für PHP fest, um eine Verbindung zur Oracle-Datenbank herzustellen

So legen Sie den Timeout-Zeitraum für PHP fest, um eine Verbindung zur Oracle-Datenbank herzustellen

PHPz
PHPzOriginal
2023-03-31 11:01:231125Durchsuche

Wenn PHP eine Verbindung zur Oracle-Datenbank herstellt und die abgefragte Datenmenge relativ groß ist oder die Abfragezeit relativ lang ist, kann es sehr wahrscheinlich zu einer Zeitüberschreitung der Verbindung kommen. Um diese Situation zu vermeiden, müssen wir den Timeout-Zeitraum für PHP festlegen, um eine Verbindung zur Oracle-Datenbank herzustellen.

So legen Sie das Zeitlimit für die Verbindung von PHP mit der Oracle-Datenbank fest:

  1. Legen Sie das Sitzungszeitlimit für die Oracle-Datenbank fest.

Oracle-Datenbank hat ein Standard-Sitzungszeitlimit von 15 Minuten, wenn in diesem Zeitraum keine Vorgänge ausgeführt werden , Oracle wird die Verbindung automatisch trennen. Wenn Sie ein kürzeres Sitzungszeitlimit festlegen müssen, können Sie die folgende SQL-Anweisung verwenden:

ALTER PROFILE default LIMIT idle_time 10;

Der obige Befehl setzt das Sitzungszeitlimit auf 10 Minuten. Dieser Befehl muss nur einmal ausgeführt werden, dann nutzen alle Verbindungen dieses Sitzungszeitlimit.

  1. Legen Sie das Verbindungszeitlimit über die PHP.ini-Datei fest

Suchen Sie die PHP-Konfigurationsdatei php.ini und suchen Sie nach den folgenden Konfigurationselementen, um das Zeitlimit für PHP für die Verbindung mit der Oracle-Datenbank festzulegen:

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

Die oben genannten Befehlssätze das Verbindungs-Timeout auf 600 Sekunden (10 Minuten). Wenn Sie ein kürzeres Verbindungszeitlimit festlegen müssen, können Sie es auf den entsprechenden Wert ändern. Bitte beachten Sie, dass diese Einstellung alle Skripte betrifft, die PHP zur Verbindung mit Oracle-Datenbanken verwenden.

  1. Legen Sie das Verbindungszeitlimit über PDO fest.

Wenn Sie PDO verwenden, um eine Verbindung zur Oracle-Datenbank herzustellen, können Sie das Verbindungszeitlimit über den folgenden Code festlegen:

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

Der obige Befehl setzt das Verbindungszeitlimit auf 10 Sekunden. Wenn kein Timeout erforderlich ist, kann diese Option auf 0 gesetzt werden.

Zusammenfassung

Das Festlegen des Timeout-Zeitraums für PHP zum Herstellen einer Verbindung zur Oracle-Datenbank ist eine sehr praktische Technik, mit der Verbindungstimeouts vermieden werden können, wenn große Datenmengen abgefragt werden oder die Abfragezeit lang ist. Mit den oben genannten drei Methoden können Sie das Verbindungszeitlimit ganz einfach an Ihre Anforderungen anpassen.

Das obige ist der detaillierte Inhalt vonSo legen Sie den Timeout-Zeitraum für PHP fest, um eine Verbindung zur Oracle-Datenbank herzustellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn