Das Verhalten dieser Funktionen wird durch Einstellungen in der php.ini beeinflusst.
Name | Standard | Einstellbar in | Änderungen |
---|---|---|---|
oci8.connection_class | "" | PHP_INI_ALL | verfügbar seit PHP 5.3 (PECL OCI8 1.3). |
oci8.privileged_connect | "0" | PHP_INI_SYSTEM | verfügbar seit PHP 5.1.2. |
oci8.max_persistent | "-1" | PHP_INI_SYSTEM | verfügbar seit PHP 5.1.2. |
oci8.persistent_timeout | "-1" | PHP_INI_SYSTEM | verfügbar seit PHP 5.1.2. |
oci8.ping_interval | "60" | PHP_INI_SYSTEM | verfügbar seit PHP 5.1.2. |
oci8.statement_cache_size | "20" | PHP_INI_SYSTEM | verfügbar seit PHP 5.1.2. |
oci8.default_prefetch | "10" | PHP_INI_SYSTEM | verfügbar seit PHP 5.1.2. |
oci8.old_oci_close_semantics | "0" | PHP_INI_SYSTEM | verfügbar seit PHP 5.1.2. |
Hier eine kurze Erklärung der Konfigurationsoptionen:
This user defined text is used by Oracle 11g Database Resident Connection Pooling (DRCP) connections to sub-partition the connection pool. It allows OCI8 persistent connections from an application to reuse database sessions from a previous PHP script, giving better scalability. When an application uses a database pooled process previously used with a different connection class, the session settings such as the default Oracle date format are reset. This prevents accidental sharing of information between different applications.
The value can be set at runtime with ini_set() prior to connecting.
To use DRCP, OCI8 must be linked with Oracle 11g libraries and the database must be Oracle 11g. The connection pool must be enabled in the database, the oci8.connection_class should be set to the same string for all web servers running the same application, and the OCI8 connection string must specify to use a pooled server.
Diese Option aktiviert privilegierte Verbindungen unter Verwendung externer Credentials (OCI_SYSOPER, OCI_SYSDBA).
Die maximale Anzahl persistenter OCI8-Verbindungen pro Prozess. Wenn diese Option auf -1 gesetzt ist, ist die Anzahl der Verbindungen nicht limitiert.
Die maximale Dauer (in Sekunden), über die der angegebene Prozess eine ungenutzte persistente Verbindung aufrechterhalten darf. Ist diese Option auf -1 gesetzt, werden ungenutzte persistente Verbindungen unbegrenzt lange aufrechterhalten.
Die Dauer (in Sekunden), die vergehen muss, bevor ein Ping während eines oci_pconnect() abgeschickt wird. Wenn dieser auf 0 gesetzt ist, werden persistente Verbindungen bei jeder erneuten Verwendung gepingt. Um Pings völlig zu deaktivieren, muss die Option auf -1 gesetzt werden.
Hinweis: Das Deaktivieren von Pings lässt oci_pconnect() mit höchster Effizienz arbeiten, kann aber dazu führen, dass PHP fehlerhafte Verbindungen nicht bemerkt, wie sie entstehen können, wenn das Netzwerk unterbrochen wird oder der Oracle-Server bei bestehender Verbindung heruntergefahren wird. Konsultieren Sie die Dokumentation zu oci_pconnect(), um weitere Informationen zu erhalten.
Diese Option aktiviert den Statement-Cache und definiert, wie viele Statements gecacht werden. Um das Caching zu deaktivieren, muss die Option auf 0 gesetzt werden.
Hinweis: Ein größerer Cache kann die Performance erhöhen, kostet aber mehr Speicher.
Diese Option aktiviert das Statement-Prefetching und legt die Anzahl Zeilen fest, die standardmäßig automatisch nach der Ausführung des Statements geholt werden.
Hinweis: Ein großer Prefetch kann die Leistung erhöhen, kostet aber mehr Speicher.
Die Option kontrolliert das Verhalten der Funktion oci_close(). Wenn Sie sie aktivieren, zeigt der Aufruf von oci_close() keine Reaktion; die Verbindung wird nicht vor dem Ende des Skripts beendet. Die Funktion existiert nur aus Gründen der Abwärtskompatibilität. Wenn Sie in die Situation kommen, in der Sie diese Option aktivieren müssen, sei Ihnen dringend empfohlen, stattdessen alle oci_close()-Aufrufe aus Ihrer Anwendung zu entfernen.