>  기사  >  백엔드 개발  >  PHP는 MySQL에 액세스할 때 쿼리 시간 초과를 어떻게 구현합니까?

PHP는 MySQL에 액세스할 때 쿼리 시간 초과를 어떻게 구현합니까?

coldplay.xixi
coldplay.xixi원래의
2020-08-27 09:16:232801검색

PHP는 MySQL에 액세스하기 위한 쿼리 시간 초과 방법을 구현합니다. 1. mysqli의 쿼리 코드와 같은 클라이언트를 수정하고, 타이머를 추가하고, 시간 초과가 발생하면 반환합니다. 2. mysql의 최하위 계층이기 때문에 Mysql에서 vio 코드를 수정합니다. 네트워크 처리는 vio 작업을 통해 이루어집니다.

PHP는 MySQL에 액세스할 때 쿼리 시간 초과를 어떻게 구현합니까?

관련 학습 권장 사항: mysql tutorial

MySQL 액세스를 위한 쿼리 시간 초과 방법의 PHP 구현:

libmysql에서는 MYSQL_OPT_READ_TIMEOUT설정 항목이 제공되며, libmysql에서는 관련 설정을 위한 API, mysql_options:

현재 mysqli만

<?php
$mysqli = mysqli_init();
$mysqli->options(11 /*MYSQL_OPT_READ_TIMEOUT*/, 1);
$mysql->real_connect(***);

를 지원합니다. 그러나 libmysql에는 재시도 메커니즘(한 번 시도, 두 번 재시도)이 있으므로 결국 우리가 설정한 시간 초과 임계값은 3배가 됩니다. 즉, MYSQL_OPT_READ_TIMEOUT을 1로 설정하면 결국 3초 후에 타임아웃됩니다. 즉, 현재 설정할 수 있는 가장 짧은 타임아웃은 3초입니다...

1. mysqli의 쿼리 코드 등 클라이언트를 수정하고 타이머를 추가한 후 타임아웃이 발생하면

2를 반환합니다. mysql의 네트워크 처리의 최하층은 vio

로 운영되기 때문에 Mysql에서 vio 코드를 수정해보세요. 더 자세히 알고 싶으시다면
php training

칼럼을 주목해주세요!

위 내용은 PHP는 MySQL에 액세스할 때 쿼리 시간 초과를 어떻게 구현합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.