PHP가 Oracle 데이터베이스에 연결할 때 쿼리되는 데이터의 양이 상대적으로 크거나 쿼리 시간이 상대적으로 길면 연결 시간이 초과될 가능성이 높습니다. 이러한 상황이 발생하지 않도록 하려면 PHP가 Oracle 데이터베이스에 연결하는 데 시간 초과 기간을 설정해야 합니다.
PHP가 Oracle 데이터베이스에 연결하는 시간 제한을 설정하는 방법은 다음과 같습니다.
Oracle 데이터베이스는 이 기간 동안 작업이 수행되지 않으면 기본 세션 시간 제한이 15분입니다. , Oracle은 자동으로 연결을 끊습니다. 세션 시간 초과를 더 짧게 설정해야 하는 경우 다음 SQL 문을 사용할 수 있습니다.
ALTER PROFILE default LIMIT idle_time 10;
위 명령은 세션 시간 초과를 10분으로 설정합니다. 이 명령은 한 번만 실행하면 되며, 이후 모든 연결은 이 세션 시간 초과를 사용합니다.
PHP 구성 파일 php.ini를 찾고 다음 구성 항목을 찾아 PHP가 Oracle 데이터베이스에 연결하는 시간 초과를 설정하세요.
; Default timeout for socket based streams (seconds) default_socket_timeout = 600
위 명령 세트 연결 시간 초과를 600초(10분)로 설정합니다. 연결 시간 제한을 더 짧게 설정해야 하는 경우 해당 값으로 변경할 수 있습니다. 이 설정은 PHP를 사용하여 Oracle 데이터베이스에 연결하는 모든 스크립트에 영향을 미칩니다.
PDO를 사용하여 Oracle 데이터베이스에 연결하는 경우 다음 코드를 통해 연결 시간 초과를 설정할 수 있습니다.
$pdo = new PDO('oci:dbname=//localhost:1521/orcl', $username, $password, array( PDO::ATTR_TIMEOUT => 10));
위 명령은 연결 시간 초과를 10초로 설정합니다. 시간 초과가 필요하지 않은 경우 이 옵션을 0으로 설정할 수 있습니다.
요약
PHP가 Oracle 데이터베이스에 연결하기 위한 시간 초과 기간을 설정하는 것은 매우 실용적인 기술로, 대량의 데이터를 쿼리하거나 쿼리 시간이 길 때 연결 시간 초과를 방지할 수 있습니다. 위의 세 가지 방법을 통해 필요에 맞게 연결 시간 초과를 쉽게 설정할 수 있습니다.
위 내용은 Oracle 데이터베이스에 연결하기 위해 PHP의 시간 초과를 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!