Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menetapkan tempoh tamat masa untuk PHP menyambung ke pangkalan data Oracle

Bagaimana untuk menetapkan tempoh tamat masa untuk PHP menyambung ke pangkalan data Oracle

PHPz
PHPzasal
2023-03-31 11:01:231157semak imbas

Apabila PHP bersambung ke pangkalan data Oracle, jika jumlah data yang ditanya agak besar, atau masa pertanyaan agak lama, ia berkemungkinan besar menyebabkan sambungan tamat masa. Untuk mengelakkan situasi ini daripada berlaku, kita perlu menetapkan tempoh tamat masa untuk PHP menyambung ke pangkalan data Oracle.

Begini cara untuk menetapkan tamat masa untuk PHP menyambung ke pangkalan data Oracle:

  1. Tetapkan tamat masa sesi untuk pangkalan data Oracle

Pangkalan data Oracle mempunyai lalai Masa tamat sesi ialah 15 minit, dan Oracle terputus secara automatik jika tiada operasi dilakukan dalam tempoh ini. Jika anda perlu menetapkan tamat masa sesi yang lebih pendek, anda boleh menggunakan pernyataan SQL berikut:

ALTER PROFILE default LIMIT idle_time 10;

Arahan di atas menetapkan tamat masa sesi kepada 10 minit. Perintah ini hanya perlu dilaksanakan sekali, dan kemudian semua sambungan akan menggunakan tamat masa sesi ini.

  1. Tetapkan tamat masa sambungan melalui fail PHP.ini

Cari fail konfigurasi PHP php.ini dan cari item konfigurasi berikut untuk menetapkan tamat masa untuk PHP bersambung ke pangkalan data Oracle :

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

Arahan di atas menetapkan tamat masa sambungan kepada 600 saat (10 minit). Jika anda perlu menetapkan tamat masa sambungan yang lebih pendek, anda boleh menukarnya kepada nilai yang sepadan. Sila ambil perhatian bahawa tetapan ini mempengaruhi semua skrip yang menggunakan PHP untuk menyambung ke pangkalan data Oracle.

  1. Tetapkan tamat masa sambungan melalui PDO

Jika anda menggunakan PDO untuk menyambung ke pangkalan data Oracle, anda boleh menetapkan tamat masa sambungan melalui kod berikut:

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

Arahan di atas menetapkan tamat masa sambungan kepada 10 saat. Jika tiada tamat masa diperlukan, pilihan ini boleh ditetapkan kepada 0.

Ringkasan

Menetapkan tempoh tamat masa untuk PHP menyambung ke pangkalan data Oracle ialah teknik yang sangat praktikal, yang boleh mengelakkan tamat masa sambungan apabila menanyakan sejumlah besar data atau apabila masa pertanyaan panjang . Melalui tiga kaedah di atas, anda boleh menetapkan tamat masa sambungan dengan mudah untuk memenuhi keperluan anda.

Atas ialah kandungan terperinci Bagaimana untuk menetapkan tempoh tamat masa untuk PHP menyambung ke pangkalan data Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn